class Comet::BackupRuleConfig

def from_hash(obj)

Parameters:
  • obj (Hash) -- The complete object as a Ruby hash
def from_hash(obj)
  raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
  obj.each do |k, v|
    case k
    when 'Description'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
      @description = v
    when 'CreateTime'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
      @create_time = v
    when 'ModifyTime'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
      @modify_time = v
    when 'PreExec'
      if v.nil?
        @pre_exec = []
      else
        @pre_exec = Array.new(v.length)
        v.each_with_index do |v1, i1|
          raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
          @pre_exec[i1] = v1
        end
      end
    when 'ThawExec'
      if v.nil?
        @thaw_exec = []
      else
        @thaw_exec = Array.new(v.length)
        v.each_with_index do |v1, i1|
          raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
          @thaw_exec[i1] = v1
        end
      end
    when 'PostExec'
      if v.nil?
        @post_exec = []
      else
        @post_exec = Array.new(v.length)
        v.each_with_index do |v1, i1|
          raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
          @post_exec[i1] = v1
        end
      end
    when 'Source'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
      @source = v
    when 'Destination'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
      @destination = v
    when 'SkipAlreadyRunning'
      @skip_already_running = v
    when 'StopAfter'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
      @stop_after = v
    when 'LimitVaultSpeedBps'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
      @limit_vault_speed_bps = v
    when 'ReduceDiskConcurrency'
      @reduce_disk_concurrency = v
    when 'UseOnDiskIndexes'
      @use_on_disk_indexes = v
    when 'AllowZeroFilesSuccess'
      @allow_zero_files_success = v
    when 'AutoRetentionLevel'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
      @auto_retention_level = v
    when 'ConcurrencyCount'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
      @concurrency_count = v
    when 'LogLevel'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
      @log_level = v
    when 'Schedules'
      if v.nil?
        @schedules = []
      else
        @schedules = Array.new(v.length)
        v.each_with_index do |v1, i1|
          @schedules[i1] = Comet::ScheduleConfig.new
          @schedules[i1].from_hash(v1)
        end
      end
    when 'EventTriggers'
      @event_triggers = Comet::BackupRuleEventTriggers.new
      @event_triggers.from_hash(v)
    else
      @unknown_json_fields[k] = v
    end
  end
end