]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge pull request #7712 from vitek/listbucket_encoding_type_fix
authorSage Weil <sage@redhat.com>
Wed, 30 Mar 2016 01:07:41 +0000 (21:07 -0400)
committerSage Weil <sage@redhat.com>
Wed, 30 Mar 2016 01:07:41 +0000 (21:07 -0400)
rgw: S3: set EncodingType in ListBucketResult

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
1  2 
src/rgw/rgw_rest_s3.cc

index ac96e08c2fad6b7baecca9c9c804588e973527c4,fd790605429c0442ec1f80c4b706b00654e81ce8..af0fea04f1f5fecb1d7a6ffca112ecf27f5c2093
@@@ -483,22 -303,18 +483,24 @@@ void RGWListBucket_ObjStore_S3::send_ve
                                            : "false"));
  
    bool encode_key = false;
-   if (strcasecmp(encoding_type.c_str(), "url") == 0)
+   if (strcasecmp(encoding_type.c_str(), "url") == 0) {
+     s->formatter->dump_string("EncodingType", "url");
      encode_key = true;
+   }
  
    if (op_ret >= 0) {
 +    if (objs_container) {
 +      s->formatter->open_array_section("Entries");
 +    }
 +
      vector<RGWObjEnt>::iterator iter;
      for (iter = objs.begin(); iter != objs.end(); ++iter) {
 -      time_t mtime = iter->mtime.sec();
        const char *section_name = (iter->is_delete_marker() ? "DeleteMarker"
                                  : "Version");
 -      s->formatter->open_array_section(section_name);
 +      s->formatter->open_object_section(section_name);
 +      if (objs_container) {
 +        s->formatter->dump_bool("IsDeleteMarker", iter->is_delete_marker());
 +      }
        if (encode_key) {
        string key_name;
        url_encode(iter->key.name, key_name);