Ydb.Table.CreateTableRequest */ class CreateTableRequest extends \Google\Protobuf\Internal\Message { /** * Session identifier * * Generated from protobuf field string session_id = 1; */ protected $session_id = ''; /** * Full path * * Generated from protobuf field string path = 2; */ protected $path = ''; /** * Columns (name, type) * * Generated from protobuf field repeated .Ydb.Table.ColumnMeta columns = 3; */ private $columns; /** * List of columns used as primary key * * Generated from protobuf field repeated string primary_key = 4; */ private $primary_key; /** * Table profile * * Generated from protobuf field .Ydb.Table.TableProfile profile = 5; */ protected $profile = null; /** * Generated from protobuf field .Ydb.Operations.OperationParams operation_params = 6; */ protected $operation_params = null; /** * List of secondary indexes * * Generated from protobuf field repeated .Ydb.Table.TableIndex indexes = 7; */ private $indexes; /** * Table rows time to live settings * * Generated from protobuf field .Ydb.Table.TtlSettings ttl_settings = 8; */ protected $ttl_settings = null; /** * Storage settings for table * * Generated from protobuf field .Ydb.Table.StorageSettings storage_settings = 9; */ protected $storage_settings = null; /** * Column families * * Generated from protobuf field repeated .Ydb.Table.ColumnFamily column_families = 10; */ private $column_families; /** * Attributes. Total size is limited to 10 KB. * * Generated from protobuf field map attributes = 11 [(.Ydb.length) = { */ private $attributes; /** * Predefined named set of settings for table compaction ["default", "small_table", "log_table"]. * * Generated from protobuf field string compaction_policy = 12; */ protected $compaction_policy = ''; /** * Partitioning settings for table * * Generated from protobuf field .Ydb.Table.PartitioningSettings partitioning_settings = 15; */ protected $partitioning_settings = null; /** * Bloom filter by key * * Generated from protobuf field .Ydb.FeatureFlag.Status key_bloom_filter = 16; */ protected $key_bloom_filter = 0; /** * Read replicas settings for table * * Generated from protobuf field .Ydb.Table.ReadReplicasSettings read_replicas_settings = 17; */ protected $read_replicas_settings = null; protected $partitions; /** * Constructor. * * @param array $data { * Optional. Data for populating the Message object. * * @type string $session_id * Session identifier * @type string $path * Full path * @type array<\Ydb\Table\ColumnMeta>|\Google\Protobuf\Internal\RepeatedField $columns * Columns (name, type) * @type array|\Google\Protobuf\Internal\RepeatedField $primary_key * List of columns used as primary key * @type \Ydb\Table\TableProfile $profile * Table profile * @type \Ydb\Operations\OperationParams $operation_params * @type array<\Ydb\Table\TableIndex>|\Google\Protobuf\Internal\RepeatedField $indexes * List of secondary indexes * @type \Ydb\Table\TtlSettings $ttl_settings * Table rows time to live settings * @type \Ydb\Table\StorageSettings $storage_settings * Storage settings for table * @type array<\Ydb\Table\ColumnFamily>|\Google\Protobuf\Internal\RepeatedField $column_families * Column families * @type array|\Google\Protobuf\Internal\MapField $attributes * Attributes. Total size is limited to 10 KB. * @type string $compaction_policy * Predefined named set of settings for table compaction ["default", "small_table", "log_table"]. * @type int|string $uniform_partitions * Enable uniform partitioning using given partitions count. * The first components of primary key must have Uint32/Uint64 type. * @type \Ydb\Table\ExplicitPartitions $partition_at_keys * Explicitly specify key values which are used as borders for created partitions. * @type \Ydb\Table\PartitioningSettings $partitioning_settings * Partitioning settings for table * @type int $key_bloom_filter * Bloom filter by key * @type \Ydb\Table\ReadReplicasSettings $read_replicas_settings * Read replicas settings for table * } */ public function __construct($data = NULL) { \GPBMetadata\Protos\YdbTable::initOnce(); parent::__construct($data); } /** * Session identifier * * Generated from protobuf field string session_id = 1; * @return string */ public function getSessionId() { return $this->session_id; } /** * Session identifier * * Generated from protobuf field string session_id = 1; * @param string $var * @return $this */ public function setSessionId($var) { GPBUtil::checkString($var, True); $this->session_id = $var; return $this; } /** * Full path * * Generated from protobuf field string path = 2; * @return string */ public function getPath() { return $this->path; } /** * Full path * * Generated from protobuf field string path = 2; * @param string $var * @return $this */ public function setPath($var) { GPBUtil::checkString($var, True); $this->path = $var; return $this; } /** * Columns (name, type) * * Generated from protobuf field repeated .Ydb.Table.ColumnMeta columns = 3; * @return \Google\Protobuf\Internal\RepeatedField */ public function getColumns() { return $this->columns; } /** * Columns (name, type) * * Generated from protobuf field repeated .Ydb.Table.ColumnMeta columns = 3; * @param array<\Ydb\Table\ColumnMeta>|\Google\Protobuf\Internal\RepeatedField $var * @return $this */ public function setColumns($var) { $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Ydb\Table\ColumnMeta::class); $this->columns = $arr; return $this; } /** * List of columns used as primary key * * Generated from protobuf field repeated string primary_key = 4; * @return \Google\Protobuf\Internal\RepeatedField */ public function getPrimaryKey() { return $this->primary_key; } /** * List of columns used as primary key * * Generated from protobuf field repeated string primary_key = 4; * @param array|\Google\Protobuf\Internal\RepeatedField $var * @return $this */ public function setPrimaryKey($var) { $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING); $this->primary_key = $arr; return $this; } /** * Table profile * * Generated from protobuf field .Ydb.Table.TableProfile profile = 5; * @return \Ydb\Table\TableProfile|null */ public function getProfile() { return $this->profile; } public function hasProfile() { return isset($this->profile); } public function clearProfile() { unset($this->profile); } /** * Table profile * * Generated from protobuf field .Ydb.Table.TableProfile profile = 5; * @param \Ydb\Table\TableProfile $var * @return $this */ public function setProfile($var) { GPBUtil::checkMessage($var, \Ydb\Table\TableProfile::class); $this->profile = $var; return $this; } /** * Generated from protobuf field .Ydb.Operations.OperationParams operation_params = 6; * @return \Ydb\Operations\OperationParams|null */ public function getOperationParams() { return $this->operation_params; } public function hasOperationParams() { return isset($this->operation_params); } public function clearOperationParams() { unset($this->operation_params); } /** * Generated from protobuf field .Ydb.Operations.OperationParams operation_params = 6; * @param \Ydb\Operations\OperationParams $var * @return $this */ public function setOperationParams($var) { GPBUtil::checkMessage($var, \Ydb\Operations\OperationParams::class); $this->operation_params = $var; return $this; } /** * List of secondary indexes * * Generated from protobuf field repeated .Ydb.Table.TableIndex indexes = 7; * @return \Google\Protobuf\Internal\RepeatedField */ public function getIndexes() { return $this->indexes; } /** * List of secondary indexes * * Generated from protobuf field repeated .Ydb.Table.TableIndex indexes = 7; * @param array<\Ydb\Table\TableIndex>|\Google\Protobuf\Internal\RepeatedField $var * @return $this */ public function setIndexes($var) { $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Ydb\Table\TableIndex::class); $this->indexes = $arr; return $this; } /** * Table rows time to live settings * * Generated from protobuf field .Ydb.Table.TtlSettings ttl_settings = 8; * @return \Ydb\Table\TtlSettings|null */ public function getTtlSettings() { return $this->ttl_settings; } public function hasTtlSettings() { return isset($this->ttl_settings); } public function clearTtlSettings() { unset($this->ttl_settings); } /** * Table rows time to live settings * * Generated from protobuf field .Ydb.Table.TtlSettings ttl_settings = 8; * @param \Ydb\Table\TtlSettings $var * @return $this */ public function setTtlSettings($var) { GPBUtil::checkMessage($var, \Ydb\Table\TtlSettings::class); $this->ttl_settings = $var; return $this; } /** * Storage settings for table * * Generated from protobuf field .Ydb.Table.StorageSettings storage_settings = 9; * @return \Ydb\Table\StorageSettings|null */ public function getStorageSettings() { return $this->storage_settings; } public function hasStorageSettings() { return isset($this->storage_settings); } public function clearStorageSettings() { unset($this->storage_settings); } /** * Storage settings for table * * Generated from protobuf field .Ydb.Table.StorageSettings storage_settings = 9; * @param \Ydb\Table\StorageSettings $var * @return $this */ public function setStorageSettings($var) { GPBUtil::checkMessage($var, \Ydb\Table\StorageSettings::class); $this->storage_settings = $var; return $this; } /** * Column families * * Generated from protobuf field repeated .Ydb.Table.ColumnFamily column_families = 10; * @return \Google\Protobuf\Internal\RepeatedField */ public function getColumnFamilies() { return $this->column_families; } /** * Column families * * Generated from protobuf field repeated .Ydb.Table.ColumnFamily column_families = 10; * @param array<\Ydb\Table\ColumnFamily>|\Google\Protobuf\Internal\RepeatedField $var * @return $this */ public function setColumnFamilies($var) { $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Ydb\Table\ColumnFamily::class); $this->column_families = $arr; return $this; } /** * Attributes. Total size is limited to 10 KB. * * Generated from protobuf field map attributes = 11 [(.Ydb.length) = { * @return \Google\Protobuf\Internal\MapField */ public function getAttributes() { return $this->attributes; } /** * Attributes. Total size is limited to 10 KB. * * Generated from protobuf field map attributes = 11 [(.Ydb.length) = { * @param array|\Google\Protobuf\Internal\MapField $var * @return $this */ public function setAttributes($var) { $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING); $this->attributes = $arr; return $this; } /** * Predefined named set of settings for table compaction ["default", "small_table", "log_table"]. * * Generated from protobuf field string compaction_policy = 12; * @return string */ public function getCompactionPolicy() { return $this->compaction_policy; } /** * Predefined named set of settings for table compaction ["default", "small_table", "log_table"]. * * Generated from protobuf field string compaction_policy = 12; * @param string $var * @return $this */ public function setCompactionPolicy($var) { GPBUtil::checkString($var, True); $this->compaction_policy = $var; return $this; } /** * Enable uniform partitioning using given partitions count. * The first components of primary key must have Uint32/Uint64 type. * * Generated from protobuf field uint64 uniform_partitions = 13; * @return int|string */ public function getUniformPartitions() { return $this->readOneof(13); } public function hasUniformPartitions() { return $this->hasOneof(13); } /** * Enable uniform partitioning using given partitions count. * The first components of primary key must have Uint32/Uint64 type. * * Generated from protobuf field uint64 uniform_partitions = 13; * @param int|string $var * @return $this */ public function setUniformPartitions($var) { GPBUtil::checkUint64($var); $this->writeOneof(13, $var); return $this; } /** * Explicitly specify key values which are used as borders for created partitions. * * Generated from protobuf field .Ydb.Table.ExplicitPartitions partition_at_keys = 14; * @return \Ydb\Table\ExplicitPartitions|null */ public function getPartitionAtKeys() { return $this->readOneof(14); } public function hasPartitionAtKeys() { return $this->hasOneof(14); } /** * Explicitly specify key values which are used as borders for created partitions. * * Generated from protobuf field .Ydb.Table.ExplicitPartitions partition_at_keys = 14; * @param \Ydb\Table\ExplicitPartitions $var * @return $this */ public function setPartitionAtKeys($var) { GPBUtil::checkMessage($var, \Ydb\Table\ExplicitPartitions::class); $this->writeOneof(14, $var); return $this; } /** * Partitioning settings for table * * Generated from protobuf field .Ydb.Table.PartitioningSettings partitioning_settings = 15; * @return \Ydb\Table\PartitioningSettings|null */ public function getPartitioningSettings() { return $this->partitioning_settings; } public function hasPartitioningSettings() { return isset($this->partitioning_settings); } public function clearPartitioningSettings() { unset($this->partitioning_settings); } /** * Partitioning settings for table * * Generated from protobuf field .Ydb.Table.PartitioningSettings partitioning_settings = 15; * @param \Ydb\Table\PartitioningSettings $var * @return $this */ public function setPartitioningSettings($var) { GPBUtil::checkMessage($var, \Ydb\Table\PartitioningSettings::class); $this->partitioning_settings = $var; return $this; } /** * Bloom filter by key * * Generated from protobuf field .Ydb.FeatureFlag.Status key_bloom_filter = 16; * @return int */ public function getKeyBloomFilter() { return $this->key_bloom_filter; } /** * Bloom filter by key * * Generated from protobuf field .Ydb.FeatureFlag.Status key_bloom_filter = 16; * @param int $var * @return $this */ public function setKeyBloomFilter($var) { GPBUtil::checkEnum($var, \Ydb\FeatureFlag\Status::class); $this->key_bloom_filter = $var; return $this; } /** * Read replicas settings for table * * Generated from protobuf field .Ydb.Table.ReadReplicasSettings read_replicas_settings = 17; * @return \Ydb\Table\ReadReplicasSettings|null */ public function getReadReplicasSettings() { return $this->read_replicas_settings; } public function hasReadReplicasSettings() { return isset($this->read_replicas_settings); } public function clearReadReplicasSettings() { unset($this->read_replicas_settings); } /** * Read replicas settings for table * * Generated from protobuf field .Ydb.Table.ReadReplicasSettings read_replicas_settings = 17; * @param \Ydb\Table\ReadReplicasSettings $var * @return $this */ public function setReadReplicasSettings($var) { GPBUtil::checkMessage($var, \Ydb\Table\ReadReplicasSettings::class); $this->read_replicas_settings = $var; return $this; } /** * @return string */ public function getPartitions() { return $this->whichOneof("partitions"); } }