class Google::Apis::BigquerydatatransferV1::TransferConfig

Represents a data transfer configuration. A transfer configuration contains all metadata needed to perform a data transfer. For example, ` destination_dataset_id` specifies where data should be stored. When a new transfer configuration is created, the specified `destination_dataset_id` is created when needed and shared with the appropriate data source service account.

Attributes

data_refresh_window_days[RW]

The number of days to look back to automatically refresh the data. For example, if `data_refresh_window_days = 10`, then every day BigQuery reingests data for [today-10, today-1], rather than ingesting data for just [today-1]. Only valid if the data source supports the feature. Set the value to 0 to use the default value. Corresponds to the JSON property `dataRefreshWindowDays` @return [Fixnum]

data_source_id[RW]

Data source id. Cannot be changed once data transfer is created. Corresponds to the JSON property `dataSourceId` @return [String]

dataset_region[RW]

Output only. Region in which BigQuery dataset is located. Corresponds to the JSON property `datasetRegion` @return [String]

destination_dataset_id[RW]

The BigQuery target dataset id. Corresponds to the JSON property `destinationDatasetId` @return [String]

disabled[RW]

Is this config disabled. When set to true, no runs are scheduled for a given transfer. Corresponds to the JSON property `disabled` @return [Boolean]

disabled?[RW]

Is this config disabled. When set to true, no runs are scheduled for a given transfer. Corresponds to the JSON property `disabled` @return [Boolean]

display_name[RW]

User specified display name for the data transfer. Corresponds to the JSON property `displayName` @return [String]

email_preferences[RW]

Represents preferences for sending email notifications for transfer run events. Corresponds to the JSON property `emailPreferences` @return [Google::Apis::BigquerydatatransferV1::EmailPreferences]

name[RW]

The resource name of the transfer config. Transfer config names have the form ` projects/`project_id`/locations/`region`/transferConfigs/`config_id“. Where ` config_id` is usually a uuid, even though it is not guaranteed or required. The name is ignored when creating a transfer config. Corresponds to the JSON property `name` @return [String]

next_run_time[RW]

Output only. Next time when data transfer will run. Corresponds to the JSON property `nextRunTime` @return [String]

notification_pubsub_topic[RW]

Pub/Sub topic where notifications will be sent after transfer runs associated with this transfer config finish. The format for specifying a pubsub topic is: `projects/`project`/topics/`topic“ Corresponds to the JSON property `notificationPubsubTopic` @return [String]

owner_info[RW]

Information about a user. Corresponds to the JSON property `ownerInfo` @return [Google::Apis::BigquerydatatransferV1::UserInfo]

params[RW]

Parameters specific to each data source. For more information see the bq tab in the 'Setting up a data transfer' section for each data source. For example the parameters for Cloud Storage transfers are listed here: cloud. google.com/bigquery-transfer/docs/cloud-storage-transfer#bq Corresponds to the JSON property `params` @return [Hash<String,Object>]

schedule[RW]

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 granularity should be at least 8 hours, or less frequent. Corresponds to the JSON property `schedule` @return [String]

schedule_options[RW]

Options customizing the data transfer schedule. Corresponds to the JSON property `scheduleOptions` @return [Google::Apis::BigquerydatatransferV1::ScheduleOptions]

state[RW]

Output only. State of the most recently updated transfer run. Corresponds to the JSON property `state` @return [String]

update_time[RW]

Output only. Data transfer modification time. Ignored by server on input. Corresponds to the JSON property `updateTime` @return [String]

user_id[RW]

Deprecated. Unique ID of the user on whose behalf transfer is done. Corresponds to the JSON property `userId` @return [Fixnum]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/bigquerydatatransfer_v1/classes.rb, line 874
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/bigquerydatatransfer_v1/classes.rb, line 879
def update!(**args)
  @data_refresh_window_days = args[:data_refresh_window_days] if args.key?(:data_refresh_window_days)
  @data_source_id = args[:data_source_id] if args.key?(:data_source_id)
  @dataset_region = args[:dataset_region] if args.key?(:dataset_region)
  @destination_dataset_id = args[:destination_dataset_id] if args.key?(:destination_dataset_id)
  @disabled = args[:disabled] if args.key?(:disabled)
  @display_name = args[:display_name] if args.key?(:display_name)
  @email_preferences = args[:email_preferences] if args.key?(:email_preferences)
  @name = args[:name] if args.key?(:name)
  @next_run_time = args[:next_run_time] if args.key?(:next_run_time)
  @notification_pubsub_topic = args[:notification_pubsub_topic] if args.key?(:notification_pubsub_topic)
  @owner_info = args[:owner_info] if args.key?(:owner_info)
  @params = args[:params] if args.key?(:params)
  @schedule = args[:schedule] if args.key?(:schedule)
  @schedule_options = args[:schedule_options] if args.key?(:schedule_options)
  @state = args[:state] if args.key?(:state)
  @update_time = args[:update_time] if args.key?(:update_time)
  @user_id = args[:user_id] if args.key?(:user_id)
end