diff --git a/BigQueryDataTransfer/metadata/V1/Transfer.php b/BigQueryDataTransfer/metadata/V1/Transfer.php index 81eda220fed4..385f1d373ad2 100644 Binary files a/BigQueryDataTransfer/metadata/V1/Transfer.php and b/BigQueryDataTransfer/metadata/V1/Transfer.php differ diff --git a/BigQueryDataTransfer/src/V1/EventDrivenSchedule.php b/BigQueryDataTransfer/src/V1/EventDrivenSchedule.php new file mode 100644 index 000000000000..31a5153fcb4d --- /dev/null +++ b/BigQueryDataTransfer/src/V1/EventDrivenSchedule.php @@ -0,0 +1,75 @@ +google.cloud.bigquery.datatransfer.v1.EventDrivenSchedule + */ +class EventDrivenSchedule extends \Google\Protobuf\Internal\Message +{ + /** + * Pub/Sub subscription name used to receive events. + * Only Google Cloud Storage data source support this option. + * Format: projects/{project}/subscriptions/{subscription} + * + * Generated from protobuf field string pubsub_subscription = 1; + */ + protected $pubsub_subscription = ''; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $pubsub_subscription + * Pub/Sub subscription name used to receive events. + * Only Google Cloud Storage data source support this option. + * Format: projects/{project}/subscriptions/{subscription} + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Cloud\Bigquery\Datatransfer\V1\Transfer::initOnce(); + parent::__construct($data); + } + + /** + * Pub/Sub subscription name used to receive events. + * Only Google Cloud Storage data source support this option. + * Format: projects/{project}/subscriptions/{subscription} + * + * Generated from protobuf field string pubsub_subscription = 1; + * @return string + */ + public function getPubsubSubscription() + { + return $this->pubsub_subscription; + } + + /** + * Pub/Sub subscription name used to receive events. + * Only Google Cloud Storage data source support this option. + * Format: projects/{project}/subscriptions/{subscription} + * + * Generated from protobuf field string pubsub_subscription = 1; + * @param string $var + * @return $this + */ + public function setPubsubSubscription($var) + { + GPBUtil::checkString($var, True); + $this->pubsub_subscription = $var; + + return $this; + } + +} + diff --git a/BigQueryDataTransfer/src/V1/ManualSchedule.php b/BigQueryDataTransfer/src/V1/ManualSchedule.php new file mode 100644 index 000000000000..d63152a9d504 --- /dev/null +++ b/BigQueryDataTransfer/src/V1/ManualSchedule.php @@ -0,0 +1,33 @@ +google.cloud.bigquery.datatransfer.v1.ManualSchedule + */ +class ManualSchedule extends \Google\Protobuf\Internal\Message +{ + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Cloud\Bigquery\Datatransfer\V1\Transfer::initOnce(); + parent::__construct($data); + } + +} + diff --git a/BigQueryDataTransfer/src/V1/ScheduleOptionsV2.php b/BigQueryDataTransfer/src/V1/ScheduleOptionsV2.php new file mode 100644 index 000000000000..9f60741106c1 --- /dev/null +++ b/BigQueryDataTransfer/src/V1/ScheduleOptionsV2.php @@ -0,0 +1,159 @@ +google.cloud.bigquery.datatransfer.v1.ScheduleOptionsV2 + */ +class ScheduleOptionsV2 extends \Google\Protobuf\Internal\Message +{ + protected $schedule; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\BigQuery\DataTransfer\V1\TimeBasedSchedule $time_based_schedule + * Time based transfer schedule options. This is the default schedule + * option. + * @type \Google\Cloud\BigQuery\DataTransfer\V1\ManualSchedule $manual_schedule + * Manual transfer schedule. If set, the transfer run will not be + * auto-scheduled by the system, unless the client invokes + * StartManualTransferRuns. This is equivalent to + * disable_auto_scheduling = true. + * @type \Google\Cloud\BigQuery\DataTransfer\V1\EventDrivenSchedule $event_driven_schedule + * Event driven transfer schedule options. If set, the transfer will be + * scheduled upon events arrial. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Cloud\Bigquery\Datatransfer\V1\Transfer::initOnce(); + parent::__construct($data); + } + + /** + * Time based transfer schedule options. This is the default schedule + * option. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.TimeBasedSchedule time_based_schedule = 1; + * @return \Google\Cloud\BigQuery\DataTransfer\V1\TimeBasedSchedule|null + */ + public function getTimeBasedSchedule() + { + return $this->readOneof(1); + } + + public function hasTimeBasedSchedule() + { + return $this->hasOneof(1); + } + + /** + * Time based transfer schedule options. This is the default schedule + * option. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.TimeBasedSchedule time_based_schedule = 1; + * @param \Google\Cloud\BigQuery\DataTransfer\V1\TimeBasedSchedule $var + * @return $this + */ + public function setTimeBasedSchedule($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\BigQuery\DataTransfer\V1\TimeBasedSchedule::class); + $this->writeOneof(1, $var); + + return $this; + } + + /** + * Manual transfer schedule. If set, the transfer run will not be + * auto-scheduled by the system, unless the client invokes + * StartManualTransferRuns. This is equivalent to + * disable_auto_scheduling = true. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.ManualSchedule manual_schedule = 2; + * @return \Google\Cloud\BigQuery\DataTransfer\V1\ManualSchedule|null + */ + public function getManualSchedule() + { + return $this->readOneof(2); + } + + public function hasManualSchedule() + { + return $this->hasOneof(2); + } + + /** + * Manual transfer schedule. If set, the transfer run will not be + * auto-scheduled by the system, unless the client invokes + * StartManualTransferRuns. This is equivalent to + * disable_auto_scheduling = true. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.ManualSchedule manual_schedule = 2; + * @param \Google\Cloud\BigQuery\DataTransfer\V1\ManualSchedule $var + * @return $this + */ + public function setManualSchedule($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\BigQuery\DataTransfer\V1\ManualSchedule::class); + $this->writeOneof(2, $var); + + return $this; + } + + /** + * Event driven transfer schedule options. If set, the transfer will be + * scheduled upon events arrial. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.EventDrivenSchedule event_driven_schedule = 3; + * @return \Google\Cloud\BigQuery\DataTransfer\V1\EventDrivenSchedule|null + */ + public function getEventDrivenSchedule() + { + return $this->readOneof(3); + } + + public function hasEventDrivenSchedule() + { + return $this->hasOneof(3); + } + + /** + * Event driven transfer schedule options. If set, the transfer will be + * scheduled upon events arrial. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.EventDrivenSchedule event_driven_schedule = 3; + * @param \Google\Cloud\BigQuery\DataTransfer\V1\EventDrivenSchedule $var + * @return $this + */ + public function setEventDrivenSchedule($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\BigQuery\DataTransfer\V1\EventDrivenSchedule::class); + $this->writeOneof(3, $var); + + return $this; + } + + /** + * @return string + */ + public function getSchedule() + { + return $this->whichOneof("schedule"); + } + +} + diff --git a/BigQueryDataTransfer/src/V1/TimeBasedSchedule.php b/BigQueryDataTransfer/src/V1/TimeBasedSchedule.php new file mode 100644 index 000000000000..11981b94a608 --- /dev/null +++ b/BigQueryDataTransfer/src/V1/TimeBasedSchedule.php @@ -0,0 +1,220 @@ +google.cloud.bigquery.datatransfer.v1.TimeBasedSchedule + */ +class TimeBasedSchedule extends \Google\Protobuf\Internal\Message +{ + /** + * Data transfer schedule. + * If the data source does not support a custom schedule, this should be + * empty. If it is empty, the default value for the data source will be used. + * The specified times are in UTC. + * Examples of valid format: + * `1st,3rd monday of month 15:30`, + * `every wed,fri of jan,jun 13:15`, and + * `first sunday of quarter 00:00`. + * See more explanation about the format here: + * https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format + * NOTE: The minimum interval time between recurring transfers depends on the + * data source; refer to the documentation for your data source. + * + * Generated from protobuf field string schedule = 1; + */ + protected $schedule = ''; + /** + * Specifies time to start scheduling transfer runs. The first run will be + * scheduled at or after the start time according to a recurrence pattern + * defined in the schedule string. The start time can be changed at any + * moment. + * + * Generated from protobuf field .google.protobuf.Timestamp start_time = 2; + */ + protected $start_time = null; + /** + * Defines time to stop scheduling transfer runs. A transfer run cannot be + * scheduled at or after the end time. The end time can be changed at any + * moment. + * + * Generated from protobuf field .google.protobuf.Timestamp end_time = 3; + */ + protected $end_time = null; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $schedule + * Data transfer schedule. + * If the data source does not support a custom schedule, this should be + * empty. If it is empty, the default value for the data source will be used. + * The specified times are in UTC. + * Examples of valid format: + * `1st,3rd monday of month 15:30`, + * `every wed,fri of jan,jun 13:15`, and + * `first sunday of quarter 00:00`. + * See more explanation about the format here: + * https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format + * NOTE: The minimum interval time between recurring transfers depends on the + * data source; refer to the documentation for your data source. + * @type \Google\Protobuf\Timestamp $start_time + * Specifies time to start scheduling transfer runs. The first run will be + * scheduled at or after the start time according to a recurrence pattern + * defined in the schedule string. The start time can be changed at any + * moment. + * @type \Google\Protobuf\Timestamp $end_time + * Defines time to stop scheduling transfer runs. A transfer run cannot be + * scheduled at or after the end time. The end time can be changed at any + * moment. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Cloud\Bigquery\Datatransfer\V1\Transfer::initOnce(); + parent::__construct($data); + } + + /** + * Data transfer schedule. + * If the data source does not support a custom schedule, this should be + * empty. If it is empty, the default value for the data source will be used. + * The specified times are in UTC. + * Examples of valid format: + * `1st,3rd monday of month 15:30`, + * `every wed,fri of jan,jun 13:15`, and + * `first sunday of quarter 00:00`. + * See more explanation about the format here: + * https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format + * NOTE: The minimum interval time between recurring transfers depends on the + * data source; refer to the documentation for your data source. + * + * Generated from protobuf field string schedule = 1; + * @return string + */ + public function getSchedule() + { + return $this->schedule; + } + + /** + * Data transfer schedule. + * If the data source does not support a custom schedule, this should be + * empty. If it is empty, the default value for the data source will be used. + * The specified times are in UTC. + * Examples of valid format: + * `1st,3rd monday of month 15:30`, + * `every wed,fri of jan,jun 13:15`, and + * `first sunday of quarter 00:00`. + * See more explanation about the format here: + * https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format + * NOTE: The minimum interval time between recurring transfers depends on the + * data source; refer to the documentation for your data source. + * + * Generated from protobuf field string schedule = 1; + * @param string $var + * @return $this + */ + public function setSchedule($var) + { + GPBUtil::checkString($var, True); + $this->schedule = $var; + + return $this; + } + + /** + * Specifies time to start scheduling transfer runs. The first run will be + * scheduled at or after the start time according to a recurrence pattern + * defined in the schedule string. The start time can be changed at any + * moment. + * + * Generated from protobuf field .google.protobuf.Timestamp start_time = 2; + * @return \Google\Protobuf\Timestamp|null + */ + public function getStartTime() + { + return $this->start_time; + } + + public function hasStartTime() + { + return isset($this->start_time); + } + + public function clearStartTime() + { + unset($this->start_time); + } + + /** + * Specifies time to start scheduling transfer runs. The first run will be + * scheduled at or after the start time according to a recurrence pattern + * defined in the schedule string. The start time can be changed at any + * moment. + * + * Generated from protobuf field .google.protobuf.Timestamp start_time = 2; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setStartTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->start_time = $var; + + return $this; + } + + /** + * Defines time to stop scheduling transfer runs. A transfer run cannot be + * scheduled at or after the end time. The end time can be changed at any + * moment. + * + * Generated from protobuf field .google.protobuf.Timestamp end_time = 3; + * @return \Google\Protobuf\Timestamp|null + */ + public function getEndTime() + { + return $this->end_time; + } + + public function hasEndTime() + { + return isset($this->end_time); + } + + public function clearEndTime() + { + unset($this->end_time); + } + + /** + * Defines time to stop scheduling transfer runs. A transfer run cannot be + * scheduled at or after the end time. The end time can be changed at any + * moment. + * + * Generated from protobuf field .google.protobuf.Timestamp end_time = 3; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setEndTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->end_time = $var; + + return $this; + } + +} + diff --git a/BigQueryDataTransfer/src/V1/TransferConfig.php b/BigQueryDataTransfer/src/V1/TransferConfig.php index c1288effb4fa..e02892d345a5 100644 --- a/BigQueryDataTransfer/src/V1/TransferConfig.php +++ b/BigQueryDataTransfer/src/V1/TransferConfig.php @@ -78,6 +78,14 @@ class TransferConfig extends \Google\Protobuf\Internal\Message * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.ScheduleOptions schedule_options = 24; */ protected $schedule_options = null; + /** + * Options customizing different types of data transfer schedule. + * This field replaces "schedule" and "schedule_options" fields. + * ScheduleOptionsV2 cannot be used together with ScheduleOptions/Schedule. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.ScheduleOptionsV2 schedule_options_v2 = 31; + */ + protected $schedule_options_v2 = null; /** * The number of days to look back to automatically refresh the data. * For example, if `data_refresh_window_days = 10`, then every day @@ -160,6 +168,13 @@ class TransferConfig extends \Google\Protobuf\Internal\Message * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.EncryptionConfiguration encryption_configuration = 28; */ protected $encryption_configuration = null; + /** + * Output only. Error code with detailed information about reason of the + * latest config failure. + * + * Generated from protobuf field .google.rpc.Status error = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $error = null; protected $destination; /** @@ -204,6 +219,10 @@ class TransferConfig extends \Google\Protobuf\Internal\Message * data source; refer to the documentation for your data source. * @type \Google\Cloud\BigQuery\DataTransfer\V1\ScheduleOptions $schedule_options * Options customizing the data transfer schedule. + * @type \Google\Cloud\BigQuery\DataTransfer\V1\ScheduleOptionsV2 $schedule_options_v2 + * Options customizing different types of data transfer schedule. + * This field replaces "schedule" and "schedule_options" fields. + * ScheduleOptionsV2 cannot be used together with ScheduleOptions/Schedule. * @type int $data_refresh_window_days * The number of days to look back to automatically refresh the data. * For example, if `data_refresh_window_days = 10`, then every day @@ -242,6 +261,9 @@ class TransferConfig extends \Google\Protobuf\Internal\Message * granted permissions to use the key. Read methods will return the key name * applied in effect. Write methods will apply the key if it is present, or * otherwise try to apply project default keys if it is absent. + * @type \Google\Rpc\Status $error + * Output only. Error code with detailed information about reason of the + * latest config failure. * } */ public function __construct($data = NULL) { @@ -500,6 +522,46 @@ public function setScheduleOptions($var) return $this; } + /** + * Options customizing different types of data transfer schedule. + * This field replaces "schedule" and "schedule_options" fields. + * ScheduleOptionsV2 cannot be used together with ScheduleOptions/Schedule. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.ScheduleOptionsV2 schedule_options_v2 = 31; + * @return \Google\Cloud\BigQuery\DataTransfer\V1\ScheduleOptionsV2|null + */ + public function getScheduleOptionsV2() + { + return $this->schedule_options_v2; + } + + public function hasScheduleOptionsV2() + { + return isset($this->schedule_options_v2); + } + + public function clearScheduleOptionsV2() + { + unset($this->schedule_options_v2); + } + + /** + * Options customizing different types of data transfer schedule. + * This field replaces "schedule" and "schedule_options" fields. + * ScheduleOptionsV2 cannot be used together with ScheduleOptions/Schedule. + * + * Generated from protobuf field .google.cloud.bigquery.datatransfer.v1.ScheduleOptionsV2 schedule_options_v2 = 31; + * @param \Google\Cloud\BigQuery\DataTransfer\V1\ScheduleOptionsV2 $var + * @return $this + */ + public function setScheduleOptionsV2($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\BigQuery\DataTransfer\V1\ScheduleOptionsV2::class); + $this->schedule_options_v2 = $var; + + return $this; + } + /** * The number of days to look back to automatically refresh the data. * For example, if `data_refresh_window_days = 10`, then every day @@ -868,6 +930,44 @@ public function setEncryptionConfiguration($var) return $this; } + /** + * Output only. Error code with detailed information about reason of the + * latest config failure. + * + * Generated from protobuf field .google.rpc.Status error = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Rpc\Status|null + */ + public function getError() + { + return $this->error; + } + + public function hasError() + { + return isset($this->error); + } + + public function clearError() + { + unset($this->error); + } + + /** + * Output only. Error code with detailed information about reason of the + * latest config failure. + * + * Generated from protobuf field .google.rpc.Status error = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Rpc\Status $var + * @return $this + */ + public function setError($var) + { + GPBUtil::checkMessage($var, \Google\Rpc\Status::class); + $this->error = $var; + + return $this; + } + /** * @return string */