Package ndg :: Package xacml :: Package parsers :: Package etree :: Module policyreader :: Class PolicyReader
[hide private]

Class PolicyReader

source code

            object --+        
                     |        
        AbstractReader --+    
                         |    
reader.ETreeAbstractReader --+
                             |
                            PolicyReader

Parse a Policy Document using ElementTree

Nested Classes [hide private]
NoneType TYPE
XACML type to instantiate from parsed object

Inherited from AbstractReader: __metaclass__

Instance Methods [hide private]
ndg.xacml.core.policy.Policy derived type
__call__(self, obj, common)
Parse policy object
source code
ndg.xacml.core.policy.Policy derived type
processElement(self, elem, common)
Parse policy object
source code

Inherited from reader.ETreeAbstractReader: __del__, __init__

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__

Class Methods [hide private]
XacmlCoreBase sub type
parse(cls, obj, common=None)
Parse from input object and return new XACML object As a special case, allow the common data to be None.
source code

Inherited from AbstractReader: __subclasshook__

Static Methods [hide private]

Inherited from reader.ETreeAbstractReader (private): _parse

Class Variables [hide private]
  __abstractmethods__ = frozenset([])
  _abc_cache = <_weakrefset.WeakSet object at 0x101cd7dd0>
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__call__(self, obj, common)
(Call operator)

source code 

Parse policy object

Parameters:
  • obj (ElementTree Element, or stream object) - input object to parse
  • common (from ndg.xacml.parsers.common.Common) - parsing common data
Returns: ndg.xacml.core.policy.Policy derived type
new XACML expression instance
Raises:
  • XMLParseError - error reading element
  • NotImplementedError - parsing is not implemented for rule combiner, combiner parameters and obligations elements.
Overrides: AbstractReader.__call__

parse(cls, obj, common=None)
Class Method

source code 

Parse from input object and return new XACML object As a special case, allow the common data to be None. This is because for parsing a policy rather than a policy set, no common data is needed.

Parameters:
  • obj (string, stream or other) - input source - file name, stream object or other
  • common (from ndg.xacml.parsers.common.Common) - parsing common data
Returns: XacmlCoreBase sub type
new XACML object
Overrides: AbstractReader.parse

processElement(self, elem, common)

source code 

Parse policy object

Parameters:
  • elem (ElementTree Element) - root element of policy
  • common (from ndg.xacml.parsers.common.Common) - parsing common data
Returns: ndg.xacml.core.policy.Policy derived type
new XACML expression instance
Raises:
  • XMLParseError - error reading element
  • NotImplementedError - parsing is not implemented for rule combiner, combiner parameters and obligations elements.