Class: Google::Apis::BigquerydatatransferV1::TransferConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/bigquerydatatransfer_v1/classes.rb,
lib/google/apis/bigquerydatatransfer_v1/representations.rb,
lib/google/apis/bigquerydatatransfer_v1/representations.rb

Overview

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.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TransferConfig

Returns a new instance of TransferConfig.



875
876
877
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 875

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#data_refresh_window_daysFixnum

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

Returns:

  • (Fixnum)


775
776
777
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 775

def data_refresh_window_days
  @data_refresh_window_days
end

#data_source_idString

Data source id. Cannot be changed once data transfer is created. Corresponds to the JSON property dataSourceId

Returns:

  • (String)


780
781
782
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 780

def data_source_id
  @data_source_id
end

#dataset_regionString

Output only. Region in which BigQuery dataset is located. Corresponds to the JSON property datasetRegion

Returns:

  • (String)


785
786
787
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 785

def dataset_region
  @dataset_region
end

#destination_dataset_idString

The BigQuery target dataset id. Corresponds to the JSON property destinationDatasetId

Returns:

  • (String)


790
791
792
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 790

def destination_dataset_id
  @destination_dataset_id
end

#disabledBoolean Also known as: disabled?

Is this config disabled. When set to true, no runs are scheduled for a given transfer. Corresponds to the JSON property disabled

Returns:

  • (Boolean)


796
797
798
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 796

def disabled
  @disabled
end

#display_nameString

User specified display name for the data transfer. Corresponds to the JSON property displayName

Returns:

  • (String)


802
803
804
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 802

def display_name
  @display_name
end

#email_preferencesGoogle::Apis::BigquerydatatransferV1::EmailPreferences

Represents preferences for sending email notifications for transfer run events. Corresponds to the JSON property emailPreferences



807
808
809
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 807

def email_preferences
  @email_preferences
end

#nameString

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

Returns:

  • (String)


815
816
817
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 815

def name
  @name
end

#next_run_timeString

Output only. Next time when data transfer will run. Corresponds to the JSON property nextRunTime

Returns:

  • (String)


820
821
822
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 820

def next_run_time
  @next_run_time
end

#notification_pubsub_topicString

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 propertynotificationPubsubTopic`

Returns:

  • (String)


827
828
829
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 827

def notification_pubsub_topic
  @notification_pubsub_topic
end

#owner_infoGoogle::Apis::BigquerydatatransferV1::UserInfo

Information about a user. Corresponds to the JSON property ownerInfo



832
833
834
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 832

def owner_info
  @owner_info
end

#paramsHash<String,Object>

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: https://cloud. google.com/bigquery-transfer/docs/cloud-storage-transfer#bq Corresponds to the JSON property params

Returns:

  • (Hash<String,Object>)


840
841
842
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 840

def params
  @params
end

#scheduleString

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. Corresponds to the JSON property schedule

Returns:

  • (String)


853
854
855
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 853

def schedule
  @schedule
end

#schedule_optionsGoogle::Apis::BigquerydatatransferV1::ScheduleOptions

Options customizing the data transfer schedule. Corresponds to the JSON property scheduleOptions



858
859
860
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 858

def schedule_options
  @schedule_options
end

#stateString

Output only. State of the most recently updated transfer run. Corresponds to the JSON property state

Returns:

  • (String)


863
864
865
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 863

def state
  @state
end

#update_timeString

Output only. Data transfer modification time. Ignored by server on input. Corresponds to the JSON property updateTime

Returns:

  • (String)


868
869
870
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 868

def update_time
  @update_time
end

#user_idFixnum

Deprecated. Unique ID of the user on whose behalf transfer is done. Corresponds to the JSON property userId

Returns:

  • (Fixnum)


873
874
875
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 873

def user_id
  @user_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 880

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