#include "include/utime.h"
+#include "common/ceph_json.h"
+#include "common/Formatter.h"
+
class JSONObj;
+class JSONDecoder;
struct cls_log_entry {
decode(id, bl);
DECODE_FINISH(bl);
}
+
+ void dump(ceph::Formatter* f) const {
+ encode_json("section", section, f);
+ encode_json("name", name, f);
+ encode_json("timestamp", timestamp, f);
+ encode_json("data", data, f);
+ encode_json("id", id, f);
+ }
+
+ void decode_json(JSONObj* obj) {
+ JSONDecoder::decode_json("section", section, obj);
+ JSONDecoder::decode_json("name", name, obj);
+ JSONDecoder::decode_json("timestamp", timestamp, obj);
+ JSONDecoder::decode_json("data", data, obj);
+ JSONDecoder::decode_json("id", id, obj);
+ }
+
+ static void generate_test_instances(std::list<cls_log_entry *>& l) {
+ l.push_back(new cls_log_entry{});
+ l.push_back(new cls_log_entry);
+ l.back()->id = "test_id";
+ l.back()->section = "test_section";
+ l.back()->name = "test_name";
+ l.back()->timestamp = utime_t();
+ ceph::buffer::list bl;
+ ceph::encode(std::string("Test"), bl, 0);
+ l.back()->data = bl;
+ }
};
WRITE_CLASS_ENCODER(cls_log_entry)
JSONDecoder::decode_json("gen", gen, obj);
}
+void rgw_data_change::generate_test_instances(std::list<rgw_data_change *>& l) {
+ l.push_back(new rgw_data_change{});
+ l.push_back(new rgw_data_change);
+ l.back()->entity_type = ENTITY_TYPE_BUCKET;
+ l.back()->key = "bucket_name";
+ l.back()->timestamp = ceph::real_clock::zero();
+ l.back()->gen = 0;
+}
+
void rgw_data_change_log_entry::dump(Formatter *f) const
{
encode_json("log_id", log_id, f);
void dump(ceph::Formatter* f) const;
void decode_json(JSONObj* obj);
+ static void generate_test_instances(std::list<rgw_data_change *>& l);
};
WRITE_CLASS_ENCODER(rgw_data_change)
void decode(bufferlist::const_iterator& bl);
void dump(Formatter *f) const;
void decode_json(JSONObj *obj);
+ static void generate_test_instances(std::list<RGWMetadataLogData *>& l);
};
WRITE_CLASS_ENCODER(RGWMetadataLogData)
JSONDecoder::decode_json("status", status, obj);
}
+void RGWMetadataLogData::generate_test_instances(std::list<RGWMetadataLogData *>& l) {
+ l.push_back(new RGWMetadataLogData{});
+ l.push_back(new RGWMetadataLogData);
+ l.back()->read_version = obj_version();
+ l.back()->read_version.tag = "read_tag";
+ l.back()->write_version = obj_version();
+ l.back()->write_version.tag = "write_tag";
+ l.back()->status = MDLOG_STATUS_WRITE;
+}
+
RGWMetadataHandler_GenericMetaBE::Put::Put(RGWMetadataHandler_GenericMetaBE *_handler,
RGWSI_MetaBackend_Handler::Op *_op,
string& _entry, RGWMetadataObject *_obj,
#include "rgw_lc.h"
TYPE(RGWLifecycleConfiguration)
+#include "cls/log/cls_log_types.h"
+TYPE(cls_log_entry)
+
#include "cls/rgw/cls_rgw_types.h"
TYPE(rgw_bucket_pending_info)
TYPE(rgw_bucket_dir_entry_meta)
#include "rgw_log.h"
TYPE(rgw_log_entry)
+#include "rgw_datalog.h"
+TYPE(rgw_data_change)
+
+#include "rgw_mdlog.h"
+TYPE(RGWMetadataLogData)
+
#include "rgw_meta_sync_status.h"
TYPE(rgw_meta_sync_info)
TYPE(rgw_meta_sync_marker)