]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- |
2 | // vim: ts=8 sw=2 smarttab | |
3 | /* | |
4 | * Ceph - scalable distributed file system | |
5 | * | |
6 | * Copyright (C) 2013 Inktank | |
7 | * | |
8 | * This is free software; you can redistribute it and/or | |
9 | * modify it under the terms of the GNU Lesser General Public | |
10 | * License version 2.1, as published by the Free Software | |
11 | * Foundation. See file COPYING. | |
12 | * | |
13 | */ | |
14 | ||
15 | #ifndef CEPH_OBJECTSTORE_TOOL_H_ | |
16 | #define CEPH_OBJECTSTORE_TOOL_H_ | |
17 | ||
18 | #include "RadosDump.h" | |
19 | ||
20 | class ObjectStoreTool : public RadosDump | |
21 | { | |
22 | public: | |
23 | ObjectStoreTool(int file_fd, bool dry_run) | |
24 | : RadosDump(file_fd, dry_run) | |
25 | {} | |
26 | ||
11fdf7f2 | 27 | int dump_export(Formatter *formatter); |
7c673cae | 28 | int do_import(ObjectStore *store, OSDSuperblock& sb, bool force, |
11fdf7f2 | 29 | std::string pgidstr); |
2a845540 | 30 | int do_export(CephContext *cct, ObjectStore *fs, coll_t coll, spg_t pgid, |
7c673cae FG |
31 | pg_info_t &info, epoch_t map_epoch, __u8 struct_ver, |
32 | const OSDSuperblock& superblock, | |
33 | PastIntervals &past_intervals); | |
b32b8144 FG |
34 | int dump_object(Formatter *formatter, |
35 | bufferlist &bl); | |
7c673cae | 36 | int get_object( |
11fdf7f2 TL |
37 | ObjectStore *store, OSDriver& driver, SnapMapper& mapper, coll_t coll, |
38 | bufferlist &bl, OSDMap &curmap, bool *skipped_objects); | |
7c673cae FG |
39 | int export_file( |
40 | ObjectStore *store, coll_t cid, ghobject_t &obj); | |
41 | int export_files(ObjectStore *store, coll_t coll); | |
42 | }; | |
43 | ||
44 | #endif // CEPH_OBJECSTORE_TOOL_H_ |