|
| AbstractDynamicMetadataProvider (bool defaultNegativeCache, const xercesc::DOMElement *e=0, bool deprecationSupport=true) |
| Constructor.
|
xmltooling::Lockable * | lock () |
void | unlock () |
const char * | getId () const |
| Returns an identifier for the provider for logging/status purposes.
|
const xmltooling::XMLObject * | getMetadata () const |
| Gets the entire metadata tree, after the registered filter has been applied.
|
std::pair< const EntityDescriptor *, const RoleDescriptor * > | getEntityDescriptor (const Criteria &criteria) const |
| Gets entity metadata based on supplied criteria.
|
void | outputStatus (std::ostream &os) const |
| Generate an XML representation of the provider's status.
|
void | emitChangeEvent () const |
| Convenience method for notifying every registered Observer of an event.
|
void | emitChangeEvent (const EntityDescriptor &) const |
| Convenience method for notifying every registered Observer of an event.
|
std::pair< const EntityDescriptor *, const RoleDescriptor * > | getEntityDescriptor (const Criteria &criteria) const |
| Gets entity metadata based on supplied criteria.
|
const EntitiesDescriptor * | getEntitiesDescriptor (const char *name, bool requireValidMetadata=true) const |
| Gets the metadata for a given group of entities.
|
const xmltooling::Credential * | resolve (const xmltooling::CredentialCriteria *criteria=0) const |
std::vector< constxmltooling::Credential * >::size_type | resolve (std::vector< const xmltooling::Credential * > &results, const xmltooling::CredentialCriteria *criteria=0) const |
virtual const EntitiesDescriptor * | getEntitiesDescriptor (const XMLCh *name, bool requireValidMetadata=true) const |
| Gets the metadata for a given group of entities.
|
virtual void | addObserver (const Observer *newObserver) const |
| Adds a metadata observer.
|
virtual const Observer * | removeObserver (const Observer *oldObserver) const |
| Removes a metadata observer.
|
virtual | ~MetadataProvider () |
| Destructor will delete any installed filters.
|
virtual void | addMetadataFilter (MetadataFilter *newFilter) |
| Adds a metadata filter to apply to any resolved metadata.
|
virtual MetadataFilter * | removeMetadataFilter (MetadataFilter *oldFilter) |
| Removes a metadata filter.
|
void | setContext (const MetadataFilterContext *ctx) |
| Sets a filtering context object for use by the filtering process.
|
virtual void | init ()=0 |
| Should be called after instantiating provider and adding filters, but before performing any lookup operations.
|
|
virtual EntityDescriptor * | resolve (const Criteria &criteria, std::string &cacheTag) const =0 |
| Resolves a metadata instance using the supplied criteria.
|
virtual time_t | cacheEntity (EntityDescriptor *entity, const std::string &cacheTag, bool locked=false) const |
| Index an entity and cache the fact of it being indexed.
|
time_t | computeNextRefresh (const EntityDescriptor &entity, time_t currentTime) const |
| Compute the number of seconds until the next refresh attempt.
|
EntityDescriptor * | entityFromStream (std::istream &stream) const |
| Parse and unmarshal the provided stream, returning the EntityDescriptor if there is one.
|
| AbstractMetadataProvider (const xercesc::DOMElement *e=0, bool deprecationSupport=true) |
| Constructor.
|
virtual void | indexEntity (EntityDescriptor *site, time_t &validUntil, bool replace=false) const |
| Loads an entity into the cache for faster lookup.
|
virtual void | indexGroup (EntitiesDescriptor *group, time_t &validUntil) const |
| Loads a group of entities into the cache for faster lookup.
|
virtual void | unindex (const XMLCh *entityID, bool freeSites=false) const |
| Clear a specific entity from the cache.
|
virtual void | clearDescriptorIndex (bool freeSites=false) |
| Clear the cache of known entities and groups.
|
| ObservableMetadataProvider (const xercesc::DOMElement *e=0, bool deprecationSupport=true) |
| Constructor.
|
| MetadataProvider (const xercesc::DOMElement *e, bool deprecationSupport=true) |
| Constructor.
|
void | doFilters (const MetadataFilterContext *ctx, xmltooling::XMLObject &xmlObject) const |
| Applies any installed filters to a metadata instance.
|
Simple implementation of a dynamic, caching MetadataProvider.