kvs_app.erl 499 B

123456789101112131415161718192021222324
  1. -module(kvs_app).
  2. -behaviour(application).
  3. -export([start/2, stop/1, wait_vnodes/0]).
  4. wait_riak() ->
  5. case kvs:put({test,ok}) of
  6. ok -> stop;
  7. _ -> wait_riak()
  8. end.
  9. wait_vnodes() ->
  10. case riak:client_connect(node()) of
  11. {ok,C} ->
  12. case C:get(<<"test">>,<<"ok">>,[]) of
  13. {error,{insufficient_vnodes,_,_,_}} -> wait_vnodes();
  14. _ -> stop
  15. end;
  16. _ -> error end.
  17. start(_StartType, _StartArgs) ->
  18. kvs_sup:start_link().
  19. stop(_State) ->
  20. ok.