# URIResolver.hpp

Go to the documentation of this file.

    00001 /*
    00002  * Copyright (c) 2001-2006
    00003  *     DecisionSoft Limited. All rights reserved.
    00004  * Copyright (c) 2004-2006
    00005  *     Progress Software Corporation. All rights reserved.
    00006  * Copyright (c) 2004-2006
    00007  *     Oracle. All rights reserved.
    00008  *
    00009  * See the file LICENSE for redistribution information.
    00010  *
    00011  * $Id: URIResolver.hpp,v 1.7 2006/11/01 16:37:12 jpcs Exp $
    00012  */
    00013
    00014 #ifndef _URIRESOLVER_HPP
    00015 #define _URIRESOLVER_HPP
    00016
    00017 #include <xqilla/framework/XQillaExport.hpp>
    00018 #include <xercesc/util/XercesDefs.hpp>
    00019
    00020 class DynamicContext;
    00021 class Sequence;
    00022
    00023 XERCES_CPP_NAMESPACE_BEGIN
    00024 class DOMDocument;
    00025 class DOMNodeList;
    00026 XERCES_CPP_NAMESPACE_END
    00027
    00031 class XQILLA_API URIResolver {
    00032   public:
    00033     /* virtual destructor, does nothing */
    00034     virtual ~URIResolver() {};
    00035
    00036     /* Resolve the given uri (and baseUri) to a Sequence (reference parameter). If the uri
    00037        is relative, the base uri can be obtained from the context. If the uri is not handled
    00038        by this URIResolver, returns false, otherwise returns true. */
    00039     virtual bool resolveDocument(Sequence &result, const XMLCh* uri, DynamicContext* context) = 0;
    00040
    00041     /* Resolve the given uri (and baseUri) to a Sequence (reference parameter). If the uri
    00042        is relative, the base uri can be obtained from the context. If the uri is not handled
    00043        by this URIResolver, returns false, otherwise returns true. */
    00044     virtual bool resolveCollection(Sequence &result, const XMLCh* uri, DynamicContext* context) = 0;
    00045
    00046     /* Resolve the default collection. If it is not defined, returns false, otherwise returns true. */
    00047     virtual bool resolveDefaultCollection(Sequence &result, DynamicContext* context) = 0;
    00048 };
    00049 #endif // _URIRESOLVER_HPP