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: XQillaConfiguration.hpp,v 1.1 2007/02/07 12:13:11 jpcs Exp $ 00012 */ 00013 00014 #ifndef XQILLACONFIGURATION_H 00015 #define XQILLACONFIGURATION_H 00016 00017 #include <xqilla/framework/XQillaExport.hpp> 00018 #include <xqilla/simple-api/XQilla.hpp> 00019 00020 #include <xercesc/framework/MemoryManager.hpp> 00021 #include <xercesc/util/XMemory.hpp> 00022 00023 class DocumentCache; 00024 class SequenceBuilder; 00025 class ItemFactory; 00026 class UpdateFactory; 00027 class URIResolver; 00028 class StaticContext; 00029 class DynamicContext; 00030 00031 class XQILLA_API XQillaConfiguration : public XERCES_CPP_NAMESPACE_QUALIFIER XMemory 00032 { 00033 public: 00034 virtual ~XQillaConfiguration() {} 00035 00036 virtual DocumentCache *createDocumentCache(XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *memMgr) = 0; 00037 00038 virtual SequenceBuilder *createSequenceBuilder(const DynamicContext *context) = 0; 00039 00040 virtual ItemFactory *createItemFactory(DocumentCache *cache, 00041 XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *memMgr) = 0; 00042 00043 virtual UpdateFactory *createUpdateFactory(XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *memMgr) = 0; 00044 00045 virtual URIResolver *createDefaultURIResolver(XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *memMgr) = 0; 00046 00047 virtual void populateStaticContext(StaticContext *context) {} 00048 00049 virtual void populateDynamicContext(DynamicContext *context) {} 00050 00051 virtual void testInterrupt() {} 00052 }; 00053 00054 #endif