Skip to content
Snippets Groups Projects

Resolve "Récupération des blocs"

Merged JAUJAY Augustin requested to merge 186-recuperation-des-blocs into dev
2 files
+ 15
51
Compare changes
  • Side-by-side
  • Inline

Files

+ 13
49
defmodule BDD do
require Logger
@base_url 'https://g1-test.duniter.org/blockchain/blocks/'
@base_url 'https://g1-test.duniter.org'
@doc """
Create some of the needeed dets table after checking if they already exist
@@ -9,61 +9,25 @@ defmodule BDD do
def create_if_not_created do
if not File.dir?('data') do
File.mkdir('data')
:dets.open_file(:global_iindex, [{:file, 'data/global_iindex'}, {:type, :set}])
:dets.open_file(:global_bindex, [{:file, 'data/global_bindex'}, {:type, :set}])
:dets.open_file(:global_mindex, [{:file, 'data/global_mindex'}, {:type, :set}])
:dets.open_file(:global_cindex, [{:file, 'data/global_cindex'}, {:type, :set}])
:dets.open_file(:global_sindex, [{:file, 'data/global_sindex'}, {:type, :set}])
:dets.open_file(:block, [{:file, 'data/block'}, {:type, :set}])
:dets.open_file(:wallet, [{:file, 'data/wallet'}, {:type, :set}])
:dets.open_file(:meta, [{:file, 'data/meta'}, {:type, :set}])
:dets.open_file(:peer, [{:file, 'data/peer'}, {:type, :set}])
else
if not File.exists?('data/block') do
:dets.open_file(:block, [{:file, 'data/block'}, {:type, :set}])
end
if not File.exists?('data/global_iindex') do
:dets.open_file(:global_iindex, [{:file, 'data/global_iindex'}, {:type, :set}])
end
if not File.exists?('data/global_bindex') do
:dets.open_file(:global_bindex, [{:file, 'data/global_bindex'}, {:type, :set}])
end
if not File.exists?('data/global_sindex') do
:dets.open_file(:global_sindex, [{:file, 'data/global_sindex'}, {:type, :set}])
end
if not File.exists?('data/global_cindex') do
:dets.open_file(:global_cindex, [{:file, 'data/global_cindex'}, {:type, :set}])
end
if not File.exists?('data/global_mindex') do
:dets.open_file(:global_mindex, [{:file, 'data/global_mindex'}, {:type, :set}])
end
if not File.exists?('data/meta') do
:dets.open_file(:meta, [{:file, 'data/meta'}, {:type, :set}])
end
if not File.exists?('data/wallet') do
:dets.open_file(:wallet, [{:file, 'data/wallet'}, {:type, :set}])
end
if not File.exists?('data/peer') do
:dets.open_file(:peer, [{:file, 'data/peer'}, {:type, :set}])
end
end
:dets.open_file(:global_iindex, [{:file, 'data/global_iindex'}, {:type, :set}])
:dets.open_file(:global_bindex, [{:file, 'data/global_bindex'}, {:type, :set}])
:dets.open_file(:global_mindex, [{:file, 'data/global_mindex'}, {:type, :set}])
:dets.open_file(:global_cindex, [{:file, 'data/global_cindex'}, {:type, :set}])
:dets.open_file(:global_sindex, [{:file, 'data/global_sindex'}, {:type, :set}])
:dets.open_file(:block, [{:file, 'data/block'}, {:type, :set}])
:dets.open_file(:wallet, [{:file, 'data/wallet'}, {:type, :set}])
:dets.open_file(:meta, [{:file, 'data/meta'}, {:type, :set}])
:dets.open_file(:peer, [{:file, 'data/peer'}, {:type, :set}])
end
@doc """
Insert in the block dets table the n fisrt block of the bockchain, get throught an http request
"""
def fill_with_block(n) do
def fill_with_block() do
{:ok, :block} = :dets.open_file(:block, [{:file, 'data/block'}, {:type, :set}])
case :httpc.request(:get, {@base_url ++ to_charlist(n) ++ '/0', []}, [], []) do
case :httpc.request(:get, {@base_url ++ '/blockchain/blocks/' ++ to_charlist(50) ++ '/0', []}, [], []) do
{:ok, resp} ->
Logger.info('data received')
@@ -90,7 +54,7 @@ defmodule BDD.Create do
def init(_) do
BDD.create_if_not_created()
BDD.fill_with_block(50)
BDD.fill_with_block()
# TODO indexation
{:ok, nil}
end
Loading