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.



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

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)


754
755
756
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 754

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)


759
760
761
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 759

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)


764
765
766
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 764

def dataset_region
  @dataset_region
end

#destination_dataset_idString

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

Returns:

  • (String)


769
770
771
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 769

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)


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

def disabled
  @disabled
end

#display_nameString

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

Returns:

  • (String)


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

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



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

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)


794
795
796
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 794

def name
  @name
end

#next_run_timeString

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

Returns:

  • (String)


799
800
801
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 799

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)


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

def notification_pubsub_topic
  @notification_pubsub_topic
end

#owner_infoGoogle::Apis::BigquerydatatransferV1::UserInfo

Information about a user. Corresponds to the JSON property ownerInfo



811
812
813
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 811

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>)


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

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

Returns:

  • (String)


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

def schedule
  @schedule
end

#schedule_optionsGoogle::Apis::BigquerydatatransferV1::ScheduleOptions

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



836
837
838
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 836

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)


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

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)


846
847
848
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 846

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)


851
852
853
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 851

def user_id
  @user_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 858

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