Module cvpysdk.subclients.dbsubclient
File for operating on a Database Server Subclient
DatabaseSubclient is the only class defined in this file.
DatabaseSubclient: Derived class from Subclient Base class, representing a Database server subclient, and to perform operations on that subclient
Databasesubclient
log_backup_storage_policy() – updpates the log backup storage policy for this subclient
Expand source code Browse git
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# --------------------------------------------------------------------------
# Copyright Commvault Systems, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# --------------------------------------------------------------------------
"""File for operating on a Database Server Subclient
DatabaseSubclient is the only class defined in this file.
DatabaseSubclient: Derived class from Subclient Base class, representing a Database server subclient,
and to perform operations on that subclient
DatabaseSubclient:
log_backup_storage_policy() -- updpates the log backup storage policy for this
subclient
"""
from __future__ import unicode_literals
from ..subclient import Subclient
from ..exception import SDKException
class DatabaseSubclient(Subclient):
"""Derived class from Subclient Base class, representing a file system subclient,
and to perform operations on that subclient."""
@property
def log_backup_storage_policy(self):
"""Treats the subclient description as a property of the Subclient class."""
storage_device = self._subclient_properties['commonProperties']['storageDevice']
if 'logBackupStoragePolicy' in storage_device:
if 'storagePolicyName' in storage_device['logBackupStoragePolicy']:
return str(
storage_device['logBackupStoragePolicy']['storagePolicyName']
)
@log_backup_storage_policy.setter
def log_backup_storage_policy(self, value):
"""Sets the log backup storage policy of subclient as the value provided as input.
Args:
value (str) -- Log backup Storage policy name to be assigned to subclient
Raises:
SDKException:
if failed to update log backup storage policy name
if log backup storage policy name is not in string format
"""
if isinstance(value, str):
value = value.lower()
if not self._commcell_object.storage_policies.has_policy(value):
raise SDKException(
'Subclient',
'102',
'Storage Policy: "{0}" does not exist in the Commcell'.format(value)
)
self._set_subclient_properties(
"_commonProperties['storageDevice']['logBackupStoragePolicy']",
{
"storagePolicyName": value,
"storagePolicyId": int(
self._commcell_object.storage_policies.all_storage_policies[value]
)
}
)
else:
raise SDKException('Subclient', '101')
Classes
class DatabaseSubclient (backupset_object, subclient_name, subclient_id=None)
-
Derived class from Subclient Base class, representing a file system subclient, and to perform operations on that subclient.
Initialise the Subclient object.
Args
backupset_object (object) – instance of the Backupset class
subclient_name (str) – name of the subclient
subclient_id (str) – id of the subclient default: None
Returns
object - instance of the Subclient class
Expand source code Browse git
class DatabaseSubclient(Subclient): """Derived class from Subclient Base class, representing a file system subclient, and to perform operations on that subclient.""" @property def log_backup_storage_policy(self): """Treats the subclient description as a property of the Subclient class.""" storage_device = self._subclient_properties['commonProperties']['storageDevice'] if 'logBackupStoragePolicy' in storage_device: if 'storagePolicyName' in storage_device['logBackupStoragePolicy']: return str( storage_device['logBackupStoragePolicy']['storagePolicyName'] ) @log_backup_storage_policy.setter def log_backup_storage_policy(self, value): """Sets the log backup storage policy of subclient as the value provided as input. Args: value (str) -- Log backup Storage policy name to be assigned to subclient Raises: SDKException: if failed to update log backup storage policy name if log backup storage policy name is not in string format """ if isinstance(value, str): value = value.lower() if not self._commcell_object.storage_policies.has_policy(value): raise SDKException( 'Subclient', '102', 'Storage Policy: "{0}" does not exist in the Commcell'.format(value) ) self._set_subclient_properties( "_commonProperties['storageDevice']['logBackupStoragePolicy']", { "storagePolicyName": value, "storagePolicyId": int( self._commcell_object.storage_policies.all_storage_policies[value] ) } ) else: raise SDKException('Subclient', '101')
Ancestors
Subclasses
Instance variables
var log_backup_storage_policy
-
Treats the subclient description as a property of the Subclient class.
Expand source code Browse git
@property def log_backup_storage_policy(self): """Treats the subclient description as a property of the Subclient class.""" storage_device = self._subclient_properties['commonProperties']['storageDevice'] if 'logBackupStoragePolicy' in storage_device: if 'storagePolicyName' in storage_device['logBackupStoragePolicy']: return str( storage_device['logBackupStoragePolicy']['storagePolicyName'] )
Inherited members
Subclient
:allow_multiple_readers
backup
browse
data_readers
deduplication_options
description
disable_backup
disable_intelli_snap
display_name
enable_backup
enable_backup_at_time
enable_intelli_snap
enable_trueup
enable_trueup_days
encryption_flag
exclude_from_sla
find
find_latest_job
get_ma_associated_storagepolicy
is_backup_enabled
is_blocklevel_backup_enabled
is_default_subclient
is_intelli_snap_enabled
is_on_demand_subclient
is_trueup_enabled
last_backup_time
list_media
name
network_agent
next_backup_time
plan
properties
read_buffer_size
refresh
restore_in_place
restore_out_of_place
set_backup_nodes
set_proxy_for_snap
snapshot_engine_name
software_compression
storage_ma
storage_ma_id
storage_policy
subclient_guid
subclient_id
subclient_name
unset_proxy_for_snap
update_properties