anchor.diff:  -spec get_bucket(pid(), bucket(), timeout(), timeout()) -> {ok, bucket_props()} |
                                                              {error, term()}.
   get_bucket(Pid, Bucket, Timeout, CallTimeout) ->
  -    Req = #rpbgetbucketreq{bucket = Bucket},
  +    {T, B} = maybe_bucket_type(Bucket),
  +    Req = #rpbgetbucketreq{type = T, bucket = B},
  +    gen_server:call(Pid, {req, Req, Timeout}, CallTimeout).
  +
  +get_bucket_type(Pid, BucketType) ->
  +    get_bucket_type(Pid, BucketType, default_timeout(get_bucket_timeout)).
  +
  +get_bucket_type(Pid, BucketType, Timeout) ->
  +    get_bucket_type(Pid, BucketType, Timeout, default_timeout(get_bucket_call_timeout)).
  +
  +get_bucket_type(Pid, BucketType, Timeout, CallTimeout) ->
  +    Req = #rpbgetbuckettypereq{type = BucketType},
       gen_server:call(Pid, {req, Req, Timeout}, CallTimeout).
   
   %% @doc Set bucket properties.
  
positive.code:     Stream = proplists:get_value(stream, Opts, false),
      Continuation = proplists:get_value(continuation, Opts),
  
      Req = #rpbindexreq{bucket=Bucket, index=Index, qtype=eq,
                         key=encode_2i(Key),
                         max_results=MaxResults,
                         stream=Stream,
  
negative.code: %% @see delete_obj/4
  -spec delete_vclock(pid(), bucket(), key(), riakc_obj:vclock(), delete_options(), timeout()) ->
                             ok | {error, term()}.
  delete_vclock(Pid, Bucket, Key, VClock, Options, Timeout) ->
      {T, B} = maybe_bucket_type(Bucket),
      Req = delete_options(Options, #rpbdelreq{type = T, bucket = B, key = Key,
              vclock=VClock}),
      gen_server:call(Pid, {req, Req, Timeout}, infinity).
  
  