Package ndg :: Package xacml :: Package parsers :: Package etree :: Module factory :: Class ReaderFactory
[hide private]

Class ReaderFactory

source code

           object --+    
                    |    
AbstractReaderFactory --+
                        |
                       ReaderFactory

Parser factory for ElementTree based parsers for XACML types

Nested Classes [hide private]

Inherited from AbstractReaderFactory: __metaclass__

Instance Methods [hide private]

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

Class Methods [hide private]
 
addReader(cls, xacmlType, readerClass)
Add custom classes and readers
source code
ndg.xacml.parsers.etree.reader.ETreeAbstractReader derived type
getReader(cls, xacmlType)
Return ElementTree based Reader class for the given input
source code
Class Variables [hide private]
  READER_CLASS_MAP = {}

Inherited from AbstractReaderFactory: __abstractmethods__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

addReader(cls, xacmlType, readerClass)
Class Method

source code 

Add custom classes and readers

Parameters:
  • xacmlType (type) - XACML type to return a parser class for
  • readerClass (ndg.xacml.parsers.etree.reader.ETreeAbstractReader derived type) - ElementTree based reader for the input XACML type.

getReader(cls, xacmlType)
Class Method

source code 

Return ElementTree based Reader class for the given input

Parameters:
  • xacmlType (type) - XACML type to return a parser class for
Returns: ndg.xacml.parsers.etree.reader.ETreeAbstractReader derived type
ElementTree based reader for the input XACML type. The class and module containing the class are inferred from the XACML class name input e.g.

ndg.xacml.core.Subject => ndg.xacml.parsers.etree.subjectreader.SubjectReader

Raises:
  • ImportError - if no reader class found for input type
Overrides: AbstractReaderFactory.getReader