00001 #ifndef __GEMFIRE_CQ_QUERY_H__
00002 #define __GEMFIRE_CQ_QUERY_H__
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include "gfcpp_globals.hpp"
00012 #include "gf_types.hpp"
00013
00014 #include "CqResults.hpp"
00015 #include "CqStatistics.hpp"
00016 #include "CqAttributes.hpp"
00017 #include "CqAttributesMutator.hpp"
00018 #include "CqState.hpp"
00019
00024 namespace gemfire
00025 {
00026
00039 class CPPCACHE_EXPORT CqQuery : public SharedBase
00040 {
00041
00042 public:
00043
00048 virtual const char * getQueryString() const = 0;
00053 virtual QueryPtr getQuery() const = 0;
00058 virtual const char* getName() const = 0;
00063 virtual const CqStatisticsPtr getStatistics() const = 0;
00068 virtual const CqAttributesPtr getCqAttributes() const = 0;
00073 virtual const CqAttributesMutatorPtr getCqAttributesMutator() const = 0;
00092 virtual CqResultsPtr executeWithInitialResults(
00093 uint32_t timeout = DEFAULT_QUERY_RESPONSE_TIMEOUT) = 0;
00094
00110 virtual void execute() = 0;
00119 virtual void stop() = 0;
00120
00127 virtual CqState::StateType getState() = 0;
00128
00136 virtual void close() = 0;
00137
00142 virtual bool isRunning() = 0;
00143
00148 virtual bool isStopped() = 0;
00149
00154 virtual bool isClosed() = 0;
00155
00161 virtual bool isDurable() = 0;
00162 };
00163
00164 }
00165
00166 #endif //ifndef __GEMFIRE_CQ_QUERY_H__