shibboleth-3.5.0

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
shibsp::AttributeDecoder Class Referenceabstract

Decodes XML objects into resolved Attributes. More...

`#include <shibsp/attribute/AttributeDecoder.h>`

## Public Member Functions
virtual Attribute * | decode (const xmltooling::GenericRequest *request, const std::vector< std::string > &ids, const xmltooling::XMLObject *xmlObject, const char *assertingParty=nullptr, const char *relyingParty=nullptr) const =0
| Decodes an XMLObject into a resolved Attribute. More...

## Protected Member Functions
| AttributeDecoder (const xercesc::DOMElement *e)
| Constructor. More...
virtual Attribute * | _decode (Attribute *attr) const
| Helper method to handle base class decoding housekeeping. More...
virtual std::pair< std::vector< xmltooling::XMLObject * >::const_iterator, std::vector< xmltooling::XMLObject * >::const_iterator > | valueRange (const xmltooling::GenericRequest *request, const std::vector< xmltooling::XMLObject * > &objects) const
| Helper method that returns a range of objects the decoder should operate on, based on the language settings of the decoder and the client request. More...

## Protected Attributes
bool | m_caseSensitive
| Flag for case sensitivity of decoded attributes.
bool | m_internal
| Flag for hiding attributes from CGI export.
bool | m_langAware
| Flag for language aware decoding.
std::string | m_hashAlg
| Hash algorithm to apply to decoded values.

## Detailed Description

Decodes XML objects into resolved Attributes.

## Constructor & Destructor Documentation

## ◆ AttributeDecoder()

shibsp::AttributeDecoder::AttributeDecoder | ( | const xercesc::DOMElement * | e | ) |
| protected

Constructor.

Parameters

  e | root of DOM to configure the decoder

## Member Function Documentation

## ◆ _decode()

virtual Attribute * shibsp::AttributeDecoder::_decode | ( | Attribute * | attr | ) | const
| protected virtual

Helper method to handle base class decoding housekeeping.

Parameters

  attr | the new Attribute object being created

Returns
  the attr parameter

## ◆ decode()

virtual Attribute * shibsp::AttributeDecoder::decode | ( | const xmltooling::GenericRequest * | request,
|  | const std::vector< std::string > & | ids,
|  | const xmltooling::XMLObject * | xmlObject,
|  | const char * | assertingParty = `nullptr`,
|  | const char * | relyingParty = `nullptr`
| ) |  | const
| pure virtual

Decodes an XMLObject into a resolved Attribute.

Parameters

  request | request triggering the decode, if any
  ids | array containing primary identifier in first position, followed by any aliases
  xmlObject | XMLObject to decode
  assertingParty | name of the party asserting the attribute
  relyingParty | name of the party relying on the attribute

Returns
  a resolved Attribute, or nullptr

## ◆ valueRange()

virtual std::pair< std::vector< xmltooling::XMLObject * >::const_iterator, std::vector< xmltooling::XMLObject * >::const_iterator > shibsp::AttributeDecoder::valueRange | ( | const xmltooling::GenericRequest * | request,
|  | const std::vector< xmltooling::XMLObject * > & | objects
| ) |  | const
| protected virtual

Helper method that returns a range of objects the decoder should operate on, based on the language settings of the decoder and the client request.

Parameters

  request | the client request, if any
  objects | the objects to examine

Returns
  a pair of iterators representing the range of objects to examine

The documentation for this class was generated from the following file:

- shibsp/attribute/AttributeDecoder.h