Class: Azure::ARM::Web::Models::BackupSchedule

Inherits:
Object
  • Object
show all
Includes:
MsRestAzure
Defined in:
lib/azure_mgmt_web/models/backup_schedule.rb

Overview

Description of a backup schedule. Describes how often should be the backup performed and what should be the retention policy.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#frequency_intervalInteger

weekly backup, this should be set to 7 and FrequencyUnit should be set to Day)

Returns:

  • (Integer)

    How often should be the backup executed (e.g. for



19
20
21
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 19

def frequency_interval
  @frequency_interval
end

#frequency_unitFrequencyUnit

for weekly backup, this should be set to Day and FrequencyInterval should be set to 7). Possible values include: ‘Day’, ‘Hour’

Returns:

  • (FrequencyUnit)

    How often should be the backup executed (e.g.



24
25
26
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 24

def frequency_unit
  @frequency_unit
end

#keep_at_least_one_backupBoolean

least one backup in the storage account, regardless how old it is; false otherwise.

Returns:

  • (Boolean)

    True if the retention policy should always keep at



29
30
31
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 29

def keep_at_least_one_backup
  @keep_at_least_one_backup
end

#last_execution_timeDateTime

Returns The last time when this schedule was triggered.

Returns:

  • (DateTime)

    The last time when this schedule was triggered



38
39
40
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 38

def last_execution_time
  @last_execution_time
end

#retention_period_in_daysInteger

Returns After how many days backups should be deleted.

Returns:

  • (Integer)

    After how many days backups should be deleted



32
33
34
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 32

def retention_period_in_days
  @retention_period_in_days
end

#start_timeDateTime

Returns When the schedule should start working.

Returns:

  • (DateTime)

    When the schedule should start working



35
36
37
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 35

def start_time
  @start_time
end

Class Method Details

.deserialize_object(object) ⇒ BackupSchedule

Deserializes given Ruby Hash into Model object.

Parameters:

  • object (Hash)

    Ruby Hash object to deserialize.

Returns:



84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 84

def self.deserialize_object(object)
  return if object.nil?
  output_object = BackupSchedule.new

  deserialized_property = object['frequencyUnit']
  if (!deserialized_property.nil? && !deserialized_property.empty?)
    enum_is_valid = FrequencyUnit.constants.any? { |e| FrequencyUnit.const_get(e).to_s.downcase == deserialized_property.downcase }
    warn 'Enum FrequencyUnit does not contain ' + deserialized_property.downcase + ', but was received from the server.' unless enum_is_valid
  end
  output_object.frequency_unit = deserialized_property

  deserialized_property = object['frequencyInterval']
  deserialized_property = Integer(deserialized_property) unless deserialized_property.to_s.empty?
  output_object.frequency_interval = deserialized_property

  deserialized_property = object['keepAtLeastOneBackup']
  output_object.keep_at_least_one_backup = deserialized_property

  deserialized_property = object['retentionPeriodInDays']
  deserialized_property = Integer(deserialized_property) unless deserialized_property.to_s.empty?
  output_object.retention_period_in_days = deserialized_property

  deserialized_property = object['startTime']
  deserialized_property = DateTime.parse(deserialized_property) unless deserialized_property.to_s.empty?
  output_object.start_time = deserialized_property

  deserialized_property = object['lastExecutionTime']
  deserialized_property = DateTime.parse(deserialized_property) unless deserialized_property.to_s.empty?
  output_object.last_execution_time = deserialized_property

  output_object
end

.serialize_object(object) ⇒ Hash

Serializes given Model object into Ruby Hash.

Parameters:

  • object

    Model object to serialize.

Returns:

  • (Hash)

    Serialized object in form of Ruby Hash.



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 52

def self.serialize_object(object)
  object.validate
  output_object = {}

  serialized_property = object.frequency_unit
  output_object['frequencyUnit'] = serialized_property unless serialized_property.nil?

  serialized_property = object.frequency_interval
  output_object['frequencyInterval'] = serialized_property unless serialized_property.nil?

  serialized_property = object.keep_at_least_one_backup
  output_object['keepAtLeastOneBackup'] = serialized_property unless serialized_property.nil?

  serialized_property = object.retention_period_in_days
  output_object['retentionPeriodInDays'] = serialized_property unless serialized_property.nil?

  serialized_property = object.start_time
  serialized_property = serialized_property.new_offset(0).strftime('%FT%TZ')
  output_object['startTime'] = serialized_property unless serialized_property.nil?

  serialized_property = object.last_execution_time
  serialized_property = serialized_property.new_offset(0).strftime('%FT%TZ')
  output_object['lastExecutionTime'] = serialized_property unless serialized_property.nil?

  output_object
end

Instance Method Details

#validateObject

Validate the object. Throws ValidationError if validation fails.



43
44
45
# File 'lib/azure_mgmt_web/models/backup_schedule.rb', line 43

def validate
  fail MsRest::ValidationError, 'property frequency_unit is nil' if @frequency_unit.nil?
end