Class: Google::Apis::SpannerV1::BackupSchedule

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

Overview

BackupSchedule expresses the automated backup creation specification for a Spanner database.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BackupSchedule

Returns a new instance of BackupSchedule.



733
734
735
# File 'lib/google/apis/spanner_v1/classes.rb', line 733

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

Instance Attribute Details

#encryption_configGoogle::Apis::SpannerV1::CreateBackupEncryptionConfig

Encryption configuration for the backup to create. Corresponds to the JSON property encryptionConfig



688
689
690
# File 'lib/google/apis/spanner_v1/classes.rb', line 688

def encryption_config
  @encryption_config
end

#full_backup_specGoogle::Apis::SpannerV1::FullBackupSpec

The specification for full backups. A full backup stores the entire contents of the database at a given version time. Corresponds to the JSON property fullBackupSpec



694
695
696
# File 'lib/google/apis/spanner_v1/classes.rb', line 694

def full_backup_spec
  @full_backup_spec
end

#incremental_backup_specGoogle::Apis::SpannerV1::IncrementalBackupSpec

The specification for incremental backup chains. An incremental backup stores the delta of changes between a previous backup and the database contents at a given version time. An incremental backup chain consists of a full backup and zero or more successive incremental backups. The first backup created for an incremental backup chain is always a full backup. Corresponds to the JSON property incrementalBackupSpec



703
704
705
# File 'lib/google/apis/spanner_v1/classes.rb', line 703

def incremental_backup_spec
  @incremental_backup_spec
end

#nameString

Identifier. Output only for the CreateBackupSchedule operation. Required for the UpdateBackupSchedule operation. A globally unique identifier for the backup schedule which cannot be changed. Values are of the form projects// instances//databases//backupSchedules/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. Corresponds to the JSON property name

Returns:

  • (String)


712
713
714
# File 'lib/google/apis/spanner_v1/classes.rb', line 712

def name
  @name
end

#retention_durationString

Optional. The retention duration of a backup that must be at least 6 hours and at most 366 days. The backup is eligible to be automatically deleted once the retention period has elapsed. Corresponds to the JSON property retentionDuration

Returns:

  • (String)


719
720
721
# File 'lib/google/apis/spanner_v1/classes.rb', line 719

def retention_duration
  @retention_duration
end

#specGoogle::Apis::SpannerV1::BackupScheduleSpec

Defines specifications of the backup schedule. Corresponds to the JSON property spec



724
725
726
# File 'lib/google/apis/spanner_v1/classes.rb', line 724

def spec
  @spec
end

#update_timeString

Output only. The timestamp at which the schedule was last updated. If the schedule has never been updated, this field contains the timestamp when the schedule was first created. Corresponds to the JSON property updateTime

Returns:

  • (String)


731
732
733
# File 'lib/google/apis/spanner_v1/classes.rb', line 731

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



738
739
740
741
742
743
744
745
746
# File 'lib/google/apis/spanner_v1/classes.rb', line 738

def update!(**args)
  @encryption_config = args[:encryption_config] if args.key?(:encryption_config)
  @full_backup_spec = args[:full_backup_spec] if args.key?(:full_backup_spec)
  @incremental_backup_spec = args[:incremental_backup_spec] if args.key?(:incremental_backup_spec)
  @name = args[:name] if args.key?(:name)
  @retention_duration = args[:retention_duration] if args.key?(:retention_duration)
  @spec = args[:spec] if args.key?(:spec)
  @update_time = args[:update_time] if args.key?(:update_time)
end