Skip to content
Snippets Groups Projects

Resolve "Récupération des blocs"

Merged JAUJAY Augustin requested to merge 186-recuperation-des-blocs into dev
1 file
+ 14
11
Compare changes
  • Side-by-side
  • Inline
+ 14
11
@@ -10,6 +10,7 @@ defmodule BDD do
if not File.dir?('data') do
File.mkdir('data')
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}])
@@ -27,20 +28,22 @@ defmodule BDD do
def fill_with_block() do
{:ok, :block} = :dets.open_file(:block, [{:file, 'data/block'}, {:type, :set}])
case :httpc.request(:get, {@base_url ++ '/blockchain/blocks/' ++ to_charlist(50) ++ '/0', []}, [], []) do
{:ok, resp} ->
Logger.info('data received')
currentBlock = case :httpc.request(:get, {@base_url ++ '/blockchain/current', []}, [], []) do
{:ok, {{_, 200, 'OK'}, _headers, body}} -> Poison.decode!(body)
case resp do
{{_, 200, 'OK'}, _headers, '[]'} ->
Logger.info('---DONE---')
_ -> Logger.info('Filling DB : Failing when getting current block')
end
case :httpc.request(:get, {@base_url ++ '/blockchain/blocks/' ++ to_charlist(50) ++ '/0', []}, [], []) do
{:ok, {{_, 200, 'OK'}, _headers, '[]'}} ->
Logger.info('Filling DB : No blocks to get from remote g1-test node')
{{_, 200, 'OK'}, _headers, body} ->
Poison.decode!(body) |> Enum.map(fn b -> :dets.insert(:block, {b["number"], b}) end)
{:ok, {{_, 200, 'OK'}, _headers, body}} ->
Logger.info('Filling : DB : Successfully got blocks from remote g1-test node')
Poison.decode!(body) |> Enum.map(fn b -> :dets.insert(:block, {b["number"], b}) end)
_ ->
Logger.info('---Failed---')
end
_ ->
Logger.info('---Failed when filling DataBase---')
end
end
end
Loading