00001 #ifndef __GEMFIRE_QUERYSERVICE_H__ 00002 #define __GEMFIRE_QUERYSERVICE_H__ 00003 /*========================================================================= 00004 * Copyright (c) 2002-2014 Pivotal Software, Inc. All Rights Reserved. 00005 * This product is protected by U.S. and international copyright 00006 * and intellectual property laws. Pivotal products are covered by 00007 * more patents listed at http://www.pivotal.io/patents. 00008 *======================================================================== 00009 */ 00010 00011 #include "gfcpp_globals.hpp" 00012 #include "gf_types.hpp" 00013 #include "ExceptionTypes.hpp" 00014 #include "CqQuery.hpp" 00015 #include "CqAttributes.hpp" 00016 #include "CqServiceStatistics.hpp" 00017 00018 #include "Query.hpp" 00019 00024 namespace gemfire 00025 { 00026 00033 class CPPCACHE_EXPORT QueryService : public SharedBase 00034 { 00035 00036 public: 00037 00044 virtual QueryPtr newQuery(const char * querystr) = 0; 00045 00076 virtual CqQueryPtr newCq(const char* name, const char * querystr, CqAttributesPtr& cqAttr, bool isDurable=false) = 0; 00106 virtual CqQueryPtr newCq(const char * querystr, CqAttributesPtr& cqAttr, bool isDurable=false) = 0; 00113 virtual void closeCqs()=0; 00119 virtual void getCqs(VectorOfCqQuery& vec)=0; 00126 virtual CqQueryPtr getCq(const char* name)=0; 00132 virtual void executeCqs()=0; 00138 virtual void stopCqs()=0; 00145 virtual CqServiceStatisticsPtr getCqServiceStatistics()=0; 00146 00152 virtual CacheableArrayListPtr getAllDurableCqsFromServer() = 0; 00153 00154 }; 00155 00156 } //namespace gemfire 00157 00158 #endif //ifndef __GEMFIRE_QUERYSERVICE_H__