24#ifndef DD__ABSTRACT_TABLE_INCLUDED
25#define DD__ABSTRACT_TABLE_INCLUDED
36class Abstract_table_impl;
41class Se_private_id_key;
Definition: abstract_table_impl.h:58
Abstract base class for tables and views.
Definition: abstract_table.h:69
virtual const Properties & options() const =0
virtual Column_collection * columns()=0
virtual uint mysql_version_id() const =0
Abstract_table_impl Impl
Definition: abstract_table.h:71
virtual Column * add_column()=0
virtual bool set_options(const Properties &options)=0
Collection< Column * > Column_collection
Definition: abstract_table.h:77
virtual Abstract_table * clone_dropped_object_placeholder() const =0
Allocate a new object which can serve as a placeholder for the original object in the Dictionary_clie...
virtual bool update_name_key(Name_key *key) const
Definition: abstract_table.h:86
Se_private_id_key Aux_key
Definition: abstract_table.h:76
virtual bool update_id_key(Id_key *key) const
Definition: abstract_table.h:80
virtual void set_created(ulonglong created)=0
virtual bool set_options(const String_type &options_raw)=0
~Abstract_table() override=default
virtual void set_schema_id(Object_id schema_id)=0
virtual ulonglong created(bool convert_time) const =0
virtual enum_table_type type() const =0
virtual const Column * get_column(const String_type &name) const =0
Primary_id_key Id_key
Definition: abstract_table.h:74
virtual ulonglong last_altered(bool convert_time) const =0
Item_name_key Name_key
Definition: abstract_table.h:75
tables::Tables DD_table
Definition: abstract_table.h:73
virtual Abstract_table * clone() const =0
Allocate a new object graph and invoke the copy constructor for each object.
virtual enum_hidden_type hidden() const =0
virtual bool update_aux_key(Aux_key *) const
Definition: abstract_table.h:93
Abstract_table Cache_partition
Definition: abstract_table.h:72
virtual const Column_collection & columns() const =0
virtual bool drop_column(const String_type &name)=0
virtual Object_id schema_id() const =0
enum_hidden_type
Enumeration type which indicates whether the table is hidden, and if yes then which type of hidden ta...
Definition: abstract_table.h:103
@ HT_HIDDEN_SYSTEM
Definition: abstract_table.h:107
@ HT_HIDDEN_SE
Definition: abstract_table.h:112
@ HT_HIDDEN_DDL
Definition: abstract_table.h:116
@ HT_VISIBLE
Definition: abstract_table.h:105
virtual void set_hidden(enum_hidden_type hidden)=0
virtual Properties & options()=0
virtual void set_last_altered(ulonglong last_altered)=0
Definition: collection.h:44
Base class for dictionary objects which has single column integer primary key.
Definition: entity_object.h:48
virtual const String_type & name() const =0
Definition: object_keys.h:166
Definition: object_keys.h:77
The Properties class defines an interface for storing key=value pairs, where both key and value may b...
Definition: properties.h:74
Definition: object_keys.h:219
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:56
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
unsigned long long Object_id
Definition: object_id.h:31
Char_string_template< String_type_allocator > String_type
Definition: string_type.h:51
enum_table_type
Definition: abstract_table.h:53
Definition: options.cc:57
required string key
Definition: replication_asynchronous_connection_failover.proto:60