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.



1128
1129
1130
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1128

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)


996
997
998
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 996

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)


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

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)


1009
1010
1011
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1009

def dataset_region
  @dataset_region
end

#destination_dataset_idString

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

Returns:

  • (String)


1014
1015
1016
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1014

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)


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

def disabled
  @disabled
end

#display_nameString

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

Returns:

  • (String)


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

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



1031
1032
1033
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1031

def email_preferences
  @email_preferences
end

#encryption_configurationGoogle::Apis::BigquerydatatransferV1::EncryptionConfiguration

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



1036
1037
1038
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1036

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



1046
1047
1048
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1046

def error
  @error
end

#managed_table_typeString

The classification of the destination table. Corresponds to the JSON property managedTableType

Returns:

  • (String)


1051
1052
1053
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1051

def managed_table_type
  @managed_table_type
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)


1060
1061
1062
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1060

def name
  @name
end

#next_run_timeString

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

Returns:

  • (String)


1065
1066
1067
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1065

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)


1072
1073
1074
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1072

def notification_pubsub_topic
  @notification_pubsub_topic
end

#owner_infoGoogle::Apis::BigquerydatatransferV1::UserInfo

Information about a user. Corresponds to the JSON property ownerInfo



1077
1078
1079
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1077

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


1085
1086
1087
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1085

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)


1098
1099
1100
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1098

def schedule
  @schedule
end

#schedule_optionsGoogle::Apis::BigquerydatatransferV1::ScheduleOptions

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



1103
1104
1105
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1103

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



1111
1112
1113
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1111

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)


1116
1117
1118
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1116

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)


1121
1122
1123
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1121

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)


1126
1127
1128
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1126

def user_id
  @user_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
# File 'lib/google/apis/bigquerydatatransfer_v1/classes.rb', line 1133

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