24#ifndef DD__PARTITION_INCLUDED
25#define DD__PARTITION_INCLUDED
46class Table_partitions;
Definition: collection.h:44
Base class for dictionary objects which has single column integer primary key.
Definition: entity_object.h:48
Definition: partition_impl.h:60
Definition: partition_index.h:47
Definition: partition_value.h:45
Definition: partition.h:51
~Partition() override=default
virtual Properties & se_private_data()=0
virtual Partition * add_subpartition()=0
Add a subpartition to a parent partition.
virtual void set_se_private_id(Object_id se_private_id)=0
virtual void set_comment(const String_type &comment)=0
virtual void set_number(uint number)=0
virtual bool set_options(const String_type &options_raw)=0
virtual Table & table()=0
virtual Partition_index * add_index(Index *idx)=0
virtual bool set_options(const Properties &options)=0
virtual Object_id parent_partition_id() const =0
tables::Table_partitions DD_table
Definition: partition.h:56
virtual uint number() const =0
virtual bool deserialize(Sdi_rcontext *rctx, const RJ_Value &val)=0
Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provide...
virtual const Partition_values & values() const =0
virtual void serialize(Sdi_wcontext *wctx, Sdi_writer *w) const =0
Converts *this into json.
Collection< Partition_value * > Partition_values
Definition: partition.h:54
virtual Object_id se_private_id() const =0
virtual const String_type & description_utf8() const =0
virtual Partition_value * add_value()=0
virtual bool set_se_private_data(const String_type &se_private_data_raw)=0
Collection< Partition_index * > Partition_indexes
Definition: partition.h:53
virtual const Properties & options() const =0
virtual void set_parent_partition_id(Object_id parent_partition_id)=0
virtual void set_description_utf8(const String_type &description_utf8)=0
virtual Partition_indexes * indexes()=0
virtual const Table & table() const =0
virtual bool set_se_private_data(const Properties &se_private_data)=0
virtual Object_id tablespace_id() const =0
virtual const Table::Partition_collection & subpartitions() const =0
Return reference to const collection of sub partitions.
virtual Table::Partition_collection * subpartitions()=0
Return non-const point to collection of sub partitions.
virtual void set_engine(const String_type &engine)=0
virtual void set_parent(const Partition *parent)=0
virtual const String_type & engine() const =0
virtual Properties & options()=0
virtual const Properties & se_private_data() const =0
virtual const Partition * parent() const =0
Partition_impl Impl
Definition: partition.h:55
virtual const String_type & comment() const =0
virtual const Partition_indexes & indexes() const =0
virtual void set_tablespace_id(Object_id tablespace_id)=0
The Properties class defines an interface for storing key=value pairs, where both key and value may b...
Definition: properties.h:74
Opaque context which keeps reusable resoureces needed during deserialization.
Definition: sdi.cc:231
Opaque context which keeps reusable resources needed during serialization.
Definition: sdi.cc:129
Definition: table_partitions.h:42
Some integer typedefs for easier portability.
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
RJ_Writer Sdi_writer
Alias for the rapidjson Writer type to use in serialization.
Definition: sdi_fwd.h:64
unsigned long long Object_id
Definition: object_id.h:31
rapidjson::GenericValue< RJ_Encoding, RJ_Allocator > RJ_Value
Definition: sdi_fwd.h:49
Char_string_template< String_type_allocator > String_type
Definition: string_type.h:51
Definition: options.cc:49
This header provides Rapidjson Type Aliases.
unsigned int uint
Definition: uca9-dump.cc:75