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.



1028
1029
1030
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1028

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)


901
902
903
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 901

def data_refresh_window_days
  @data_refresh_window_days
end

#data_source_idString

Data source ID. This cannot be changed once data transfer is created. The full list of available data source IDs can be returned through an API call: https:// cloud.google.com/bigquery-transfer/docs/reference/datatransfer/rest/v1/ projects.locations.dataSources/list Corresponds to the JSON property dataSourceId

Returns:

  • (String)


909
910
911
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 909

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)


914
915
916
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 914

def dataset_region
  @dataset_region
end

#destination_dataset_idString

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

Returns:

  • (String)


919
920
921
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 919

def destination_dataset_id
  @destination_dataset_id
end

#disabledBoolean Also known as: disabled?

Is this config disabled. When set to true, no runs will be scheduled for this transfer config. Corresponds to the JSON property disabled

Returns:

  • (Boolean)


925
926
927
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 925

def disabled
  @disabled
end

#display_nameString

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

Returns:

  • (String)


931
932
933
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 931

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



936
937
938
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 936

def email_preferences
  @email_preferences
end

#encryption_configurationGoogle::Apis::BigquerydatatransferV1::EncryptionConfiguration

Represents the encryption configuration for a transfer. Corresponds to the JSON property encryptionConfiguration



941
942
943
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 941

def encryption_configuration
  @encryption_configuration
end

#errorGoogle::Apis::BigquerydatatransferV1::Status

The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide. Corresponds to the JSON property error



951
952
953
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 951

def error
  @error
end

#nameString

Identifier. The resource name of the transfer config. Transfer config names have the form either projects/project_id/locations/region/transferConfigs/ config_idor `projects/`project_id`/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

Returns:

  • (String)


960
961
962
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 960

def name
  @name
end

#next_run_timeString

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

Returns:

  • (String)


965
966
967
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 965

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_id/topics/topic_id` Corresponds to the JSON propertynotificationPubsubTopic`

Returns:

  • (String)


972
973
974
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 972

def notification_pubsub_topic
  @notification_pubsub_topic
end

#owner_infoGoogle::Apis::BigquerydatatransferV1::UserInfo

Information about a user. Corresponds to the JSON property ownerInfo



977
978
979
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 977

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


985
986
987
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 985

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)


998
999
1000
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 998

def schedule
  @schedule
end

#schedule_optionsGoogle::Apis::BigquerydatatransferV1::ScheduleOptions

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



1003
1004
1005
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1003

def schedule_options
  @schedule_options
end

#schedule_options_v2Google::Apis::BigquerydatatransferV1::ScheduleOptionsV2

V2 options customizing different types of data transfer schedule. This field supports existing time-based and manual transfer schedule. Also supports Event- Driven transfer schedule. ScheduleOptionsV2 cannot be used together with ScheduleOptions/Schedule. Corresponds to the JSON property scheduleOptionsV2



1011
1012
1013
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1011

def schedule_options_v2
  @schedule_options_v2
end

#stateString

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

Returns:

  • (String)


1016
1017
1018
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1016

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)


1021
1022
1023
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1021

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)


1026
1027
1028
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1026

def user_id
  @user_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1033

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)
  @encryption_configuration = args[:encryption_configuration] if args.key?(:encryption_configuration)
  @error = args[:error] if args.key?(:error)
  @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)
  @schedule_options_v2 = args[:schedule_options_v2] if args.key?(:schedule_options_v2)
  @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