]> git.proxmox.com Git - ceph.git/blob - ceph/src/cls/user/cls_user_types.cc
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / cls / user / cls_user_types.cc
1 // -*- mode:C; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
3
4 #include "cls/user/cls_user_types.h"
5 #include "common/Formatter.h"
6 #include "common/ceph_json.h"
7
8 void cls_user_gen_test_bucket(cls_user_bucket *bucket, int i)
9 {
10 char buf[16];
11 snprintf(buf, sizeof(buf), ".%d", i);
12
13 bucket->name = string("buck") + buf;
14 bucket->marker = string("mark") + buf;
15 bucket->bucket_id = string("bucket.id") + buf;
16 }
17
18 void cls_user_bucket::dump(Formatter *f) const
19 {
20 encode_json("name", name, f);
21 encode_json("marker", marker,f);
22 encode_json("bucket_id", bucket_id,f);
23 }
24
25 void cls_user_bucket::generate_test_instances(list<cls_user_bucket*>& ls)
26 {
27 ls.push_back(new cls_user_bucket);
28 cls_user_bucket *b = new cls_user_bucket;
29 cls_user_gen_test_bucket(b, 0);
30 ls.push_back(b);
31 }
32
33 void cls_user_bucket_entry::dump(Formatter *f) const
34 {
35 encode_json("bucket", bucket, f);
36 encode_json("size", size, f);
37 encode_json("size_rounded", size_rounded, f);
38 encode_json("creation_time", utime_t(creation_time), f);
39 encode_json("count", count, f);
40 encode_json("user_stats_sync", user_stats_sync, f);
41 }
42
43 void cls_user_gen_test_bucket_entry(cls_user_bucket_entry *entry, int i)
44 {
45 cls_user_gen_test_bucket(&entry->bucket, i);
46 entry->size = i + 1;
47 entry->size_rounded = i + 2;
48 entry->creation_time = real_clock::from_time_t(i + 3);
49 entry->count = i + 4;
50 entry->user_stats_sync = true;
51 }
52
53 void cls_user_bucket_entry::generate_test_instances(list<cls_user_bucket_entry*>& ls)
54 {
55 ls.push_back(new cls_user_bucket_entry);
56 cls_user_bucket_entry *entry = new cls_user_bucket_entry;
57 cls_user_gen_test_bucket_entry(entry, 0);
58 ls.push_back(entry);
59 }
60
61 void cls_user_gen_test_stats(cls_user_stats *s)
62 {
63 s->total_entries = 1;
64 s->total_bytes = 2;
65 s->total_bytes_rounded = 3;
66 }
67
68 void cls_user_stats::dump(Formatter *f) const
69 {
70 f->dump_int("total_entries", total_entries);
71 f->dump_int("total_bytes", total_bytes);
72 f->dump_int("total_bytes_rounded", total_bytes_rounded);
73 }
74
75 void cls_user_stats::generate_test_instances(list<cls_user_stats*>& ls)
76 {
77 ls.push_back(new cls_user_stats);
78 cls_user_stats *s = new cls_user_stats;
79 cls_user_gen_test_stats(s);
80 ls.push_back(s);
81 }
82
83 void cls_user_gen_test_header(cls_user_header *h)
84 {
85 cls_user_gen_test_stats(&h->stats);
86 h->last_stats_sync = utime_t(1, 0).to_real_time();
87 h->last_stats_update = utime_t(2, 0).to_real_time();
88 }
89
90 void cls_user_header::dump(Formatter *f) const
91 {
92 encode_json("stats", stats, f);
93 encode_json("last_stats_sync", utime_t(last_stats_sync), f);
94 encode_json("last_stats_update", utime_t(last_stats_update), f);
95 }
96
97 void cls_user_header::generate_test_instances(list<cls_user_header*>& ls)
98 {
99 ls.push_back(new cls_user_header);
100 cls_user_header *h = new cls_user_header;
101 cls_user_gen_test_header(h);
102 ls.push_back(h);
103 }