MySQL 8.4.0
Source Code Documentation
dd::Partition_impl Class Reference

#include <partition_impl.h>

Inheritance diagram for dd::Partition_impl:
[legend]

Public Member Functions

 Partition_impl ()
 
 Partition_impl (Table_impl *table)
 
 Partition_impl (Table_impl *parent, Partition_impl *partition)
 
 Partition_impl (const Partition_impl &src, Table_impl *parent)
 
 Partition_impl (const Partition_impl &src, Partition_impl *partition)
 
 ~Partition_impl () override
 
const Object_tableobject_table () const override
 
bool validate () const override
 
bool restore_children (Open_dictionary_tables_ctx *otx) override
 
bool store_children (Open_dictionary_tables_ctx *otx) override
 
bool drop_children (Open_dictionary_tables_ctx *otx) const override
 
bool restore_attributes (const Raw_record &r) override
 
bool store_attributes (Raw_record *r) override
 
void serialize (Sdi_wcontext *wctx, Sdi_writer *w) const override
 Converts *this into json. More...
 
bool deserialize (Sdi_rcontext *rctx, const RJ_Value &val) override
 Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provided. More...
 
void debug_print (String_type &outb) const override
 
void set_ordinal_position (uint)
 
virtual uint ordinal_position () const
 
const Tabletable () const override
 
Tabletable () override
 
const Table_impltable_impl () const
 
Table_impltable_impl ()
 
virtual const Partitionparent_partition () const
 
virtual Partitionparent_partition ()
 
Object_id parent_partition_id () const override
 
void set_parent_partition_id (Object_id parent_partition_id) override
 
uint number () const override
 
void set_number (uint number) override
 
const String_typedescription_utf8 () const override
 
void set_description_utf8 (const String_type &description_utf8) override
 
const String_typeengine () const override
 
void set_engine (const String_type &engine) override
 
const String_typecomment () const override
 
void set_comment (const String_type &comment) override
 
const Propertiesoptions () const override
 
Propertiesoptions () override
 
bool set_options (const Properties &options) override
 
bool set_options (const String_type &options_raw) override
 
const Propertiesse_private_data () const override
 
Propertiesse_private_data () override
 
bool set_se_private_data (const String_type &se_private_data_raw) override
 
bool set_se_private_data (const Properties &se_private_data) override
 
Object_id se_private_id () const override
 
void set_se_private_id (Object_id se_private_id) override
 
Object_id tablespace_id () const override
 
void set_tablespace_id (Object_id tablespace_id) override
 
Partition_valueadd_value () override
 
const Partition_valuesvalues () const override
 
Partition_indexadd_index (Index *idx) override
 
const Partition_indexesindexes () const override
 
Partition_indexesindexes () override
 
Partitionadd_subpartition () override
 Add a subpartition to a parent partition. More...
 
const Table::Partition_collectionsubpartitions () const override
 Return reference to const collection of sub partitions. More...
 
Table::Partition_collectionsubpartitions () override
 Return non-const point to collection of sub partitions. More...
 
const Partitionparent () const override
 
void set_parent (const Partition *parent) override
 
Entity_object_implimpl () override
 
const Entity_object_implimpl () const override
 
Object_id id () const override
 The unique dictionary object id. More...
 
bool is_persistent () const override
 Is dictionary object persistent in dictionary tables ? More...
 
const String_typename () const override
 
void set_name (const String_type &name) override
 
- Public Member Functions inherited from dd::Entity_object_impl
 Entity_object_impl ()
 
void set_id (Object_id id)
 
Object_keycreate_primary_key () const override
 
bool has_new_primary_key () const override
 Indicates that object is guaranteed to have primary key value which doesn't exist in database (e.g. More...
 
- Public Member Functions inherited from dd::Weak_object
 Weak_object ()=default
 
 Weak_object (const Weak_object &)=default
 
virtual ~Weak_object ()=default
 
- Public Member Functions inherited from dd::Weak_object_impl_< use_pfs >
 Weak_object_impl_ ()=default
 
 ~Weak_object_impl_ () override=default
 
void * operator new (size_t size, const std::nothrow_t &nt) noexcept
 
void operator delete (void *ptr, const std::nothrow_t &nt) noexcept
 
void * operator new (size_t size) noexcept
 
void operator delete (void *ptr) noexcept
 
virtual bool store (Open_dictionary_tables_ctx *otx)
 Store the DD object into DD table. More...
 
bool drop (Open_dictionary_tables_ctx *otx) const
 Drop the DD object from DD table. More...
 
- Public Member Functions inherited from dd::Partition
 ~Partition () override=default
 

Static Public Member Functions

static void register_tables (Open_dictionary_tables_ctx *otx)
 
static Partition_implrestore_item (Table_impl *table)
 
static Partition_implrestore_item (Partition_impl *part)
 
static Partition_implclone (const Partition_impl &other, Table_impl *table)
 
static Partition_implclone (const Partition_impl &other, Partition_impl *part)
 

Private Attributes

Object_id m_parent_partition_id
 
uint m_number
 
Object_id m_se_private_id
 
String_type m_description_utf8
 
String_type m_engine
 
String_type m_comment
 
Properties_impl m_options
 
Properties_impl m_se_private_data
 
Table_implm_table
 
const Partitionm_parent
 
Partition_values m_values
 
Partition_indexes m_indexes
 
Table::Partition_collection m_subpartitions
 
Object_id m_tablespace_id
 

Additional Inherited Members

- Public Types inherited from dd::Partition
typedef Collection< Partition_index * > Partition_indexes
 
typedef Collection< Partition_value * > Partition_values
 
typedef Partition_impl Impl
 
typedef tables::Table_partitions DD_table
 
- Protected Member Functions inherited from dd::Entity_object_impl
void set_primary_key_value (const Raw_new_record &r) override
 
void fix_has_new_primary_key () override
 
void restore_id (const Raw_record &r, int field_idx)
 
void restore_name (const Raw_record &r, int field_idx)
 
bool store_id (Raw_record *r, int field_idx)
 
bool store_name (Raw_record *r, int field_idx)
 
bool store_name (Raw_record *r, int field_idx, bool is_null)
 
void serialize (Sdi_wcontext *wctx, Sdi_writer *w) const
 
bool deserialize (Sdi_rcontext *rctx, const RJ_Value &val)
 
 Entity_object_impl (const Entity_object_impl &src)
 
- Protected Member Functions inherited from dd::Weak_object_impl_< use_pfs >
bool check_parent_consistency (Entity_object_impl *parent, Object_id parent_id) const
 

Constructor & Destructor Documentation

◆ Partition_impl() [1/5]

dd::Partition_impl::Partition_impl ( )

◆ Partition_impl() [2/5]

dd::Partition_impl::Partition_impl ( Table_impl table)

◆ Partition_impl() [3/5]

dd::Partition_impl::Partition_impl ( Table_impl parent,
Partition_impl partition 
)

◆ Partition_impl() [4/5]

dd::Partition_impl::Partition_impl ( const Partition_impl src,
Table_impl parent 
)

◆ Partition_impl() [5/5]

dd::Partition_impl::Partition_impl ( const Partition_impl src,
Partition_impl partition 
)

◆ ~Partition_impl()

dd::Partition_impl::~Partition_impl ( )
overridedefault

Member Function Documentation

◆ add_index()

Partition_index * dd::Partition_impl::add_index ( Index idx)
overridevirtual

Implements dd::Partition.

◆ add_subpartition()

Partition * dd::Partition_impl::add_subpartition ( )
overridevirtual

Add a subpartition to a parent partition.

Support just one level of sub partitions.

Implements dd::Partition.

◆ add_value()

Partition_value * dd::Partition_impl::add_value ( )
overridevirtual

Implements dd::Partition.

◆ clone() [1/2]

static Partition_impl * dd::Partition_impl::clone ( const Partition_impl other,
Partition_impl part 
)
inlinestatic

◆ clone() [2/2]

static Partition_impl * dd::Partition_impl::clone ( const Partition_impl other,
Table_impl table 
)
inlinestatic

◆ comment()

const String_type & dd::Partition_impl::comment ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ debug_print()

void dd::Partition_impl::debug_print ( String_type outb) const
overridevirtual

Implements dd::Weak_object.

◆ description_utf8()

const String_type & dd::Partition_impl::description_utf8 ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ deserialize()

bool dd::Partition_impl::deserialize ( Sdi_rcontext rctx,
const RJ_Value val 
)
overridevirtual

Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provided.

Cross-references encountered within this object are tracked in sdictx, so that they can be updated when the entire object graph has been established.

Parameters
rctxstores book-keeping information for the deserialization process
valsubobject of rapidjson DOM containing json representation of this object

Implements dd::Partition.

◆ drop_children()

bool dd::Partition_impl::drop_children ( Open_dictionary_tables_ctx otx) const
overridevirtual

Reimplemented from dd::Weak_object_impl_< use_pfs >.

◆ engine()

const String_type & dd::Partition_impl::engine ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ id()

Object_id dd::Partition_impl::id ( ) const
inlineoverridevirtual

The unique dictionary object id.

Reimplemented from dd::Entity_object_impl.

◆ impl() [1/2]

const Entity_object_impl * dd::Partition_impl::impl ( ) const
inlineoverridevirtual

Reimplemented from dd::Entity_object_impl.

◆ impl() [2/2]

Entity_object_impl * dd::Partition_impl::impl ( )
inlineoverridevirtual

Reimplemented from dd::Entity_object_impl.

◆ indexes() [1/2]

const Partition_indexes & dd::Partition_impl::indexes ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ indexes() [2/2]

Partition_indexes * dd::Partition_impl::indexes ( )
inlineoverridevirtual

Implements dd::Partition.

◆ is_persistent()

bool dd::Partition_impl::is_persistent ( ) const
inlineoverridevirtual

Is dictionary object persistent in dictionary tables ?

Reimplemented from dd::Entity_object_impl.

◆ name()

const String_type & dd::Partition_impl::name ( ) const
inlineoverridevirtual

Reimplemented from dd::Entity_object_impl.

◆ number()

uint dd::Partition_impl::number ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ object_table()

const Object_table & dd::Partition_impl::object_table ( ) const
overridevirtual

◆ options() [1/2]

const Properties & dd::Partition_impl::options ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ options() [2/2]

Properties & dd::Partition_impl::options ( )
inlineoverridevirtual

Implements dd::Partition.

◆ ordinal_position()

virtual uint dd::Partition_impl::ordinal_position ( ) const
inlinevirtual

◆ parent()

const Partition * dd::Partition_impl::parent ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ parent_partition() [1/2]

virtual Partition * dd::Partition_impl::parent_partition ( )
inlinevirtual

◆ parent_partition() [2/2]

virtual const Partition * dd::Partition_impl::parent_partition ( ) const
inlinevirtual

◆ parent_partition_id()

Object_id dd::Partition_impl::parent_partition_id ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ register_tables()

void dd::Partition_impl::register_tables ( Open_dictionary_tables_ctx otx)
static

◆ restore_attributes()

bool dd::Partition_impl::restore_attributes ( const Raw_record r)
overridevirtual

◆ restore_children()

bool dd::Partition_impl::restore_children ( Open_dictionary_tables_ctx otx)
overridevirtual

Reimplemented from dd::Weak_object_impl_< use_pfs >.

◆ restore_item() [1/2]

static Partition_impl * dd::Partition_impl::restore_item ( Partition_impl part)
inlinestatic

◆ restore_item() [2/2]

static Partition_impl * dd::Partition_impl::restore_item ( Table_impl table)
inlinestatic

◆ se_private_data() [1/2]

const Properties & dd::Partition_impl::se_private_data ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ se_private_data() [2/2]

Properties & dd::Partition_impl::se_private_data ( )
inlineoverridevirtual

Implements dd::Partition.

◆ se_private_id()

Object_id dd::Partition_impl::se_private_id ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ serialize()

void dd::Partition_impl::serialize ( Sdi_wcontext wctx,
Sdi_writer w 
) const
overridevirtual

Converts *this into json.

Converts all member variables that are to be included in the sdi into json by transforming them appropriately and passing them to the rapidjson writer provided.

Parameters
wctxopaque context for data needed by serialization
wrapidjson writer which will perform conversion to json

Implements dd::Partition.

◆ set_comment()

void dd::Partition_impl::set_comment ( const String_type comment)
inlineoverridevirtual

Implements dd::Partition.

◆ set_description_utf8()

void dd::Partition_impl::set_description_utf8 ( const String_type description_utf8)
inlineoverridevirtual

Implements dd::Partition.

◆ set_engine()

void dd::Partition_impl::set_engine ( const String_type engine)
inlineoverridevirtual

Implements dd::Partition.

◆ set_name()

void dd::Partition_impl::set_name ( const String_type name)
inlineoverridevirtual

Reimplemented from dd::Entity_object_impl.

◆ set_number()

void dd::Partition_impl::set_number ( uint  number)
inlineoverridevirtual

Implements dd::Partition.

◆ set_options() [1/2]

bool dd::Partition_impl::set_options ( const Properties options)
inlineoverridevirtual

Implements dd::Partition.

◆ set_options() [2/2]

bool dd::Partition_impl::set_options ( const String_type options_raw)
inlineoverridevirtual

Implements dd::Partition.

◆ set_ordinal_position()

void dd::Partition_impl::set_ordinal_position ( uint  )
inline

◆ set_parent()

void dd::Partition_impl::set_parent ( const Partition parent)
inlineoverridevirtual

Implements dd::Partition.

◆ set_parent_partition_id()

void dd::Partition_impl::set_parent_partition_id ( Object_id  parent_partition_id)
inlineoverridevirtual

Implements dd::Partition.

◆ set_se_private_data() [1/2]

bool dd::Partition_impl::set_se_private_data ( const Properties se_private_data)
inlineoverridevirtual

Implements dd::Partition.

◆ set_se_private_data() [2/2]

bool dd::Partition_impl::set_se_private_data ( const String_type se_private_data_raw)
inlineoverridevirtual

Implements dd::Partition.

◆ set_se_private_id()

void dd::Partition_impl::set_se_private_id ( Object_id  se_private_id)
inlineoverridevirtual

Implements dd::Partition.

◆ set_tablespace_id()

void dd::Partition_impl::set_tablespace_id ( Object_id  tablespace_id)
inlineoverridevirtual

Implements dd::Partition.

◆ store_attributes()

bool dd::Partition_impl::store_attributes ( Raw_record r)
overridevirtual

◆ store_children()

bool dd::Partition_impl::store_children ( Open_dictionary_tables_ctx otx)
overridevirtual

Reimplemented from dd::Weak_object_impl_< use_pfs >.

◆ subpartitions() [1/2]

const Table::Partition_collection & dd::Partition_impl::subpartitions ( ) const
inlineoverridevirtual

Return reference to const collection of sub partitions.

Implements dd::Partition.

◆ subpartitions() [2/2]

Table::Partition_collection * dd::Partition_impl::subpartitions ( )
inlineoverridevirtual

Return non-const point to collection of sub partitions.

Implements dd::Partition.

◆ table() [1/2]

const Table & dd::Partition_impl::table ( ) const
overridevirtual

Implements dd::Partition.

◆ table() [2/2]

Table & dd::Partition_impl::table ( )
overridevirtual

Implements dd::Partition.

◆ table_impl() [1/2]

Table_impl & dd::Partition_impl::table_impl ( )
inline

◆ table_impl() [2/2]

const Table_impl & dd::Partition_impl::table_impl ( ) const
inline

◆ tablespace_id()

Object_id dd::Partition_impl::tablespace_id ( ) const
inlineoverridevirtual

Implements dd::Partition.

◆ validate()

bool dd::Partition_impl::validate ( ) const
overridevirtual

◆ values()

const Partition_values & dd::Partition_impl::values ( ) const
inlineoverridevirtual

Implements dd::Partition.

Member Data Documentation

◆ m_comment

String_type dd::Partition_impl::m_comment
private

◆ m_description_utf8

String_type dd::Partition_impl::m_description_utf8
private

◆ m_engine

String_type dd::Partition_impl::m_engine
private

◆ m_indexes

Partition_indexes dd::Partition_impl::m_indexes
private

◆ m_number

uint dd::Partition_impl::m_number
private

◆ m_options

Properties_impl dd::Partition_impl::m_options
private

◆ m_parent

const Partition* dd::Partition_impl::m_parent
private

◆ m_parent_partition_id

Object_id dd::Partition_impl::m_parent_partition_id
private

◆ m_se_private_data

Properties_impl dd::Partition_impl::m_se_private_data
private

◆ m_se_private_id

Object_id dd::Partition_impl::m_se_private_id
private

◆ m_subpartitions

Table::Partition_collection dd::Partition_impl::m_subpartitions
private

◆ m_table

Table_impl* dd::Partition_impl::m_table
private

◆ m_tablespace_id

Object_id dd::Partition_impl::m_tablespace_id
private

◆ m_values

Partition_values dd::Partition_impl::m_values
private

The documentation for this class was generated from the following files: