# -*- coding: utf-8 -*-
# Copyright 2021 Cohesity Inc.
[docs]class ExchangeDatabaseCopyInfo(object):
"""Implementation of the 'ExchangeDatabaseCopyInfo' model.
Specifies the information about the copy of the Exchange Database on
particular Exchange Application Server that is part of DAG.
Attributes:
activation_preference_number (int): Specifies the activation
preference number assigned for this database copy.
app_server_id (int): Specifies the entity id of the Exchange
Application Server which has this database copy.
backup_supported (bool): Specifies if backup is supported for the
Exchange database copy.
backup_unsupported_reasons (list of string): Specifies any reason(s)
for Exchange database backup not supported.
copy_guid (string): Specifies the Guid of the Exchange Database Copy.
created_time_msecs (int): Specifies the time when the database is
created in Unix epoch time in milliseconds.
database_state (DatabaseStateEnum): Specifies the state of the
Exchange database copy.
Specifies the state of Exchange Database Copy.
'kUnknown' indicates the status is not known.
'kMounted' indicates the exchange database copy is mounted and
healthy.
'kError' indicates the exchange database copy is unmounted or
partially mounted or is in error state.
db_size_bytes (int): Specifies the size of the Exchange database copy
in bytes.
dbguid (string): Specifies the guid of the Exchange Database.
fqdn (string): Specifies the fully qualified domain name of the
Exchange Server on which the database copy is hosted.
is_active_copy (bool): Specifies if the Exchange database copy present
on the Exchange Application server is active or passive.
name (string): Specifes the name of the Exchange Database.
owner_id (int): Specifies the owner entity id of the Exchange
Application Server which has this database copy.
server_name (string): Specifies the display name of the Exchange
Application Server on which the database copy is hosted.
utc_offset_min (int): Specifies UTC time offset of database creation
time.
"""
# Create a mapping from Model property names to API property names
_names = {
"activation_preference_number":'activationPreferenceNumber',
"app_server_id":'appServerId',
"backup_supported":'backupSupported',
"backup_unsupported_reasons":'backupUnsupportedReasons',
"copy_guid":'copyGuid',
"created_time_msecs":'createdTimeMsecs',
"database_state":'databaseState',
"db_size_bytes":'dbSizeBytes',
"dbguid":'dbguid',
"fqdn":'fqdn',
"is_active_copy":'isActiveCopy',
"name":'name',
"owner_id":'ownerId',
"server_name":'serverName',
"utc_offset_min":'utcOffsetMin'
}
def __init__(self,
activation_preference_number=None,
app_server_id=None,
backup_supported=None,
backup_unsupported_reasons=None,
copy_guid=None,
created_time_msecs=None,
database_state=None,
db_size_bytes=None,
dbguid=None,
fqdn=None,
is_active_copy=None,
name=None,
owner_id=None,
server_name=None,
utc_offset_min=None):
"""Constructor for the ExchangeDatabaseCopyInfo class"""
# Initialize members of the class
self.activation_preference_number = activation_preference_number
self.app_server_id = app_server_id
self.backup_supported = backup_supported
self.backup_unsupported_reasons = backup_unsupported_reasons
self.copy_guid = copy_guid
self.created_time_msecs = created_time_msecs
self.database_state = database_state
self.db_size_bytes = db_size_bytes
self.dbguid = dbguid
self.fqdn = fqdn
self.is_active_copy = is_active_copy
self.name = name
self.owner_id = owner_id
self.server_name = server_name
self.utc_offset_min = utc_offset_min
[docs] @classmethod
def from_dictionary(cls,
dictionary):
"""Creates an instance of this model from a dictionary
Args:
dictionary (dictionary): A dictionary representation of the object as
obtained from the deserialization of the server's response. The keys
MUST match property names in the API description.
Returns:
object: An instance of this structure class.
"""
if dictionary is None:
return None
# Extract variables from the dictionary
activation_preference_number = dictionary.get('activationPreferenceNumber')
app_server_id = dictionary.get('appServerId')
backup_supported = dictionary.get('backupSupported')
backup_unsupported_reasons = dictionary.get('backupUnsupportedReasons')
copy_guid = dictionary.get('copyGuid')
created_time_msecs = dictionary.get('createdTimeMsecs')
database_state = dictionary.get('databaseState')
db_size_bytes = dictionary.get('dbSizeBytes')
dbguid = dictionary.get('dbguid')
fqdn = dictionary.get('fqdn')
is_active_copy = dictionary.get('isActiveCopy')
name = dictionary.get('name')
owner_id = dictionary.get('ownerId')
server_name = dictionary.get('serverName')
utc_offset_min = dictionary.get('utcOffsetMin')
# Return an object of this model
return cls(activation_preference_number,
app_server_id,
backup_supported,
backup_unsupported_reasons,
copy_guid,
created_time_msecs,
database_state,
db_size_bytes,
dbguid,
fqdn,
is_active_copy,
name,
owner_id,
server_name,
utc_offset_min)