zorba::URIMapper#include <zorba/uri_resolvers.h> Interface for URI mapping. Subclass this to provide a URI mapper to the method StaticContext::addURIMapper().Public Types
Public Static Attributes
Public Functions
Public TypesPublic Static AttributesDENY_ACCESSconst zorba::String DENY_ACCESS Public FunctionsmapperKindKind mapperKind() Declare whether this is a "component" or "candidate" URI mapper. Zorba supports two different kinds of URI mapping. The first, "component URI mapping", is to allow mapping from an input URI to a set of URIs which, taken together, comprise the entire entity to be resolved. This is currently only supported for module import, where it can be used to load a module which is physically stored in multiple library module files."Candidate URI mapping" is to allow mapping from an input URI to a set or URIs which are *potential* identifiers of the entity being resolved. Each of these URIs will be treated to any subsequent URI mappers, and then treated as URLs and passed in turn to all registered URLResolvers. This type of URI mapping is supported for all uses of URIs in Zorba. It can be used for example to redirect http: URIs to locally-cached file: URLs, or to provide several alternative locations for a given resource.If you do not override this method, the default is "candidate". mapURIvoid mapURI(const zorba::String aUri, EntityData const *aEntityData, std::vector< zorba::String > &oUris)=0 Transform an input URI into a set of output URIs. The "aEntityData" parameter informs the URIMapper what kind of entity is being referenced by URI. URIMappers may choose to make use of this information to alter their behaviour.Implementers of this method should provide output URIs by adding them to the oUris output parameter, using the push_back() method. They should not otherwise view or manipulate this vector.If a URIMapper does not wish to provide any output URIs for the given input URI, they should simply do nothing and return. In this case, Zorba will continue with the original, unmapped URI. URIMapper URIMapper()
~URIMapper ~URIMapper()
|