Class: Google::Apis::StoragetransferV1::TransferJob

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

Overview

This resource represents the configuration of a transfer job that runs periodically.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TransferJob

Returns a new instance of TransferJob.



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

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

Instance Attribute Details

#creation_timeString

Output only. The time that the transfer job was created. Corresponds to the JSON property creationTime

Returns:

  • (String)


946
947
948
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 946

def creation_time
  @creation_time
end

#deletion_timeString

Output only. The time that the transfer job was deleted. Corresponds to the JSON property deletionTime

Returns:

  • (String)


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

def deletion_time
  @deletion_time
end

#descriptionString

A description provided by the user for the job. Its max length is 1024 bytes when Unicode-encoded. Corresponds to the JSON property description

Returns:

  • (String)


957
958
959
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 957

def description
  @description
end

#last_modification_timeString

Output only. The time that the transfer job was last modified. Corresponds to the JSON property lastModificationTime

Returns:

  • (String)


962
963
964
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 962

def last_modification_time
  @last_modification_time
end

#latest_operation_nameString

The name of the most recently started TransferOperation of this JobConfig. Present if a TransferOperation has been created for this JobConfig. Corresponds to the JSON property latestOperationName

Returns:

  • (String)


968
969
970
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 968

def latest_operation_name
  @latest_operation_name
end

#nameString

A unique name (within the transfer project) assigned when the job is created. If this field is empty in a CreateTransferJobRequest, Storage Transfer Service will assign a unique name. Otherwise, the specified name is used as the unique name for this job. If the specified name is in use by a job, the creation request fails with an ALREADY_EXISTS error. This name must start with " transferJobs/" prefix and end with a letter or a number, and should be no more than 128 characters. This name must not start with 'transferJobs/OPI'. ' transferJobs/OPI' is a reserved prefix. Example: "transferJobs/^(?!OPI)[A-Za- z0-9-._~]*[A-Za-z0-9]$" Invalid job names will fail with an INVALID_ARGUMENT error. Corresponds to the JSON property name

Returns:

  • (String)


982
983
984
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 982

def name
  @name
end

#notification_configGoogle::Apis::StoragetransferV1::NotificationConfig

Specification to configure notifications published to Cloud Pub/Sub. Notifications will be published to the customer-provided topic using the following PubsubMessage.attributes: * "eventType": one of the EventType values * "payloadFormat": one of the PayloadFormat values * "projectId": the project_id of the TransferOperation * "transferJobName": the transfer_job_name of the TransferOperation * "transferOperationName": the name of the TransferOperation The PubsubMessage.data will contain a TransferOperation resource formatted according to the specified PayloadFormat . Corresponds to the JSON property notificationConfig



995
996
997
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 995

def notification_config
  @notification_config
end

#project_idString

The ID of the Google Cloud Platform Project that owns the job. Corresponds to the JSON property projectId

Returns:

  • (String)


1000
1001
1002
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 1000

def project_id
  @project_id
end

#scheduleGoogle::Apis::StoragetransferV1::Schedule

Transfers can be scheduled to recur or to run just once. Corresponds to the JSON property schedule



1005
1006
1007
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 1005

def schedule
  @schedule
end

#statusString

Status of the job. This value MUST be specified for CreateTransferJobRequests . Note: The effect of the new job status takes place during a subsequent job run. For example, if you change the job status from ENABLED to DISABLED, and an operation spawned by the transfer is running, the status change would not affect the current operation. Corresponds to the JSON property status

Returns:

  • (String)


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

def status
  @status
end

#transfer_specGoogle::Apis::StoragetransferV1::TransferSpec

Configuration for running a transfer. Corresponds to the JSON property transferSpec



1019
1020
1021
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 1019

def transfer_spec
  @transfer_spec
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 1026

def update!(**args)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @deletion_time = args[:deletion_time] if args.key?(:deletion_time)
  @description = args[:description] if args.key?(:description)
  @last_modification_time = args[:last_modification_time] if args.key?(:last_modification_time)
  @latest_operation_name = args[:latest_operation_name] if args.key?(:latest_operation_name)
  @name = args[:name] if args.key?(:name)
  @notification_config = args[:notification_config] if args.key?(:notification_config)
  @project_id = args[:project_id] if args.key?(:project_id)
  @schedule = args[:schedule] if args.key?(:schedule)
  @status = args[:status] if args.key?(:status)
  @transfer_spec = args[:transfer_spec] if args.key?(:transfer_spec)
end