CedarBackup3.extend.amazons3.LocalConfig

Package CedarBackup3 :: Package extend :: Module amazons3 :: Class LocalConfig |
[hide private]
[frames] | no frames]

# Class LocalConfig

source code

    object --+
             |
            LocalConfig

Class representing this extension's configuration document.

This is not a general-purpose configuration object like the main Cedar Backup configuration object. Instead, it just knows how to parse and emit amazons3-specific configuration values. Third parties who need to read and write configuration related to this extension should access it through the constructor, `validate` and `addConfig` methods.

Note: Lists within this class are "unordered" for equality comparisons.

Instance Methods | [hide private]
__init__(self, xmlData=None, xmlPath=None, validate=True) Initializes a configuration object. | source code
__repr__(self) Official string representation for class instance. | source code
__str__(self) Informal string representation for class instance. | source code
__cmp__(self, other) Original Python 2 comparison operator. | source code
__eq__(self, other) Equals operator, iplemented in terms of original Python 2 compare operator. | source code
__lt__(self, other) Less-than operator, iplemented in terms of original Python 2 compare operator. | source code
__gt__(self, other) Greater-than operator, iplemented in terms of original Python 2 compare operator. | source code
validate(self) Validates configuration represented by the object. | source code
addConfig(self, xmlDom, parentNode) Adds an <amazons3> configuration section as the next child of a parent. | source code
_setAmazonS3(self, value) Property target used to set the amazons3 configuration value. | source code
_getAmazonS3(self) Property target used to get the amazons3 configuration value. | source code
_parseXmlData(self, xmlData) Internal method to parse an XML string into the object. | source code
__ge__(x, y) x>=y |
__le__(x, y) x<=y |
Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`, `__sizeof__`, `__subclasshook__`

Static Methods | [hide private]
_parseAmazonS3(parent) Parses an amazons3 configuration section. | source code

Properties | [hide private]
| amazons3 AmazonS3 configuration in terms of a `AmazonS3Config` object.
Inherited from `object`: `__class__`

Method Details | [hide private]

### __init__(self, xmlData=None, xmlPath=None, validate=True) (Constructor) | source code
Initializes a configuration object. If you initialize the object without passing either `xmlData` or `xmlPath` then configuration will be empty and will be invalid until it is filled in properly. No reference to the original XML data or original path is saved off by this class. Once the data has been parsed (successfully or not) this original information is discarded. Unless the `validate` argument is `False`, the LocalConfig.validate method will be called (with its default arguments) against configuration after successfully parsing any passed-in XML. Keep in mind that even if `validate` is `False`, it might not be possible to parse the passed-in XML document if lower-level validations fail. Parameters: `xmlData` (String data.) - XML data representing configuration. `xmlPath` (Absolute path to a file on disk.) - Path to an XML file on disk. `validate` (Boolean true/false.) - Validate the document after parsing it. Raises: `ValueError` - If both `xmlData` and `xmlPath` are passed-in. `ValueError` - If the XML data in `xmlData` or `xmlPath` cannot be parsed. `ValueError` - If the parsed configuration document is not valid. Overrides: object.__init__ Note: It is strongly suggested that the `validate` option always be set to `True` (the default) unless there is a specific need to read in invalid configuration from disk.

### __repr__(self) (Representation operator) | source code
Official string representation for class instance. Overrides: object.__repr__

### __str__(self) (Informal representation operator) | source code
Informal string representation for class instance. Overrides: object.__str__

### __cmp__(self, other) (Comparison operator) | source code
Original Python 2 comparison operator. Lists within this class are "unordered" for equality comparisons. Parameters: `other` - Other object to compare to. Returns: -1/0/1 depending on whether self is `<`, `=` or `>` other.

### validate(self) | source code
Validates configuration represented by the object. AmazonS3 configuration must be filled in. Within that, the s3Bucket target must be filled in Raises: `ValueError` - If one of the validations fails.

### addConfig(self, xmlDom, parentNode) | source code
Adds an <amazons3> configuration section as the next child of a parent. Third parties should use this function to write configuration related to this extension. We add the following fields to the document:
      warnMidnite                 //cb_config/amazons3/warn_midnite
      s3Bucket                    //cb_config/amazons3/s3_bucket
      encryptCommand              //cb_config/amazons3/encrypt
      fullBackupSizeLimit         //cb_config/amazons3/full_size_limit
      incrementalBackupSizeLimit  //cb_config/amazons3/incr_size_limit
Parameters: `xmlDom` - DOM tree as from `impl.createDocument()`. `parentNode` - Parent that the section should be appended to.

### _setAmazonS3(self, value) | source code
Property target used to set the amazons3 configuration value. If not `None`, the value must be a `AmazonS3Config` object. Raises: `ValueError` - If the value is not a `AmazonS3Config`

### _parseXmlData(self, xmlData) | source code
Internal method to parse an XML string into the object. This method parses the XML document into a DOM tree (`xmlDom`) and then calls a static method to parse the amazons3 configuration section. Parameters: `xmlData` (String data) - XML data to be parsed Raises: `ValueError` - If the XML cannot be successfully parsed.

### _parseAmazonS3(parent) Static Method | source code
Parses an amazons3 configuration section. We read the following individual fields:
      warnMidnite                 //cb_config/amazons3/warn_midnite
      s3Bucket                    //cb_config/amazons3/s3_bucket
      encryptCommand              //cb_config/amazons3/encrypt
      fullBackupSizeLimit         //cb_config/amazons3/full_size_limit
      incrementalBackupSizeLimit  //cb_config/amazons3/incr_size_limit
Parameters: `parent` - Parent node to search beneath. Returns: `AmazonS3Config` object or `None` if the section does not exist. Raises: `ValueError` - If some filled-in value is invalid.

Property Details | [hide private]

### amazons3 AmazonS3 configuration in terms of a `AmazonS3Config` object. Get Method: _getAmazonS3(self) - Property target used to get the amazons3 configuration value. Set Method: _setAmazonS3(self, value) - Property target used to set the amazons3 configuration value.