// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: database.proto

#ifndef PROTOBUF_INCLUDED_database_2eproto
#define PROTOBUF_INCLUDED_database_2eproto

#include <limits>
#include <string>

#include <google/protobuf/port_def.inc>
#if PROTOBUF_VERSION < 3007000
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers. Please update
#error your headers.
#endif
#if 3007001 < PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers. Please
#error regenerate this file with a newer version of protoc.
#endif

#include <google/protobuf/port_undef.inc>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/arena.h>
#include <google/protobuf/arenastring.h>
#include <google/protobuf/generated_message_table_driven.h>
#include <google/protobuf/generated_message_util.h>
#include <google/protobuf/inlined_string_field.h>
#include <google/protobuf/metadata.h>
#include <google/protobuf/message.h>
#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
#include <google/protobuf/extension_set.h>  // IWYU pragma: export
#include <google/protobuf/map.h>  // IWYU pragma: export
#include <google/protobuf/map_entry.h>
#include <google/protobuf/map_field_inl.h>
#include <google/protobuf/unknown_field_set.h>
#include "common.pb.h"
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>
#define PROTOBUF_INTERNAL_EXPORT_database_2eproto

// Internal implementation detail -- do not use these members.
struct TableStruct_database_2eproto {
  static const ::google::protobuf::internal::ParseTableField entries[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::google::protobuf::internal::AuxillaryParseTableField aux[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::google::protobuf::internal::ParseTable schema[10]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
  static const ::google::protobuf::internal::SerializationTable serialization_table[];
  static const ::google::protobuf::uint32 offsets[];
};
void AddDescriptors_database_2eproto();
namespace com {
namespace alipay {
namespace dds {
namespace api {
namespace v1 {
class Database;
class DatabaseDefaultTypeInternal;
extern DatabaseDefaultTypeInternal _Database_default_instance_;
class DatabaseAuthoritiesReference;
class DatabaseAuthoritiesReferenceDefaultTypeInternal;
extern DatabaseAuthoritiesReferenceDefaultTypeInternal _DatabaseAuthoritiesReference_default_instance_;
class DatabasePropertiesReference;
class DatabasePropertiesReferenceDefaultTypeInternal;
extern DatabasePropertiesReferenceDefaultTypeInternal _DatabasePropertiesReference_default_instance_;
class DatabaseVariablesReference;
class DatabaseVariablesReferenceDefaultTypeInternal;
extern DatabaseVariablesReferenceDefaultTypeInternal _DatabaseVariablesReference_default_instance_;
class Database_VariablesEntry_DoNotUse;
class Database_VariablesEntry_DoNotUseDefaultTypeInternal;
extern Database_VariablesEntry_DoNotUseDefaultTypeInternal _Database_VariablesEntry_DoNotUse_default_instance_;
class ShardsConnectorReference;
class ShardsConnectorReferenceDefaultTypeInternal;
extern ShardsConnectorReferenceDefaultTypeInternal _ShardsConnectorReference_default_instance_;
class ShardsDistributeReference;
class ShardsDistributeReferenceDefaultTypeInternal;
extern ShardsDistributeReferenceDefaultTypeInternal _ShardsDistributeReference_default_instance_;
class ShardsPropertiesReference;
class ShardsPropertiesReferenceDefaultTypeInternal;
extern ShardsPropertiesReferenceDefaultTypeInternal _ShardsPropertiesReference_default_instance_;
class ShardsRouterReference;
class ShardsRouterReferenceDefaultTypeInternal;
extern ShardsRouterReferenceDefaultTypeInternal _ShardsRouterReference_default_instance_;
class ShardsTopologyReference;
class ShardsTopologyReferenceDefaultTypeInternal;
extern ShardsTopologyReferenceDefaultTypeInternal _ShardsTopologyReference_default_instance_;
}  // namespace v1
}  // namespace api
}  // namespace dds
}  // namespace alipay
}  // namespace com
namespace google {
namespace protobuf {
template<> ::com::alipay::dds::api::v1::Database* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::Database>(Arena*);
template<> ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::DatabaseAuthoritiesReference>(Arena*);
template<> ::com::alipay::dds::api::v1::DatabasePropertiesReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::DatabasePropertiesReference>(Arena*);
template<> ::com::alipay::dds::api::v1::DatabaseVariablesReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::DatabaseVariablesReference>(Arena*);
template<> ::com::alipay::dds::api::v1::Database_VariablesEntry_DoNotUse* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::Database_VariablesEntry_DoNotUse>(Arena*);
template<> ::com::alipay::dds::api::v1::ShardsConnectorReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsConnectorReference>(Arena*);
template<> ::com::alipay::dds::api::v1::ShardsDistributeReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsDistributeReference>(Arena*);
template<> ::com::alipay::dds::api::v1::ShardsPropertiesReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsPropertiesReference>(Arena*);
template<> ::com::alipay::dds::api::v1::ShardsRouterReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsRouterReference>(Arena*);
template<> ::com::alipay::dds::api::v1::ShardsTopologyReference* Arena::CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsTopologyReference>(Arena*);
}  // namespace protobuf
}  // namespace google
namespace com {
namespace alipay {
namespace dds {
namespace api {
namespace v1 {

// ===================================================================

class DatabaseAuthoritiesReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.DatabaseAuthoritiesReference) */ {
 public:
  DatabaseAuthoritiesReference();
  virtual ~DatabaseAuthoritiesReference();

  DatabaseAuthoritiesReference(const DatabaseAuthoritiesReference& from);

  inline DatabaseAuthoritiesReference& operator=(const DatabaseAuthoritiesReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  DatabaseAuthoritiesReference(DatabaseAuthoritiesReference&& from) noexcept
    : DatabaseAuthoritiesReference() {
    *this = ::std::move(from);
  }

  inline DatabaseAuthoritiesReference& operator=(DatabaseAuthoritiesReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const DatabaseAuthoritiesReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const DatabaseAuthoritiesReference* internal_default_instance() {
    return reinterpret_cast<const DatabaseAuthoritiesReference*>(
               &_DatabaseAuthoritiesReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  void Swap(DatabaseAuthoritiesReference* other);
  friend void swap(DatabaseAuthoritiesReference& a, DatabaseAuthoritiesReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline DatabaseAuthoritiesReference* New() const final {
    return CreateMaybeMessage<DatabaseAuthoritiesReference>(nullptr);
  }

  DatabaseAuthoritiesReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<DatabaseAuthoritiesReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const DatabaseAuthoritiesReference& from);
  void MergeFrom(const DatabaseAuthoritiesReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(DatabaseAuthoritiesReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.DatabaseAuthoritiesReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class DatabaseVariablesReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.DatabaseVariablesReference) */ {
 public:
  DatabaseVariablesReference();
  virtual ~DatabaseVariablesReference();

  DatabaseVariablesReference(const DatabaseVariablesReference& from);

  inline DatabaseVariablesReference& operator=(const DatabaseVariablesReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  DatabaseVariablesReference(DatabaseVariablesReference&& from) noexcept
    : DatabaseVariablesReference() {
    *this = ::std::move(from);
  }

  inline DatabaseVariablesReference& operator=(DatabaseVariablesReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const DatabaseVariablesReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const DatabaseVariablesReference* internal_default_instance() {
    return reinterpret_cast<const DatabaseVariablesReference*>(
               &_DatabaseVariablesReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    1;

  void Swap(DatabaseVariablesReference* other);
  friend void swap(DatabaseVariablesReference& a, DatabaseVariablesReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline DatabaseVariablesReference* New() const final {
    return CreateMaybeMessage<DatabaseVariablesReference>(nullptr);
  }

  DatabaseVariablesReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<DatabaseVariablesReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const DatabaseVariablesReference& from);
  void MergeFrom(const DatabaseVariablesReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(DatabaseVariablesReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.DatabaseVariablesReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class DatabasePropertiesReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.DatabasePropertiesReference) */ {
 public:
  DatabasePropertiesReference();
  virtual ~DatabasePropertiesReference();

  DatabasePropertiesReference(const DatabasePropertiesReference& from);

  inline DatabasePropertiesReference& operator=(const DatabasePropertiesReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  DatabasePropertiesReference(DatabasePropertiesReference&& from) noexcept
    : DatabasePropertiesReference() {
    *this = ::std::move(from);
  }

  inline DatabasePropertiesReference& operator=(DatabasePropertiesReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const DatabasePropertiesReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const DatabasePropertiesReference* internal_default_instance() {
    return reinterpret_cast<const DatabasePropertiesReference*>(
               &_DatabasePropertiesReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    2;

  void Swap(DatabasePropertiesReference* other);
  friend void swap(DatabasePropertiesReference& a, DatabasePropertiesReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline DatabasePropertiesReference* New() const final {
    return CreateMaybeMessage<DatabasePropertiesReference>(nullptr);
  }

  DatabasePropertiesReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<DatabasePropertiesReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const DatabasePropertiesReference& from);
  void MergeFrom(const DatabasePropertiesReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(DatabasePropertiesReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.DatabasePropertiesReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class ShardsTopologyReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.ShardsTopologyReference) */ {
 public:
  ShardsTopologyReference();
  virtual ~ShardsTopologyReference();

  ShardsTopologyReference(const ShardsTopologyReference& from);

  inline ShardsTopologyReference& operator=(const ShardsTopologyReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ShardsTopologyReference(ShardsTopologyReference&& from) noexcept
    : ShardsTopologyReference() {
    *this = ::std::move(from);
  }

  inline ShardsTopologyReference& operator=(ShardsTopologyReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const ShardsTopologyReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ShardsTopologyReference* internal_default_instance() {
    return reinterpret_cast<const ShardsTopologyReference*>(
               &_ShardsTopologyReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    3;

  void Swap(ShardsTopologyReference* other);
  friend void swap(ShardsTopologyReference& a, ShardsTopologyReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ShardsTopologyReference* New() const final {
    return CreateMaybeMessage<ShardsTopologyReference>(nullptr);
  }

  ShardsTopologyReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ShardsTopologyReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ShardsTopologyReference& from);
  void MergeFrom(const ShardsTopologyReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ShardsTopologyReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 5;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 5;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string specific_mode = 1;
  void clear_specific_mode();
  static const int kSpecificModeFieldNumber = 1;
  const ::std::string& specific_mode() const;
  void set_specific_mode(const ::std::string& value);
  #if LANG_CXX11
  void set_specific_mode(::std::string&& value);
  #endif
  void set_specific_mode(const char* value);
  void set_specific_mode(const char* value, size_t size);
  ::std::string* mutable_specific_mode();
  ::std::string* release_specific_mode();
  void set_allocated_specific_mode(::std::string* specific_mode);

  // string parent = 2;
  void clear_parent();
  static const int kParentFieldNumber = 2;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 3;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 3;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 4;
  void clear_kind();
  static const int kKindFieldNumber = 4;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.ShardsTopologyReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr specific_mode_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class ShardsRouterReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.ShardsRouterReference) */ {
 public:
  ShardsRouterReference();
  virtual ~ShardsRouterReference();

  ShardsRouterReference(const ShardsRouterReference& from);

  inline ShardsRouterReference& operator=(const ShardsRouterReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ShardsRouterReference(ShardsRouterReference&& from) noexcept
    : ShardsRouterReference() {
    *this = ::std::move(from);
  }

  inline ShardsRouterReference& operator=(ShardsRouterReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const ShardsRouterReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ShardsRouterReference* internal_default_instance() {
    return reinterpret_cast<const ShardsRouterReference*>(
               &_ShardsRouterReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    4;

  void Swap(ShardsRouterReference* other);
  friend void swap(ShardsRouterReference& a, ShardsRouterReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ShardsRouterReference* New() const final {
    return CreateMaybeMessage<ShardsRouterReference>(nullptr);
  }

  ShardsRouterReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ShardsRouterReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ShardsRouterReference& from);
  void MergeFrom(const ShardsRouterReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ShardsRouterReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.ShardsRouterReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class ShardsDistributeReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.ShardsDistributeReference) */ {
 public:
  ShardsDistributeReference();
  virtual ~ShardsDistributeReference();

  ShardsDistributeReference(const ShardsDistributeReference& from);

  inline ShardsDistributeReference& operator=(const ShardsDistributeReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ShardsDistributeReference(ShardsDistributeReference&& from) noexcept
    : ShardsDistributeReference() {
    *this = ::std::move(from);
  }

  inline ShardsDistributeReference& operator=(ShardsDistributeReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const ShardsDistributeReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ShardsDistributeReference* internal_default_instance() {
    return reinterpret_cast<const ShardsDistributeReference*>(
               &_ShardsDistributeReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    5;

  void Swap(ShardsDistributeReference* other);
  friend void swap(ShardsDistributeReference& a, ShardsDistributeReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ShardsDistributeReference* New() const final {
    return CreateMaybeMessage<ShardsDistributeReference>(nullptr);
  }

  ShardsDistributeReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ShardsDistributeReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ShardsDistributeReference& from);
  void MergeFrom(const ShardsDistributeReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ShardsDistributeReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.ShardsDistributeReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class ShardsConnectorReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.ShardsConnectorReference) */ {
 public:
  ShardsConnectorReference();
  virtual ~ShardsConnectorReference();

  ShardsConnectorReference(const ShardsConnectorReference& from);

  inline ShardsConnectorReference& operator=(const ShardsConnectorReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ShardsConnectorReference(ShardsConnectorReference&& from) noexcept
    : ShardsConnectorReference() {
    *this = ::std::move(from);
  }

  inline ShardsConnectorReference& operator=(ShardsConnectorReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const ShardsConnectorReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ShardsConnectorReference* internal_default_instance() {
    return reinterpret_cast<const ShardsConnectorReference*>(
               &_ShardsConnectorReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    6;

  void Swap(ShardsConnectorReference* other);
  friend void swap(ShardsConnectorReference& a, ShardsConnectorReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ShardsConnectorReference* New() const final {
    return CreateMaybeMessage<ShardsConnectorReference>(nullptr);
  }

  ShardsConnectorReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ShardsConnectorReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ShardsConnectorReference& from);
  void MergeFrom(const ShardsConnectorReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ShardsConnectorReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // repeated string test_load_reference = 6;
  int test_load_reference_size() const;
  void clear_test_load_reference();
  static const int kTestLoadReferenceFieldNumber = 6;
  const ::std::string& test_load_reference(int index) const;
  ::std::string* mutable_test_load_reference(int index);
  void set_test_load_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_test_load_reference(int index, ::std::string&& value);
  #endif
  void set_test_load_reference(int index, const char* value);
  void set_test_load_reference(int index, const char* value, size_t size);
  ::std::string* add_test_load_reference();
  void add_test_load_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_test_load_reference(::std::string&& value);
  #endif
  void add_test_load_reference(const char* value);
  void add_test_load_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& test_load_reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_test_load_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // string test_load_prefix = 5;
  void clear_test_load_prefix();
  static const int kTestLoadPrefixFieldNumber = 5;
  const ::std::string& test_load_prefix() const;
  void set_test_load_prefix(const ::std::string& value);
  #if LANG_CXX11
  void set_test_load_prefix(::std::string&& value);
  #endif
  void set_test_load_prefix(const char* value);
  void set_test_load_prefix(const char* value, size_t size);
  ::std::string* mutable_test_load_prefix();
  ::std::string* release_test_load_prefix();
  void set_allocated_test_load_prefix(::std::string* test_load_prefix);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.ShardsConnectorReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::RepeatedPtrField<::std::string> test_load_reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  ::google::protobuf::internal::ArenaStringPtr test_load_prefix_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class ShardsPropertiesReference :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.ShardsPropertiesReference) */ {
 public:
  ShardsPropertiesReference();
  virtual ~ShardsPropertiesReference();

  ShardsPropertiesReference(const ShardsPropertiesReference& from);

  inline ShardsPropertiesReference& operator=(const ShardsPropertiesReference& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ShardsPropertiesReference(ShardsPropertiesReference&& from) noexcept
    : ShardsPropertiesReference() {
    *this = ::std::move(from);
  }

  inline ShardsPropertiesReference& operator=(ShardsPropertiesReference&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const ShardsPropertiesReference& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ShardsPropertiesReference* internal_default_instance() {
    return reinterpret_cast<const ShardsPropertiesReference*>(
               &_ShardsPropertiesReference_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    7;

  void Swap(ShardsPropertiesReference* other);
  friend void swap(ShardsPropertiesReference& a, ShardsPropertiesReference& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ShardsPropertiesReference* New() const final {
    return CreateMaybeMessage<ShardsPropertiesReference>(nullptr);
  }

  ShardsPropertiesReference* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ShardsPropertiesReference>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ShardsPropertiesReference& from);
  void MergeFrom(const ShardsPropertiesReference& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ShardsPropertiesReference* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string reference = 4;
  int reference_size() const;
  void clear_reference();
  static const int kReferenceFieldNumber = 4;
  const ::std::string& reference(int index) const;
  ::std::string* mutable_reference(int index);
  void set_reference(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_reference(int index, ::std::string&& value);
  #endif
  void set_reference(int index, const char* value);
  void set_reference(int index, const char* value, size_t size);
  ::std::string* add_reference();
  void add_reference(const ::std::string& value);
  #if LANG_CXX11
  void add_reference(::std::string&& value);
  #endif
  void add_reference(const char* value);
  void add_reference(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField<::std::string>& reference() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* mutable_reference();

  // string parent = 1;
  void clear_parent();
  static const int kParentFieldNumber = 1;
  const ::std::string& parent() const;
  void set_parent(const ::std::string& value);
  #if LANG_CXX11
  void set_parent(::std::string&& value);
  #endif
  void set_parent(const char* value);
  void set_parent(const char* value, size_t size);
  ::std::string* mutable_parent();
  ::std::string* release_parent();
  void set_allocated_parent(::std::string* parent);

  // string namespace = 2;
  void clear_namespace_();
  static const int kNamespaceFieldNumber = 2;
  const ::std::string& namespace_() const;
  void set_namespace_(const ::std::string& value);
  #if LANG_CXX11
  void set_namespace_(::std::string&& value);
  #endif
  void set_namespace_(const char* value);
  void set_namespace_(const char* value, size_t size);
  ::std::string* mutable_namespace_();
  ::std::string* release_namespace_();
  void set_allocated_namespace_(::std::string* namespace_);

  // string kind = 3;
  void clear_kind();
  static const int kKindFieldNumber = 3;
  const ::std::string& kind() const;
  void set_kind(const ::std::string& value);
  #if LANG_CXX11
  void set_kind(::std::string&& value);
  #endif
  void set_kind(const char* value);
  void set_kind(const char* value, size_t size);
  ::std::string* mutable_kind();
  ::std::string* release_kind();
  void set_allocated_kind(::std::string* kind);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.ShardsPropertiesReference)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::RepeatedPtrField<::std::string> reference_;
  ::google::protobuf::internal::ArenaStringPtr parent_;
  ::google::protobuf::internal::ArenaStringPtr namespace__;
  ::google::protobuf::internal::ArenaStringPtr kind_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// -------------------------------------------------------------------

class Database_VariablesEntry_DoNotUse : public ::google::protobuf::internal::MapEntry<Database_VariablesEntry_DoNotUse, 
    ::std::string, ::std::string,
    ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
    0 > {
public:
#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
static bool _ParseMap(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
#endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  typedef ::google::protobuf::internal::MapEntry<Database_VariablesEntry_DoNotUse, 
    ::std::string, ::std::string,
    ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
    0 > SuperType;
  Database_VariablesEntry_DoNotUse();
  Database_VariablesEntry_DoNotUse(::google::protobuf::Arena* arena);
  void MergeFrom(const Database_VariablesEntry_DoNotUse& other);
  static const Database_VariablesEntry_DoNotUse* internal_default_instance() { return reinterpret_cast<const Database_VariablesEntry_DoNotUse*>(&_Database_VariablesEntry_DoNotUse_default_instance_); }
  void MergeFrom(const ::google::protobuf::Message& other) final;
  ::google::protobuf::Metadata GetMetadata() const;
};

// -------------------------------------------------------------------

class Database :
    public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:com.alipay.dds.api.v1.Database) */ {
 public:
  Database();
  virtual ~Database();

  Database(const Database& from);

  inline Database& operator=(const Database& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  Database(Database&& from) noexcept
    : Database() {
    *this = ::std::move(from);
  }

  inline Database& operator=(Database&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor() {
    return default_instance().GetDescriptor();
  }
  static const Database& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const Database* internal_default_instance() {
    return reinterpret_cast<const Database*>(
               &_Database_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    9;

  void Swap(Database* other);
  friend void swap(Database& a, Database& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline Database* New() const final {
    return CreateMaybeMessage<Database>(nullptr);
  }

  Database* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<Database>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const Database& from);
  void MergeFrom(const Database& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx);
  ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; }
  #else
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(Database* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------


  // accessors -------------------------------------------------------

  // map<string, string> variables = 7;
  int variables_size() const;
  void clear_variables();
  static const int kVariablesFieldNumber = 7;
  const ::google::protobuf::Map< ::std::string, ::std::string >&
      variables() const;
  ::google::protobuf::Map< ::std::string, ::std::string >*
      mutable_variables();

  // string cluster_name = 2;
  void clear_cluster_name();
  static const int kClusterNameFieldNumber = 2;
  const ::std::string& cluster_name() const;
  void set_cluster_name(const ::std::string& value);
  #if LANG_CXX11
  void set_cluster_name(::std::string&& value);
  #endif
  void set_cluster_name(const char* value);
  void set_cluster_name(const char* value, size_t size);
  ::std::string* mutable_cluster_name();
  ::std::string* release_cluster_name();
  void set_allocated_cluster_name(::std::string* cluster_name);

  // string tenant_name = 3;
  void clear_tenant_name();
  static const int kTenantNameFieldNumber = 3;
  const ::std::string& tenant_name() const;
  void set_tenant_name(const ::std::string& value);
  #if LANG_CXX11
  void set_tenant_name(::std::string&& value);
  #endif
  void set_tenant_name(const char* value);
  void set_tenant_name(const char* value, size_t size);
  ::std::string* mutable_tenant_name();
  ::std::string* release_tenant_name();
  void set_allocated_tenant_name(::std::string* tenant_name);

  // string database_name = 4;
  void clear_database_name();
  static const int kDatabaseNameFieldNumber = 4;
  const ::std::string& database_name() const;
  void set_database_name(const ::std::string& value);
  #if LANG_CXX11
  void set_database_name(::std::string&& value);
  #endif
  void set_database_name(const char* value);
  void set_database_name(const char* value, size_t size);
  ::std::string* mutable_database_name();
  ::std::string* release_database_name();
  void set_allocated_database_name(::std::string* database_name);

  // string database_mode = 5;
  void clear_database_mode();
  static const int kDatabaseModeFieldNumber = 5;
  const ::std::string& database_mode() const;
  void set_database_mode(const ::std::string& value);
  #if LANG_CXX11
  void set_database_mode(::std::string&& value);
  #endif
  void set_database_mode(const char* value);
  void set_database_mode(const char* value, size_t size);
  ::std::string* mutable_database_mode();
  ::std::string* release_database_mode();
  void set_allocated_database_mode(::std::string* database_mode);

  // string database_type = 6;
  void clear_database_type();
  static const int kDatabaseTypeFieldNumber = 6;
  const ::std::string& database_type() const;
  void set_database_type(const ::std::string& value);
  #if LANG_CXX11
  void set_database_type(::std::string&& value);
  #endif
  void set_database_type(const char* value);
  void set_database_type(const char* value, size_t size);
  ::std::string* mutable_database_type();
  ::std::string* release_database_type();
  void set_allocated_database_type(::std::string* database_type);

  // .com.alipay.dds.api.v1.MetaData metadata = 1;
  bool has_metadata() const;
  void clear_metadata();
  static const int kMetadataFieldNumber = 1;
  const ::com::alipay::dds::api::v1::MetaData& metadata() const;
  ::com::alipay::dds::api::v1::MetaData* release_metadata();
  ::com::alipay::dds::api::v1::MetaData* mutable_metadata();
  void set_allocated_metadata(::com::alipay::dds::api::v1::MetaData* metadata);

  // .com.alipay.dds.api.v1.DatabaseAuthoritiesReference database_authorities = 8;
  bool has_database_authorities() const;
  void clear_database_authorities();
  static const int kDatabaseAuthoritiesFieldNumber = 8;
  const ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference& database_authorities() const;
  ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* release_database_authorities();
  ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* mutable_database_authorities();
  void set_allocated_database_authorities(::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* database_authorities);

  // .com.alipay.dds.api.v1.DatabaseVariablesReference database_variables = 9;
  bool has_database_variables() const;
  void clear_database_variables();
  static const int kDatabaseVariablesFieldNumber = 9;
  const ::com::alipay::dds::api::v1::DatabaseVariablesReference& database_variables() const;
  ::com::alipay::dds::api::v1::DatabaseVariablesReference* release_database_variables();
  ::com::alipay::dds::api::v1::DatabaseVariablesReference* mutable_database_variables();
  void set_allocated_database_variables(::com::alipay::dds::api::v1::DatabaseVariablesReference* database_variables);

  // .com.alipay.dds.api.v1.DatabasePropertiesReference database_properties = 10;
  bool has_database_properties() const;
  void clear_database_properties();
  static const int kDatabasePropertiesFieldNumber = 10;
  const ::com::alipay::dds::api::v1::DatabasePropertiesReference& database_properties() const;
  ::com::alipay::dds::api::v1::DatabasePropertiesReference* release_database_properties();
  ::com::alipay::dds::api::v1::DatabasePropertiesReference* mutable_database_properties();
  void set_allocated_database_properties(::com::alipay::dds::api::v1::DatabasePropertiesReference* database_properties);

  // .com.alipay.dds.api.v1.ShardsTopologyReference shards_topology = 11;
  bool has_shards_topology() const;
  void clear_shards_topology();
  static const int kShardsTopologyFieldNumber = 11;
  const ::com::alipay::dds::api::v1::ShardsTopologyReference& shards_topology() const;
  ::com::alipay::dds::api::v1::ShardsTopologyReference* release_shards_topology();
  ::com::alipay::dds::api::v1::ShardsTopologyReference* mutable_shards_topology();
  void set_allocated_shards_topology(::com::alipay::dds::api::v1::ShardsTopologyReference* shards_topology);

  // .com.alipay.dds.api.v1.ShardsRouterReference shards_router = 12;
  bool has_shards_router() const;
  void clear_shards_router();
  static const int kShardsRouterFieldNumber = 12;
  const ::com::alipay::dds::api::v1::ShardsRouterReference& shards_router() const;
  ::com::alipay::dds::api::v1::ShardsRouterReference* release_shards_router();
  ::com::alipay::dds::api::v1::ShardsRouterReference* mutable_shards_router();
  void set_allocated_shards_router(::com::alipay::dds::api::v1::ShardsRouterReference* shards_router);

  // .com.alipay.dds.api.v1.ShardsDistributeReference shards_distribute = 13;
  bool has_shards_distribute() const;
  void clear_shards_distribute();
  static const int kShardsDistributeFieldNumber = 13;
  const ::com::alipay::dds::api::v1::ShardsDistributeReference& shards_distribute() const;
  ::com::alipay::dds::api::v1::ShardsDistributeReference* release_shards_distribute();
  ::com::alipay::dds::api::v1::ShardsDistributeReference* mutable_shards_distribute();
  void set_allocated_shards_distribute(::com::alipay::dds::api::v1::ShardsDistributeReference* shards_distribute);

  // .com.alipay.dds.api.v1.ShardsConnectorReference shards_connector = 14;
  bool has_shards_connector() const;
  void clear_shards_connector();
  static const int kShardsConnectorFieldNumber = 14;
  const ::com::alipay::dds::api::v1::ShardsConnectorReference& shards_connector() const;
  ::com::alipay::dds::api::v1::ShardsConnectorReference* release_shards_connector();
  ::com::alipay::dds::api::v1::ShardsConnectorReference* mutable_shards_connector();
  void set_allocated_shards_connector(::com::alipay::dds::api::v1::ShardsConnectorReference* shards_connector);

  // .com.alipay.dds.api.v1.ShardsPropertiesReference shards_properties = 15;
  bool has_shards_properties() const;
  void clear_shards_properties();
  static const int kShardsPropertiesFieldNumber = 15;
  const ::com::alipay::dds::api::v1::ShardsPropertiesReference& shards_properties() const;
  ::com::alipay::dds::api::v1::ShardsPropertiesReference* release_shards_properties();
  ::com::alipay::dds::api::v1::ShardsPropertiesReference* mutable_shards_properties();
  void set_allocated_shards_properties(::com::alipay::dds::api::v1::ShardsPropertiesReference* shards_properties);

  // .com.alipay.dds.api.v1.MarkedMultiReference extension = 16;
  bool has_extension() const;
  void clear_extension();
  static const int kExtensionFieldNumber = 16;
  const ::com::alipay::dds::api::v1::MarkedMultiReference& extension() const;
  ::com::alipay::dds::api::v1::MarkedMultiReference* release_extension();
  ::com::alipay::dds::api::v1::MarkedMultiReference* mutable_extension();
  void set_allocated_extension(::com::alipay::dds::api::v1::MarkedMultiReference* extension);

  // @@protoc_insertion_point(class_scope:com.alipay.dds.api.v1.Database)
 private:
  class HasBitSetters;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::MapField<
      Database_VariablesEntry_DoNotUse,
      ::std::string, ::std::string,
      ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
      ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
      0 > variables_;
  ::google::protobuf::internal::ArenaStringPtr cluster_name_;
  ::google::protobuf::internal::ArenaStringPtr tenant_name_;
  ::google::protobuf::internal::ArenaStringPtr database_name_;
  ::google::protobuf::internal::ArenaStringPtr database_mode_;
  ::google::protobuf::internal::ArenaStringPtr database_type_;
  ::com::alipay::dds::api::v1::MetaData* metadata_;
  ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* database_authorities_;
  ::com::alipay::dds::api::v1::DatabaseVariablesReference* database_variables_;
  ::com::alipay::dds::api::v1::DatabasePropertiesReference* database_properties_;
  ::com::alipay::dds::api::v1::ShardsTopologyReference* shards_topology_;
  ::com::alipay::dds::api::v1::ShardsRouterReference* shards_router_;
  ::com::alipay::dds::api::v1::ShardsDistributeReference* shards_distribute_;
  ::com::alipay::dds::api::v1::ShardsConnectorReference* shards_connector_;
  ::com::alipay::dds::api::v1::ShardsPropertiesReference* shards_properties_;
  ::com::alipay::dds::api::v1::MarkedMultiReference* extension_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_database_2eproto;
};
// ===================================================================


// ===================================================================

#ifdef __GNUC__
  #pragma GCC diagnostic push
  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// DatabaseAuthoritiesReference

// string parent = 1;
inline void DatabaseAuthoritiesReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabaseAuthoritiesReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
  return parent_.GetNoArena();
}
inline void DatabaseAuthoritiesReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
}
#if LANG_CXX11
inline void DatabaseAuthoritiesReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
}
#endif
inline void DatabaseAuthoritiesReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
}
inline void DatabaseAuthoritiesReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
}
inline ::std::string* DatabaseAuthoritiesReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabaseAuthoritiesReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabaseAuthoritiesReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.parent)
}

// string namespace = 2;
inline void DatabaseAuthoritiesReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabaseAuthoritiesReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
  return namespace__.GetNoArena();
}
inline void DatabaseAuthoritiesReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
}
#if LANG_CXX11
inline void DatabaseAuthoritiesReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
}
#endif
inline void DatabaseAuthoritiesReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
}
inline void DatabaseAuthoritiesReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
}
inline ::std::string* DatabaseAuthoritiesReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabaseAuthoritiesReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabaseAuthoritiesReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.namespace)
}

// string kind = 3;
inline void DatabaseAuthoritiesReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabaseAuthoritiesReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
  return kind_.GetNoArena();
}
inline void DatabaseAuthoritiesReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
}
#if LANG_CXX11
inline void DatabaseAuthoritiesReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
}
#endif
inline void DatabaseAuthoritiesReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
}
inline void DatabaseAuthoritiesReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
}
inline ::std::string* DatabaseAuthoritiesReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabaseAuthoritiesReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabaseAuthoritiesReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.kind)
}

// repeated string reference = 4;
inline int DatabaseAuthoritiesReference::reference_size() const {
  return reference_.size();
}
inline void DatabaseAuthoritiesReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& DatabaseAuthoritiesReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  return reference_.Get(index);
}
inline ::std::string* DatabaseAuthoritiesReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  return reference_.Mutable(index);
}
inline void DatabaseAuthoritiesReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void DatabaseAuthoritiesReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void DatabaseAuthoritiesReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
}
inline void DatabaseAuthoritiesReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
}
inline ::std::string* DatabaseAuthoritiesReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  return reference_.Add();
}
inline void DatabaseAuthoritiesReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
}
#if LANG_CXX11
inline void DatabaseAuthoritiesReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
}
#endif
inline void DatabaseAuthoritiesReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
}
inline void DatabaseAuthoritiesReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
DatabaseAuthoritiesReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
DatabaseAuthoritiesReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.DatabaseAuthoritiesReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// DatabaseVariablesReference

// string parent = 1;
inline void DatabaseVariablesReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabaseVariablesReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
  return parent_.GetNoArena();
}
inline void DatabaseVariablesReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
}
#if LANG_CXX11
inline void DatabaseVariablesReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
}
#endif
inline void DatabaseVariablesReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
}
inline void DatabaseVariablesReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
}
inline ::std::string* DatabaseVariablesReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabaseVariablesReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabaseVariablesReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabaseVariablesReference.parent)
}

// string namespace = 2;
inline void DatabaseVariablesReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabaseVariablesReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
  return namespace__.GetNoArena();
}
inline void DatabaseVariablesReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
}
#if LANG_CXX11
inline void DatabaseVariablesReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
}
#endif
inline void DatabaseVariablesReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
}
inline void DatabaseVariablesReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
}
inline ::std::string* DatabaseVariablesReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabaseVariablesReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabaseVariablesReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabaseVariablesReference.namespace)
}

// string kind = 3;
inline void DatabaseVariablesReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabaseVariablesReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
  return kind_.GetNoArena();
}
inline void DatabaseVariablesReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
}
#if LANG_CXX11
inline void DatabaseVariablesReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
}
#endif
inline void DatabaseVariablesReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
}
inline void DatabaseVariablesReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
}
inline ::std::string* DatabaseVariablesReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabaseVariablesReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabaseVariablesReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabaseVariablesReference.kind)
}

// repeated string reference = 4;
inline int DatabaseVariablesReference::reference_size() const {
  return reference_.size();
}
inline void DatabaseVariablesReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& DatabaseVariablesReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  return reference_.Get(index);
}
inline ::std::string* DatabaseVariablesReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  return reference_.Mutable(index);
}
inline void DatabaseVariablesReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void DatabaseVariablesReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void DatabaseVariablesReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
}
inline void DatabaseVariablesReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
}
inline ::std::string* DatabaseVariablesReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  return reference_.Add();
}
inline void DatabaseVariablesReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
}
#if LANG_CXX11
inline void DatabaseVariablesReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
}
#endif
inline void DatabaseVariablesReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
}
inline void DatabaseVariablesReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
DatabaseVariablesReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
DatabaseVariablesReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.DatabaseVariablesReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// DatabasePropertiesReference

// string parent = 1;
inline void DatabasePropertiesReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabasePropertiesReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
  return parent_.GetNoArena();
}
inline void DatabasePropertiesReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
}
#if LANG_CXX11
inline void DatabasePropertiesReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
}
#endif
inline void DatabasePropertiesReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
}
inline void DatabasePropertiesReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
}
inline ::std::string* DatabasePropertiesReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabasePropertiesReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabasePropertiesReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabasePropertiesReference.parent)
}

// string namespace = 2;
inline void DatabasePropertiesReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabasePropertiesReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
  return namespace__.GetNoArena();
}
inline void DatabasePropertiesReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
}
#if LANG_CXX11
inline void DatabasePropertiesReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
}
#endif
inline void DatabasePropertiesReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
}
inline void DatabasePropertiesReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
}
inline ::std::string* DatabasePropertiesReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabasePropertiesReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabasePropertiesReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabasePropertiesReference.namespace)
}

// string kind = 3;
inline void DatabasePropertiesReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& DatabasePropertiesReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
  return kind_.GetNoArena();
}
inline void DatabasePropertiesReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
}
#if LANG_CXX11
inline void DatabasePropertiesReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
}
#endif
inline void DatabasePropertiesReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
}
inline void DatabasePropertiesReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
}
inline ::std::string* DatabasePropertiesReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* DatabasePropertiesReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void DatabasePropertiesReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.DatabasePropertiesReference.kind)
}

// repeated string reference = 4;
inline int DatabasePropertiesReference::reference_size() const {
  return reference_.size();
}
inline void DatabasePropertiesReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& DatabasePropertiesReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  return reference_.Get(index);
}
inline ::std::string* DatabasePropertiesReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  return reference_.Mutable(index);
}
inline void DatabasePropertiesReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void DatabasePropertiesReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void DatabasePropertiesReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
}
inline void DatabasePropertiesReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
}
inline ::std::string* DatabasePropertiesReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  return reference_.Add();
}
inline void DatabasePropertiesReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
}
#if LANG_CXX11
inline void DatabasePropertiesReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
}
#endif
inline void DatabasePropertiesReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
}
inline void DatabasePropertiesReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
DatabasePropertiesReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
DatabasePropertiesReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.DatabasePropertiesReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// ShardsTopologyReference

// string specific_mode = 1;
inline void ShardsTopologyReference::clear_specific_mode() {
  specific_mode_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsTopologyReference::specific_mode() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
  return specific_mode_.GetNoArena();
}
inline void ShardsTopologyReference::set_specific_mode(const ::std::string& value) {
  
  specific_mode_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
}
#if LANG_CXX11
inline void ShardsTopologyReference::set_specific_mode(::std::string&& value) {
  
  specific_mode_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
}
#endif
inline void ShardsTopologyReference::set_specific_mode(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  specific_mode_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
}
inline void ShardsTopologyReference::set_specific_mode(const char* value, size_t size) {
  
  specific_mode_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
}
inline ::std::string* ShardsTopologyReference::mutable_specific_mode() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
  return specific_mode_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsTopologyReference::release_specific_mode() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
  
  return specific_mode_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsTopologyReference::set_allocated_specific_mode(::std::string* specific_mode) {
  if (specific_mode != nullptr) {
    
  } else {
    
  }
  specific_mode_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), specific_mode);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsTopologyReference.specific_mode)
}

// string parent = 2;
inline void ShardsTopologyReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsTopologyReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
  return parent_.GetNoArena();
}
inline void ShardsTopologyReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
}
#if LANG_CXX11
inline void ShardsTopologyReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
}
#endif
inline void ShardsTopologyReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
}
inline void ShardsTopologyReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
}
inline ::std::string* ShardsTopologyReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsTopologyReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsTopologyReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsTopologyReference.parent)
}

// string namespace = 3;
inline void ShardsTopologyReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsTopologyReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
  return namespace__.GetNoArena();
}
inline void ShardsTopologyReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
}
#if LANG_CXX11
inline void ShardsTopologyReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
}
#endif
inline void ShardsTopologyReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
}
inline void ShardsTopologyReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
}
inline ::std::string* ShardsTopologyReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsTopologyReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsTopologyReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsTopologyReference.namespace)
}

// string kind = 4;
inline void ShardsTopologyReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsTopologyReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
  return kind_.GetNoArena();
}
inline void ShardsTopologyReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
}
#if LANG_CXX11
inline void ShardsTopologyReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
}
#endif
inline void ShardsTopologyReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
}
inline void ShardsTopologyReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
}
inline ::std::string* ShardsTopologyReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsTopologyReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsTopologyReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsTopologyReference.kind)
}

// repeated string reference = 5;
inline int ShardsTopologyReference::reference_size() const {
  return reference_.size();
}
inline void ShardsTopologyReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& ShardsTopologyReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  return reference_.Get(index);
}
inline ::std::string* ShardsTopologyReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  return reference_.Mutable(index);
}
inline void ShardsTopologyReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void ShardsTopologyReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void ShardsTopologyReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
}
inline void ShardsTopologyReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
}
inline ::std::string* ShardsTopologyReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  return reference_.Add();
}
inline void ShardsTopologyReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
}
#if LANG_CXX11
inline void ShardsTopologyReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
}
#endif
inline void ShardsTopologyReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
}
inline void ShardsTopologyReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ShardsTopologyReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
ShardsTopologyReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.ShardsTopologyReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// ShardsRouterReference

// string parent = 1;
inline void ShardsRouterReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsRouterReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsRouterReference.parent)
  return parent_.GetNoArena();
}
inline void ShardsRouterReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsRouterReference.parent)
}
#if LANG_CXX11
inline void ShardsRouterReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsRouterReference.parent)
}
#endif
inline void ShardsRouterReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsRouterReference.parent)
}
inline void ShardsRouterReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsRouterReference.parent)
}
inline ::std::string* ShardsRouterReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsRouterReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsRouterReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsRouterReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsRouterReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsRouterReference.parent)
}

// string namespace = 2;
inline void ShardsRouterReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsRouterReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
  return namespace__.GetNoArena();
}
inline void ShardsRouterReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
}
#if LANG_CXX11
inline void ShardsRouterReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
}
#endif
inline void ShardsRouterReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
}
inline void ShardsRouterReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
}
inline ::std::string* ShardsRouterReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsRouterReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsRouterReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsRouterReference.namespace)
}

// string kind = 3;
inline void ShardsRouterReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsRouterReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsRouterReference.kind)
  return kind_.GetNoArena();
}
inline void ShardsRouterReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsRouterReference.kind)
}
#if LANG_CXX11
inline void ShardsRouterReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsRouterReference.kind)
}
#endif
inline void ShardsRouterReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsRouterReference.kind)
}
inline void ShardsRouterReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsRouterReference.kind)
}
inline ::std::string* ShardsRouterReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsRouterReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsRouterReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsRouterReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsRouterReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsRouterReference.kind)
}

// repeated string reference = 4;
inline int ShardsRouterReference::reference_size() const {
  return reference_.size();
}
inline void ShardsRouterReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& ShardsRouterReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  return reference_.Get(index);
}
inline ::std::string* ShardsRouterReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  return reference_.Mutable(index);
}
inline void ShardsRouterReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void ShardsRouterReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void ShardsRouterReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsRouterReference.reference)
}
inline void ShardsRouterReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsRouterReference.reference)
}
inline ::std::string* ShardsRouterReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  return reference_.Add();
}
inline void ShardsRouterReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsRouterReference.reference)
}
#if LANG_CXX11
inline void ShardsRouterReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsRouterReference.reference)
}
#endif
inline void ShardsRouterReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.ShardsRouterReference.reference)
}
inline void ShardsRouterReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.ShardsRouterReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ShardsRouterReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
ShardsRouterReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.ShardsRouterReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// ShardsDistributeReference

// string parent = 1;
inline void ShardsDistributeReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsDistributeReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
  return parent_.GetNoArena();
}
inline void ShardsDistributeReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
}
#if LANG_CXX11
inline void ShardsDistributeReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
}
#endif
inline void ShardsDistributeReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
}
inline void ShardsDistributeReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
}
inline ::std::string* ShardsDistributeReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsDistributeReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsDistributeReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsDistributeReference.parent)
}

// string namespace = 2;
inline void ShardsDistributeReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsDistributeReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
  return namespace__.GetNoArena();
}
inline void ShardsDistributeReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
}
#if LANG_CXX11
inline void ShardsDistributeReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
}
#endif
inline void ShardsDistributeReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
}
inline void ShardsDistributeReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
}
inline ::std::string* ShardsDistributeReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsDistributeReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsDistributeReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsDistributeReference.namespace)
}

// string kind = 3;
inline void ShardsDistributeReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsDistributeReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
  return kind_.GetNoArena();
}
inline void ShardsDistributeReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
}
#if LANG_CXX11
inline void ShardsDistributeReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
}
#endif
inline void ShardsDistributeReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
}
inline void ShardsDistributeReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
}
inline ::std::string* ShardsDistributeReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsDistributeReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsDistributeReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsDistributeReference.kind)
}

// repeated string reference = 4;
inline int ShardsDistributeReference::reference_size() const {
  return reference_.size();
}
inline void ShardsDistributeReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& ShardsDistributeReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  return reference_.Get(index);
}
inline ::std::string* ShardsDistributeReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  return reference_.Mutable(index);
}
inline void ShardsDistributeReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void ShardsDistributeReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void ShardsDistributeReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
}
inline void ShardsDistributeReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
}
inline ::std::string* ShardsDistributeReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  return reference_.Add();
}
inline void ShardsDistributeReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
}
#if LANG_CXX11
inline void ShardsDistributeReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
}
#endif
inline void ShardsDistributeReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
}
inline void ShardsDistributeReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ShardsDistributeReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
ShardsDistributeReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.ShardsDistributeReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// ShardsConnectorReference

// string parent = 1;
inline void ShardsConnectorReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsConnectorReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
  return parent_.GetNoArena();
}
inline void ShardsConnectorReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
}
#if LANG_CXX11
inline void ShardsConnectorReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
}
#endif
inline void ShardsConnectorReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
}
inline void ShardsConnectorReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
}
inline ::std::string* ShardsConnectorReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsConnectorReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsConnectorReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsConnectorReference.parent)
}

// string namespace = 2;
inline void ShardsConnectorReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsConnectorReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
  return namespace__.GetNoArena();
}
inline void ShardsConnectorReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
}
#if LANG_CXX11
inline void ShardsConnectorReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
}
#endif
inline void ShardsConnectorReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
}
inline void ShardsConnectorReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
}
inline ::std::string* ShardsConnectorReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsConnectorReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsConnectorReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsConnectorReference.namespace)
}

// string kind = 3;
inline void ShardsConnectorReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsConnectorReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
  return kind_.GetNoArena();
}
inline void ShardsConnectorReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
}
#if LANG_CXX11
inline void ShardsConnectorReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
}
#endif
inline void ShardsConnectorReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
}
inline void ShardsConnectorReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
}
inline ::std::string* ShardsConnectorReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsConnectorReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsConnectorReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsConnectorReference.kind)
}

// repeated string reference = 4;
inline int ShardsConnectorReference::reference_size() const {
  return reference_.size();
}
inline void ShardsConnectorReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& ShardsConnectorReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  return reference_.Get(index);
}
inline ::std::string* ShardsConnectorReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  return reference_.Mutable(index);
}
inline void ShardsConnectorReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void ShardsConnectorReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void ShardsConnectorReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
}
inline void ShardsConnectorReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
}
inline ::std::string* ShardsConnectorReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  return reference_.Add();
}
inline void ShardsConnectorReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
}
#if LANG_CXX11
inline void ShardsConnectorReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
}
#endif
inline void ShardsConnectorReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
}
inline void ShardsConnectorReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ShardsConnectorReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
ShardsConnectorReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.ShardsConnectorReference.reference)
  return &reference_;
}

// string test_load_prefix = 5;
inline void ShardsConnectorReference::clear_test_load_prefix() {
  test_load_prefix_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsConnectorReference::test_load_prefix() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
  return test_load_prefix_.GetNoArena();
}
inline void ShardsConnectorReference::set_test_load_prefix(const ::std::string& value) {
  
  test_load_prefix_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
}
#if LANG_CXX11
inline void ShardsConnectorReference::set_test_load_prefix(::std::string&& value) {
  
  test_load_prefix_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
}
#endif
inline void ShardsConnectorReference::set_test_load_prefix(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  test_load_prefix_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
}
inline void ShardsConnectorReference::set_test_load_prefix(const char* value, size_t size) {
  
  test_load_prefix_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
}
inline ::std::string* ShardsConnectorReference::mutable_test_load_prefix() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
  return test_load_prefix_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsConnectorReference::release_test_load_prefix() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
  
  return test_load_prefix_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsConnectorReference::set_allocated_test_load_prefix(::std::string* test_load_prefix) {
  if (test_load_prefix != nullptr) {
    
  } else {
    
  }
  test_load_prefix_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), test_load_prefix);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_prefix)
}

// repeated string test_load_reference = 6;
inline int ShardsConnectorReference::test_load_reference_size() const {
  return test_load_reference_.size();
}
inline void ShardsConnectorReference::clear_test_load_reference() {
  test_load_reference_.Clear();
}
inline const ::std::string& ShardsConnectorReference::test_load_reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  return test_load_reference_.Get(index);
}
inline ::std::string* ShardsConnectorReference::mutable_test_load_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  return test_load_reference_.Mutable(index);
}
inline void ShardsConnectorReference::set_test_load_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  test_load_reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void ShardsConnectorReference::set_test_load_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  test_load_reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void ShardsConnectorReference::set_test_load_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  test_load_reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
}
inline void ShardsConnectorReference::set_test_load_reference(int index, const char* value, size_t size) {
  test_load_reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
}
inline ::std::string* ShardsConnectorReference::add_test_load_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  return test_load_reference_.Add();
}
inline void ShardsConnectorReference::add_test_load_reference(const ::std::string& value) {
  test_load_reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
}
#if LANG_CXX11
inline void ShardsConnectorReference::add_test_load_reference(::std::string&& value) {
  test_load_reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
}
#endif
inline void ShardsConnectorReference::add_test_load_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  test_load_reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
}
inline void ShardsConnectorReference::add_test_load_reference(const char* value, size_t size) {
  test_load_reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ShardsConnectorReference::test_load_reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  return test_load_reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
ShardsConnectorReference::mutable_test_load_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.ShardsConnectorReference.test_load_reference)
  return &test_load_reference_;
}

// -------------------------------------------------------------------

// ShardsPropertiesReference

// string parent = 1;
inline void ShardsPropertiesReference::clear_parent() {
  parent_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsPropertiesReference::parent() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
  return parent_.GetNoArena();
}
inline void ShardsPropertiesReference::set_parent(const ::std::string& value) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
}
#if LANG_CXX11
inline void ShardsPropertiesReference::set_parent(::std::string&& value) {
  
  parent_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
}
#endif
inline void ShardsPropertiesReference::set_parent(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
}
inline void ShardsPropertiesReference::set_parent(const char* value, size_t size) {
  
  parent_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
}
inline ::std::string* ShardsPropertiesReference::mutable_parent() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
  return parent_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsPropertiesReference::release_parent() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
  
  return parent_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsPropertiesReference::set_allocated_parent(::std::string* parent) {
  if (parent != nullptr) {
    
  } else {
    
  }
  parent_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), parent);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsPropertiesReference.parent)
}

// string namespace = 2;
inline void ShardsPropertiesReference::clear_namespace_() {
  namespace__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsPropertiesReference::namespace_() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
  return namespace__.GetNoArena();
}
inline void ShardsPropertiesReference::set_namespace_(const ::std::string& value) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
}
#if LANG_CXX11
inline void ShardsPropertiesReference::set_namespace_(::std::string&& value) {
  
  namespace__.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
}
#endif
inline void ShardsPropertiesReference::set_namespace_(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
}
inline void ShardsPropertiesReference::set_namespace_(const char* value, size_t size) {
  
  namespace__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
}
inline ::std::string* ShardsPropertiesReference::mutable_namespace_() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
  return namespace__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsPropertiesReference::release_namespace_() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
  
  return namespace__.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsPropertiesReference::set_allocated_namespace_(::std::string* namespace_) {
  if (namespace_ != nullptr) {
    
  } else {
    
  }
  namespace__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), namespace_);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsPropertiesReference.namespace)
}

// string kind = 3;
inline void ShardsPropertiesReference::clear_kind() {
  kind_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& ShardsPropertiesReference::kind() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
  return kind_.GetNoArena();
}
inline void ShardsPropertiesReference::set_kind(const ::std::string& value) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
}
#if LANG_CXX11
inline void ShardsPropertiesReference::set_kind(::std::string&& value) {
  
  kind_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
}
#endif
inline void ShardsPropertiesReference::set_kind(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
}
inline void ShardsPropertiesReference::set_kind(const char* value, size_t size) {
  
  kind_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
}
inline ::std::string* ShardsPropertiesReference::mutable_kind() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
  return kind_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ShardsPropertiesReference::release_kind() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
  
  return kind_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ShardsPropertiesReference::set_allocated_kind(::std::string* kind) {
  if (kind != nullptr) {
    
  } else {
    
  }
  kind_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), kind);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.ShardsPropertiesReference.kind)
}

// repeated string reference = 4;
inline int ShardsPropertiesReference::reference_size() const {
  return reference_.size();
}
inline void ShardsPropertiesReference::clear_reference() {
  reference_.Clear();
}
inline const ::std::string& ShardsPropertiesReference::reference(int index) const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  return reference_.Get(index);
}
inline ::std::string* ShardsPropertiesReference::mutable_reference(int index) {
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  return reference_.Mutable(index);
}
inline void ShardsPropertiesReference::set_reference(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  reference_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void ShardsPropertiesReference::set_reference(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  reference_.Mutable(index)->assign(std::move(value));
}
#endif
inline void ShardsPropertiesReference::set_reference(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
}
inline void ShardsPropertiesReference::set_reference(int index, const char* value, size_t size) {
  reference_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
}
inline ::std::string* ShardsPropertiesReference::add_reference() {
  // @@protoc_insertion_point(field_add_mutable:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  return reference_.Add();
}
inline void ShardsPropertiesReference::add_reference(const ::std::string& value) {
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
}
#if LANG_CXX11
inline void ShardsPropertiesReference::add_reference(::std::string&& value) {
  reference_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
}
#endif
inline void ShardsPropertiesReference::add_reference(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  reference_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
}
inline void ShardsPropertiesReference::add_reference(const char* value, size_t size) {
  reference_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ShardsPropertiesReference::reference() const {
  // @@protoc_insertion_point(field_list:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  return reference_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>*
ShardsPropertiesReference::mutable_reference() {
  // @@protoc_insertion_point(field_mutable_list:com.alipay.dds.api.v1.ShardsPropertiesReference.reference)
  return &reference_;
}

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// Database

// .com.alipay.dds.api.v1.MetaData metadata = 1;
inline bool Database::has_metadata() const {
  return this != internal_default_instance() && metadata_ != nullptr;
}
inline const ::com::alipay::dds::api::v1::MetaData& Database::metadata() const {
  const ::com::alipay::dds::api::v1::MetaData* p = metadata_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.metadata)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::MetaData*>(
      &::com::alipay::dds::api::v1::_MetaData_default_instance_);
}
inline ::com::alipay::dds::api::v1::MetaData* Database::release_metadata() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.metadata)
  
  ::com::alipay::dds::api::v1::MetaData* temp = metadata_;
  metadata_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::MetaData* Database::mutable_metadata() {
  
  if (metadata_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::MetaData>(GetArenaNoVirtual());
    metadata_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.metadata)
  return metadata_;
}
inline void Database::set_allocated_metadata(::com::alipay::dds::api::v1::MetaData* metadata) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::google::protobuf::MessageLite*>(metadata_);
  }
  if (metadata) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      metadata = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, metadata, submessage_arena);
    }
    
  } else {
    
  }
  metadata_ = metadata;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.metadata)
}

// string cluster_name = 2;
inline void Database::clear_cluster_name() {
  cluster_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& Database::cluster_name() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.cluster_name)
  return cluster_name_.GetNoArena();
}
inline void Database::set_cluster_name(const ::std::string& value) {
  
  cluster_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.Database.cluster_name)
}
#if LANG_CXX11
inline void Database::set_cluster_name(::std::string&& value) {
  
  cluster_name_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.Database.cluster_name)
}
#endif
inline void Database::set_cluster_name(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  cluster_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.Database.cluster_name)
}
inline void Database::set_cluster_name(const char* value, size_t size) {
  
  cluster_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.Database.cluster_name)
}
inline ::std::string* Database::mutable_cluster_name() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.cluster_name)
  return cluster_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* Database::release_cluster_name() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.cluster_name)
  
  return cluster_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void Database::set_allocated_cluster_name(::std::string* cluster_name) {
  if (cluster_name != nullptr) {
    
  } else {
    
  }
  cluster_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), cluster_name);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.cluster_name)
}

// string tenant_name = 3;
inline void Database::clear_tenant_name() {
  tenant_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& Database::tenant_name() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.tenant_name)
  return tenant_name_.GetNoArena();
}
inline void Database::set_tenant_name(const ::std::string& value) {
  
  tenant_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.Database.tenant_name)
}
#if LANG_CXX11
inline void Database::set_tenant_name(::std::string&& value) {
  
  tenant_name_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.Database.tenant_name)
}
#endif
inline void Database::set_tenant_name(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  tenant_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.Database.tenant_name)
}
inline void Database::set_tenant_name(const char* value, size_t size) {
  
  tenant_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.Database.tenant_name)
}
inline ::std::string* Database::mutable_tenant_name() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.tenant_name)
  return tenant_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* Database::release_tenant_name() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.tenant_name)
  
  return tenant_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void Database::set_allocated_tenant_name(::std::string* tenant_name) {
  if (tenant_name != nullptr) {
    
  } else {
    
  }
  tenant_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), tenant_name);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.tenant_name)
}

// string database_name = 4;
inline void Database::clear_database_name() {
  database_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& Database::database_name() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.database_name)
  return database_name_.GetNoArena();
}
inline void Database::set_database_name(const ::std::string& value) {
  
  database_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.Database.database_name)
}
#if LANG_CXX11
inline void Database::set_database_name(::std::string&& value) {
  
  database_name_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.Database.database_name)
}
#endif
inline void Database::set_database_name(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  database_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.Database.database_name)
}
inline void Database::set_database_name(const char* value, size_t size) {
  
  database_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.Database.database_name)
}
inline ::std::string* Database::mutable_database_name() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.database_name)
  return database_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* Database::release_database_name() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.database_name)
  
  return database_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void Database::set_allocated_database_name(::std::string* database_name) {
  if (database_name != nullptr) {
    
  } else {
    
  }
  database_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), database_name);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.database_name)
}

// string database_mode = 5;
inline void Database::clear_database_mode() {
  database_mode_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& Database::database_mode() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.database_mode)
  return database_mode_.GetNoArena();
}
inline void Database::set_database_mode(const ::std::string& value) {
  
  database_mode_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.Database.database_mode)
}
#if LANG_CXX11
inline void Database::set_database_mode(::std::string&& value) {
  
  database_mode_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.Database.database_mode)
}
#endif
inline void Database::set_database_mode(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  database_mode_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.Database.database_mode)
}
inline void Database::set_database_mode(const char* value, size_t size) {
  
  database_mode_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.Database.database_mode)
}
inline ::std::string* Database::mutable_database_mode() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.database_mode)
  return database_mode_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* Database::release_database_mode() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.database_mode)
  
  return database_mode_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void Database::set_allocated_database_mode(::std::string* database_mode) {
  if (database_mode != nullptr) {
    
  } else {
    
  }
  database_mode_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), database_mode);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.database_mode)
}

// string database_type = 6;
inline void Database::clear_database_type() {
  database_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline const ::std::string& Database::database_type() const {
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.database_type)
  return database_type_.GetNoArena();
}
inline void Database::set_database_type(const ::std::string& value) {
  
  database_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:com.alipay.dds.api.v1.Database.database_type)
}
#if LANG_CXX11
inline void Database::set_database_type(::std::string&& value) {
  
  database_type_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:com.alipay.dds.api.v1.Database.database_type)
}
#endif
inline void Database::set_database_type(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  database_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:com.alipay.dds.api.v1.Database.database_type)
}
inline void Database::set_database_type(const char* value, size_t size) {
  
  database_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:com.alipay.dds.api.v1.Database.database_type)
}
inline ::std::string* Database::mutable_database_type() {
  
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.database_type)
  return database_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* Database::release_database_type() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.database_type)
  
  return database_type_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void Database::set_allocated_database_type(::std::string* database_type) {
  if (database_type != nullptr) {
    
  } else {
    
  }
  database_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), database_type);
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.database_type)
}

// map<string, string> variables = 7;
inline int Database::variables_size() const {
  return variables_.size();
}
inline void Database::clear_variables() {
  variables_.Clear();
}
inline const ::google::protobuf::Map< ::std::string, ::std::string >&
Database::variables() const {
  // @@protoc_insertion_point(field_map:com.alipay.dds.api.v1.Database.variables)
  return variables_.GetMap();
}
inline ::google::protobuf::Map< ::std::string, ::std::string >*
Database::mutable_variables() {
  // @@protoc_insertion_point(field_mutable_map:com.alipay.dds.api.v1.Database.variables)
  return variables_.MutableMap();
}

// .com.alipay.dds.api.v1.DatabaseAuthoritiesReference database_authorities = 8;
inline bool Database::has_database_authorities() const {
  return this != internal_default_instance() && database_authorities_ != nullptr;
}
inline void Database::clear_database_authorities() {
  if (GetArenaNoVirtual() == nullptr && database_authorities_ != nullptr) {
    delete database_authorities_;
  }
  database_authorities_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference& Database::database_authorities() const {
  const ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* p = database_authorities_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.database_authorities)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference*>(
      &::com::alipay::dds::api::v1::_DatabaseAuthoritiesReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* Database::release_database_authorities() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.database_authorities)
  
  ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* temp = database_authorities_;
  database_authorities_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* Database::mutable_database_authorities() {
  
  if (database_authorities_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::DatabaseAuthoritiesReference>(GetArenaNoVirtual());
    database_authorities_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.database_authorities)
  return database_authorities_;
}
inline void Database::set_allocated_database_authorities(::com::alipay::dds::api::v1::DatabaseAuthoritiesReference* database_authorities) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete database_authorities_;
  }
  if (database_authorities) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      database_authorities = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, database_authorities, submessage_arena);
    }
    
  } else {
    
  }
  database_authorities_ = database_authorities;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.database_authorities)
}

// .com.alipay.dds.api.v1.DatabaseVariablesReference database_variables = 9;
inline bool Database::has_database_variables() const {
  return this != internal_default_instance() && database_variables_ != nullptr;
}
inline void Database::clear_database_variables() {
  if (GetArenaNoVirtual() == nullptr && database_variables_ != nullptr) {
    delete database_variables_;
  }
  database_variables_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::DatabaseVariablesReference& Database::database_variables() const {
  const ::com::alipay::dds::api::v1::DatabaseVariablesReference* p = database_variables_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.database_variables)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::DatabaseVariablesReference*>(
      &::com::alipay::dds::api::v1::_DatabaseVariablesReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::DatabaseVariablesReference* Database::release_database_variables() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.database_variables)
  
  ::com::alipay::dds::api::v1::DatabaseVariablesReference* temp = database_variables_;
  database_variables_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::DatabaseVariablesReference* Database::mutable_database_variables() {
  
  if (database_variables_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::DatabaseVariablesReference>(GetArenaNoVirtual());
    database_variables_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.database_variables)
  return database_variables_;
}
inline void Database::set_allocated_database_variables(::com::alipay::dds::api::v1::DatabaseVariablesReference* database_variables) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete database_variables_;
  }
  if (database_variables) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      database_variables = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, database_variables, submessage_arena);
    }
    
  } else {
    
  }
  database_variables_ = database_variables;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.database_variables)
}

// .com.alipay.dds.api.v1.DatabasePropertiesReference database_properties = 10;
inline bool Database::has_database_properties() const {
  return this != internal_default_instance() && database_properties_ != nullptr;
}
inline void Database::clear_database_properties() {
  if (GetArenaNoVirtual() == nullptr && database_properties_ != nullptr) {
    delete database_properties_;
  }
  database_properties_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::DatabasePropertiesReference& Database::database_properties() const {
  const ::com::alipay::dds::api::v1::DatabasePropertiesReference* p = database_properties_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.database_properties)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::DatabasePropertiesReference*>(
      &::com::alipay::dds::api::v1::_DatabasePropertiesReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::DatabasePropertiesReference* Database::release_database_properties() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.database_properties)
  
  ::com::alipay::dds::api::v1::DatabasePropertiesReference* temp = database_properties_;
  database_properties_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::DatabasePropertiesReference* Database::mutable_database_properties() {
  
  if (database_properties_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::DatabasePropertiesReference>(GetArenaNoVirtual());
    database_properties_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.database_properties)
  return database_properties_;
}
inline void Database::set_allocated_database_properties(::com::alipay::dds::api::v1::DatabasePropertiesReference* database_properties) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete database_properties_;
  }
  if (database_properties) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      database_properties = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, database_properties, submessage_arena);
    }
    
  } else {
    
  }
  database_properties_ = database_properties;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.database_properties)
}

// .com.alipay.dds.api.v1.ShardsTopologyReference shards_topology = 11;
inline bool Database::has_shards_topology() const {
  return this != internal_default_instance() && shards_topology_ != nullptr;
}
inline void Database::clear_shards_topology() {
  if (GetArenaNoVirtual() == nullptr && shards_topology_ != nullptr) {
    delete shards_topology_;
  }
  shards_topology_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::ShardsTopologyReference& Database::shards_topology() const {
  const ::com::alipay::dds::api::v1::ShardsTopologyReference* p = shards_topology_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.shards_topology)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::ShardsTopologyReference*>(
      &::com::alipay::dds::api::v1::_ShardsTopologyReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::ShardsTopologyReference* Database::release_shards_topology() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.shards_topology)
  
  ::com::alipay::dds::api::v1::ShardsTopologyReference* temp = shards_topology_;
  shards_topology_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::ShardsTopologyReference* Database::mutable_shards_topology() {
  
  if (shards_topology_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsTopologyReference>(GetArenaNoVirtual());
    shards_topology_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.shards_topology)
  return shards_topology_;
}
inline void Database::set_allocated_shards_topology(::com::alipay::dds::api::v1::ShardsTopologyReference* shards_topology) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete shards_topology_;
  }
  if (shards_topology) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      shards_topology = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, shards_topology, submessage_arena);
    }
    
  } else {
    
  }
  shards_topology_ = shards_topology;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.shards_topology)
}

// .com.alipay.dds.api.v1.ShardsRouterReference shards_router = 12;
inline bool Database::has_shards_router() const {
  return this != internal_default_instance() && shards_router_ != nullptr;
}
inline void Database::clear_shards_router() {
  if (GetArenaNoVirtual() == nullptr && shards_router_ != nullptr) {
    delete shards_router_;
  }
  shards_router_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::ShardsRouterReference& Database::shards_router() const {
  const ::com::alipay::dds::api::v1::ShardsRouterReference* p = shards_router_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.shards_router)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::ShardsRouterReference*>(
      &::com::alipay::dds::api::v1::_ShardsRouterReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::ShardsRouterReference* Database::release_shards_router() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.shards_router)
  
  ::com::alipay::dds::api::v1::ShardsRouterReference* temp = shards_router_;
  shards_router_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::ShardsRouterReference* Database::mutable_shards_router() {
  
  if (shards_router_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsRouterReference>(GetArenaNoVirtual());
    shards_router_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.shards_router)
  return shards_router_;
}
inline void Database::set_allocated_shards_router(::com::alipay::dds::api::v1::ShardsRouterReference* shards_router) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete shards_router_;
  }
  if (shards_router) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      shards_router = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, shards_router, submessage_arena);
    }
    
  } else {
    
  }
  shards_router_ = shards_router;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.shards_router)
}

// .com.alipay.dds.api.v1.ShardsDistributeReference shards_distribute = 13;
inline bool Database::has_shards_distribute() const {
  return this != internal_default_instance() && shards_distribute_ != nullptr;
}
inline void Database::clear_shards_distribute() {
  if (GetArenaNoVirtual() == nullptr && shards_distribute_ != nullptr) {
    delete shards_distribute_;
  }
  shards_distribute_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::ShardsDistributeReference& Database::shards_distribute() const {
  const ::com::alipay::dds::api::v1::ShardsDistributeReference* p = shards_distribute_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.shards_distribute)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::ShardsDistributeReference*>(
      &::com::alipay::dds::api::v1::_ShardsDistributeReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::ShardsDistributeReference* Database::release_shards_distribute() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.shards_distribute)
  
  ::com::alipay::dds::api::v1::ShardsDistributeReference* temp = shards_distribute_;
  shards_distribute_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::ShardsDistributeReference* Database::mutable_shards_distribute() {
  
  if (shards_distribute_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsDistributeReference>(GetArenaNoVirtual());
    shards_distribute_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.shards_distribute)
  return shards_distribute_;
}
inline void Database::set_allocated_shards_distribute(::com::alipay::dds::api::v1::ShardsDistributeReference* shards_distribute) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete shards_distribute_;
  }
  if (shards_distribute) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      shards_distribute = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, shards_distribute, submessage_arena);
    }
    
  } else {
    
  }
  shards_distribute_ = shards_distribute;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.shards_distribute)
}

// .com.alipay.dds.api.v1.ShardsConnectorReference shards_connector = 14;
inline bool Database::has_shards_connector() const {
  return this != internal_default_instance() && shards_connector_ != nullptr;
}
inline void Database::clear_shards_connector() {
  if (GetArenaNoVirtual() == nullptr && shards_connector_ != nullptr) {
    delete shards_connector_;
  }
  shards_connector_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::ShardsConnectorReference& Database::shards_connector() const {
  const ::com::alipay::dds::api::v1::ShardsConnectorReference* p = shards_connector_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.shards_connector)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::ShardsConnectorReference*>(
      &::com::alipay::dds::api::v1::_ShardsConnectorReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::ShardsConnectorReference* Database::release_shards_connector() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.shards_connector)
  
  ::com::alipay::dds::api::v1::ShardsConnectorReference* temp = shards_connector_;
  shards_connector_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::ShardsConnectorReference* Database::mutable_shards_connector() {
  
  if (shards_connector_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsConnectorReference>(GetArenaNoVirtual());
    shards_connector_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.shards_connector)
  return shards_connector_;
}
inline void Database::set_allocated_shards_connector(::com::alipay::dds::api::v1::ShardsConnectorReference* shards_connector) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete shards_connector_;
  }
  if (shards_connector) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      shards_connector = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, shards_connector, submessage_arena);
    }
    
  } else {
    
  }
  shards_connector_ = shards_connector;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.shards_connector)
}

// .com.alipay.dds.api.v1.ShardsPropertiesReference shards_properties = 15;
inline bool Database::has_shards_properties() const {
  return this != internal_default_instance() && shards_properties_ != nullptr;
}
inline void Database::clear_shards_properties() {
  if (GetArenaNoVirtual() == nullptr && shards_properties_ != nullptr) {
    delete shards_properties_;
  }
  shards_properties_ = nullptr;
}
inline const ::com::alipay::dds::api::v1::ShardsPropertiesReference& Database::shards_properties() const {
  const ::com::alipay::dds::api::v1::ShardsPropertiesReference* p = shards_properties_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.shards_properties)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::ShardsPropertiesReference*>(
      &::com::alipay::dds::api::v1::_ShardsPropertiesReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::ShardsPropertiesReference* Database::release_shards_properties() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.shards_properties)
  
  ::com::alipay::dds::api::v1::ShardsPropertiesReference* temp = shards_properties_;
  shards_properties_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::ShardsPropertiesReference* Database::mutable_shards_properties() {
  
  if (shards_properties_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::ShardsPropertiesReference>(GetArenaNoVirtual());
    shards_properties_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.shards_properties)
  return shards_properties_;
}
inline void Database::set_allocated_shards_properties(::com::alipay::dds::api::v1::ShardsPropertiesReference* shards_properties) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete shards_properties_;
  }
  if (shards_properties) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      shards_properties = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, shards_properties, submessage_arena);
    }
    
  } else {
    
  }
  shards_properties_ = shards_properties;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.shards_properties)
}

// .com.alipay.dds.api.v1.MarkedMultiReference extension = 16;
inline bool Database::has_extension() const {
  return this != internal_default_instance() && extension_ != nullptr;
}
inline const ::com::alipay::dds::api::v1::MarkedMultiReference& Database::extension() const {
  const ::com::alipay::dds::api::v1::MarkedMultiReference* p = extension_;
  // @@protoc_insertion_point(field_get:com.alipay.dds.api.v1.Database.extension)
  return p != nullptr ? *p : *reinterpret_cast<const ::com::alipay::dds::api::v1::MarkedMultiReference*>(
      &::com::alipay::dds::api::v1::_MarkedMultiReference_default_instance_);
}
inline ::com::alipay::dds::api::v1::MarkedMultiReference* Database::release_extension() {
  // @@protoc_insertion_point(field_release:com.alipay.dds.api.v1.Database.extension)
  
  ::com::alipay::dds::api::v1::MarkedMultiReference* temp = extension_;
  extension_ = nullptr;
  return temp;
}
inline ::com::alipay::dds::api::v1::MarkedMultiReference* Database::mutable_extension() {
  
  if (extension_ == nullptr) {
    auto* p = CreateMaybeMessage<::com::alipay::dds::api::v1::MarkedMultiReference>(GetArenaNoVirtual());
    extension_ = p;
  }
  // @@protoc_insertion_point(field_mutable:com.alipay.dds.api.v1.Database.extension)
  return extension_;
}
inline void Database::set_allocated_extension(::com::alipay::dds::api::v1::MarkedMultiReference* extension) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::google::protobuf::MessageLite*>(extension_);
  }
  if (extension) {
    ::google::protobuf::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      extension = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, extension, submessage_arena);
    }
    
  } else {
    
  }
  extension_ = extension;
  // @@protoc_insertion_point(field_set_allocated:com.alipay.dds.api.v1.Database.extension)
}

#ifdef __GNUC__
  #pragma GCC diagnostic pop
#endif  // __GNUC__
// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------


// @@protoc_insertion_point(namespace_scope)

}  // namespace v1
}  // namespace api
}  // namespace dds
}  // namespace alipay
}  // namespace com

// @@protoc_insertion_point(global_scope)

#include <google/protobuf/port_undef.inc>
#endif  // PROTOBUF_INCLUDED_database_2eproto
