SourceForge.net Logo

URIResolver.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2001-2007
00003  *     DecisionSoft Limited. All rights reserved.
00004  * Copyright (c) 2004-2007
00005  *     Oracle. All rights reserved.
00006  *
00007  * Licensed under the Apache License, Version 2.0 (the "License");
00008  * you may not use this file except in compliance with the License.
00009  * You may obtain a copy of the License at
00010  *
00011  *     http://www.apache.org/licenses/LICENSE-2.0
00012  *
00013  * Unless required by applicable law or agreed to in writing, software
00014  * distributed under the License is distributed on an "AS IS" BASIS,
00015  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00016  * See the License for the specific language governing permissions and
00017  * limitations under the License.
00018  *
00019  * $Id: URIResolver.hpp,v 1.11 2007/11/29 16:53:00 jpcs Exp $
00020  */
00021 
00022 #ifndef _URIRESOLVER_HPP
00023 #define _URIRESOLVER_HPP
00024 
00025 #include <xqilla/framework/XQillaExport.hpp>
00026 
00027 #include <xercesc/util/XMemory.hpp>
00028 
00029 class DynamicContext;
00030 class Sequence;
00031 class QueryPathNode;
00032 
00036 class XQILLA_API URIResolver : public XERCES_CPP_NAMESPACE_QUALIFIER XMemory
00037 {
00038 public:
00039   /* virtual destructor, does nothing */
00040   virtual ~URIResolver() {};      
00041 
00042   /* Resolve the given uri (and baseUri) to a Sequence (reference parameter). If the uri
00043      is relative, the base uri can be obtained from the context. If the uri is not handled
00044      by this URIResolver, returns false, otherwise returns true. */
00045   virtual bool resolveDocument(Sequence &result, const XMLCh* uri, DynamicContext *context, const QueryPathNode *projection) = 0;
00046 
00047   /* Resolve the given uri (and baseUri) to a Sequence (reference parameter). If the uri
00048      is relative, the base uri can be obtained from the context. If the uri is not handled
00049      by this URIResolver, returns false, otherwise returns true. */
00050   virtual bool resolveCollection(Sequence &result, const XMLCh* uri, DynamicContext *context, const QueryPathNode *projection) = 0;
00051 
00052   /* Resolve the default collection. If it is not defined, returns false, otherwise returns true. */
00053   virtual bool resolveDefaultCollection(Sequence &result, DynamicContext *context, const QueryPathNode *projection) = 0;
00054 };
00055 #endif

Generated on Wed Dec 12 20:16:43 2007 for XQilla Simple API by  doxygen 1.5.1