anchor.diff:          {error, Error} ->
               {error, Error}
       end.
  -
  -%% @doc List all the buckets that currently have owners.
  --spec list_buckets(string(), pos_integer(), boolean()) -> {ok, [{binary(), binary()}]}. %% | {error, term()}.
  -list_buckets(_Ip, _Port, _Ssl) ->
  -    {ok, []}.
  -
  -%% @doc List all the buckets owned by a particular user.
  --spec list_buckets(string(), pos_integer(), boolean(), binary()) -> {ok, [{binary(), binary()}]}. %% | {error, term()}.
  -list_buckets(_Ip, _Port, _Ssl, _UserId) ->
  -    {ok, []}.
   
   %% @doc Ping the server by requesting the "/ping" resource.
   -spec ping(string(), pos_integer(), boolean()) -> ok | {error, term()}.
  
positive.code:     lists:flatten(
        [root_url(Ip, Port, Ssl),
         Path
        ]).
  
  %% @doc Assemble the URL for the given bucket and key
  -spec list_buckets_url(string(), pos_integer(), boolean(), binary()) -> string().
  list_buckets_url(Ip, Port, Ssl, Owner) ->
      Query =
          "owner=" ++
          binary_to_list(Owner),
      lists:flatten(
        [root_url(Ip, Port, Ssl),
         "buckets",
         ["?", mochiweb_util:quote_plus(Query)]
        ]).
  
  %% @doc send an HTTP request where `Expect' is a list
  
negative.code:          update_user/6
           % @TODO: update_bucket/3
          ]).
  
  %% ===================================================================
  %% Public API
  