diff options
author | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-06-20 00:22:50 -0400 |
---|---|---|
committer | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-06-20 10:56:02 -0400 |
commit | 9c2ed42daa8fbbef4a919c21ec564e2db55e8d60 (patch) | |
tree | 3814f79c10d7b490948d8cb7b112ac1dd41ceff1 /src/mongo/s/catalog/type_chunk.h | |
parent | 01965cf52bce6976637ecb8f4a622aeb05ab256a (diff) | |
download | mongo-9c2ed42daa8fbbef4a919c21ec564e2db55e8d60.tar.gz |
SERVER-18579: Clang-Format - reformat code, no comment reflow
Diffstat (limited to 'src/mongo/s/catalog/type_chunk.h')
-rw-r--r-- | src/mongo/s/catalog/type_chunk.h | 193 |
1 files changed, 104 insertions, 89 deletions
diff --git a/src/mongo/s/catalog/type_chunk.h b/src/mongo/s/catalog/type_chunk.h index 5945f722f6f..52a452a20f2 100644 --- a/src/mongo/s/catalog/type_chunk.h +++ b/src/mongo/s/catalog/type_chunk.h @@ -36,95 +36,110 @@ namespace mongo { - class BSONObj; - class Status; - template<typename T> class StatusWith; +class BSONObj; +class Status; +template <typename T> +class StatusWith; + +/** + * This class represents the layout and contents of documents contained in the + * config.chunks collection. All manipulation of documents coming from that + * collection should be done with this class. + */ +class ChunkType { +public: + // Name of the chunks collection in the config server. + static const std::string ConfigNS; + + // Field names and types in the chunks collection type. + static const BSONField<std::string> name; + static const BSONField<std::string> ns; + static const BSONField<BSONObj> min; + static const BSONField<BSONObj> max; + static const BSONField<BSONArray> version; + static const BSONField<std::string> shard; + static const BSONField<bool> jumbo; + static const BSONField<Date_t> DEPRECATED_lastmod; + static const BSONField<OID> DEPRECATED_epoch; + + + /** + * Constructs a new ChunkType object from BSON. + * Also does validation of the contents. + */ + static StatusWith<ChunkType> fromBSON(const BSONObj& source); + + /** + * Returns OK if all fields have been set. Otherwise returns NoSuchKey + * and information about the first field that is missing. + */ + Status validate() const; + + /** + * Returns the BSON representation of the entry. + */ + BSONObj toBSON() const; /** - * This class represents the layout and contents of documents contained in the - * config.chunks collection. All manipulation of documents coming from that - * collection should be done with this class. + * Returns a std::string representation of the current internal state. */ - class ChunkType { - public: - - // Name of the chunks collection in the config server. - static const std::string ConfigNS; - - // Field names and types in the chunks collection type. - static const BSONField<std::string> name; - static const BSONField<std::string> ns; - static const BSONField<BSONObj> min; - static const BSONField<BSONObj> max; - static const BSONField<BSONArray> version; - static const BSONField<std::string> shard; - static const BSONField<bool> jumbo; - static const BSONField<Date_t> DEPRECATED_lastmod; - static const BSONField<OID> DEPRECATED_epoch; - - - /** - * Constructs a new ChunkType object from BSON. - * Also does validation of the contents. - */ - static StatusWith<ChunkType> fromBSON(const BSONObj& source); - - /** - * Returns OK if all fields have been set. Otherwise returns NoSuchKey - * and information about the first field that is missing. - */ - Status validate() const; - - /** - * Returns the BSON representation of the entry. - */ - BSONObj toBSON() const; - - /** - * Returns a std::string representation of the current internal state. - */ - std::string toString() const; - - const std::string& getName() const { return _name.get(); } - void setName(const std::string& name); - - const std::string& getNS() const { return _ns.get(); } - void setNS(const std::string& name); - - const BSONObj& getMin() const { return _min.get(); } - void setMin(const BSONObj& min); - - const BSONObj& getMax() const { return _max.get(); } - void setMax(const BSONObj& max); - - bool isVersionSet() const { return _version.is_initialized(); } - const ChunkVersion& getVersion() const { return _version.get(); } - void setVersion(const ChunkVersion& version); - - const std::string& getShard() const { return _shard.get(); } - void setShard(const std::string& shard); - - bool getJumbo() const { return _jumbo.get_value_or(false); } - void setJumbo(bool jumbo); - - private: - - // Convention: (M)andatory, (O)ptional, (S)pecial rule. - - // (M) chunk's id - boost::optional<std::string> _name; - // (M) collection this chunk is in - boost::optional<std::string> _ns; - // (M) first key of the range, inclusive - boost::optional<BSONObj> _min; - // (M) last key of the range, non-inclusive - boost::optional<BSONObj> _max; - // (M) version of this chunk - boost::optional<ChunkVersion> _version; - // (M) shard this chunk lives in - boost::optional<std::string> _shard; - // (O) too big to move? - boost::optional<bool> _jumbo; - }; - -} // namespace mongo + std::string toString() const; + + const std::string& getName() const { + return _name.get(); + } + void setName(const std::string& name); + + const std::string& getNS() const { + return _ns.get(); + } + void setNS(const std::string& name); + + const BSONObj& getMin() const { + return _min.get(); + } + void setMin(const BSONObj& min); + + const BSONObj& getMax() const { + return _max.get(); + } + void setMax(const BSONObj& max); + + bool isVersionSet() const { + return _version.is_initialized(); + } + const ChunkVersion& getVersion() const { + return _version.get(); + } + void setVersion(const ChunkVersion& version); + + const std::string& getShard() const { + return _shard.get(); + } + void setShard(const std::string& shard); + + bool getJumbo() const { + return _jumbo.get_value_or(false); + } + void setJumbo(bool jumbo); + +private: + // Convention: (M)andatory, (O)ptional, (S)pecial rule. + + // (M) chunk's id + boost::optional<std::string> _name; + // (M) collection this chunk is in + boost::optional<std::string> _ns; + // (M) first key of the range, inclusive + boost::optional<BSONObj> _min; + // (M) last key of the range, non-inclusive + boost::optional<BSONObj> _max; + // (M) version of this chunk + boost::optional<ChunkVersion> _version; + // (M) shard this chunk lives in + boost::optional<std::string> _shard; + // (O) too big to move? + boost::optional<bool> _jumbo; +}; + +} // namespace mongo |