anchor.diff:           provide_japi_content/2,
            provide_json_content/2]).
   
  --record(ctx, {method, start, rows, cluster, node, bucket_type, bucket, key, resource, id, response=undefined}).
  +-record(ctx, {method, start, rows, cluster, node, bucket_type, bucket, resource, id, response=undefined}).
   
   -include_lib("webmachine/include/webmachine.hrl").
   -include("riak_explorer.hrl").
  
positive.code:         resource = wrq:path_info(resource, RD),
          bucket_type = wrq:path_info(bucket_type, RD),
          bucket = wrq:path_info(bucket, RD),
          key = wrq:path_info(key, RD),
          node = re_wm_util:node_from_context(Cluster, Node),
          cluster = Cluster,
          method = wrq:method(RD),
  
negative.code: -define(noNode(),
      #ctx{node=[{error, no_nodes}]}).
  -define(putKeys(Node, BucketType, Bucket),
      #ctx{node=Node, method='PUT', bucket_type=BucketType, bucket=Bucket}).
  -define(cleanKeys(Node, BucketType, Bucket),
      #ctx{node=Node, method='DELETE', bucket_type=BucketType, bucket=Bucket}).
  -define(listKeysCache(Node, BucketType, Bucket),
      #ctx{node=Node, method='GET', bucket_type=BucketType, bucket=Bucket}).
  -define(listKeys(Node, BucketType, Bucket),
      #ctx{node=Node, method='POST', bucket_type=BucketType, bucket=Bucket}).
  
  %%%===================================================================
  %%% API
  