QueryService is the class obtained from a Cache.
More...
QueryService is the class obtained from a Cache.
A Query is created from a QueryService and executed on the server returning a SelectResults which can be either a ResultSet or a StructSet.
◆ closeCqs()
virtual void apache::geode::client::QueryService::closeCqs |
( |
| ) |
|
|
pure virtual |
Close all CQs, and release resources associated with executing CQs.
◆ executeCqs()
virtual void apache::geode::client::QueryService::executeCqs |
( |
| ) |
|
|
pure virtual |
@nativeclient Executes all the cqs on this client.
@endnativeclient
◆ getAllDurableCqsFromServer()
virtual std::shared_ptr<CacheableArrayList> apache::geode::client::QueryService::getAllDurableCqsFromServer |
( |
| ) |
const |
|
pure virtual |
Gets all the durable CQs registered by this client.
- Returns
- List of names of registered durable CQs, empty list if no durable cqs.
◆ getCq()
virtual std::shared_ptr<CqQuery> apache::geode::client::QueryService::getCq |
( |
const std::string & |
name | ) |
const |
|
pure virtual |
Retrieve a CqQuery by name.
- Returns
- the CqQuery or nullptr if not found
◆ getCqs()
virtual query_container_type apache::geode::client::QueryService::getCqs |
( |
| ) |
const |
|
pure virtual |
@nativeclient Retrieve all registered CQs @endnativeclient
◆ getCqServiceStatistics()
virtual std::shared_ptr<CqServiceStatistics> apache::geode::client::QueryService::getCqServiceStatistics |
( |
| ) |
const |
|
pure virtual |
@nativeclient Get statistics information for all CQs
- Returns
- the CqServiceStatistics @endnativeclient
◆ newCq() [1/2]
virtual std::shared_ptr<CqQuery> apache::geode::client::QueryService::newCq |
( |
std::string |
name, |
|
|
std::string |
querystr, |
|
|
const std::shared_ptr< CqAttributes > & |
cqAttr, |
|
|
bool |
isDurable = false |
|
) |
| |
|
pure virtual |
Constructs a new named continuous query, represented by an instance of CqQuery.
The CqQuery is not executed, however, until the execute method is invoked on the CqQuery. The name of the query will be used to identify this query in statistics archival.
- Parameters
-
cqName | the String name for this query |
queryString | the OQL query |
cqAttributes | the CqAttributes |
isDurable | true if the CQ is durable |
- Returns
- the newly created CqQuery object
- Exceptions
-
CqExistsException | if a CQ by this name already exists on this client |
IllegalArgumentException | if queryString is null, or cqAttr is nullptr |
IllegalStateException | if this method is called from a cache server |
QueryInvalidException | if there is a syntax error in the query |
CqException | if failed to create cq, failure during creating managing cq metadata info. |
CqInvalidException | if the query doesnot meet the CQ constraints. E.g.: Query string should refer only one region, join not supported. The query must be a SELECT statement. DISTINCT queries are not supported. Projections are not supported. Only one iterator in the FROM clause is supported, and it must be a region path. Bind parameters in the query are not supported for the initial release. |
◆ newCq() [2/2]
virtual std::shared_ptr<CqQuery> apache::geode::client::QueryService::newCq |
( |
std::string |
querystr, |
|
|
const std::shared_ptr< CqAttributes > & |
cqAttr, |
|
|
bool |
isDurable = false |
|
) |
| |
|
pure virtual |
@nativeclient Constructs a new named continuous query, represented by an instance of CqQuery.
The CqQuery is not executed, however, until the execute method is invoked on the CqQuery. The name of the query will be used to identify this query in statistics archival.
- Parameters
-
queryString | the OQL query |
cqAttributes | the CqAttributes |
isDurable | true if the CQ is durable |
- Returns
- the newly created CqQuery object
- Exceptions
-
CqExistsException | if a CQ by this name already exists on this client |
IllegalArgumentException | if queryString is null, or cqAttr is nullptr |
IllegalStateException | if this method is called from a cache server |
QueryInvalidException | if there is a syntax error in the query |
CqException | if failed to create cq, failure during creating managing cq metadata info. |
CqInvalidException | if the query doesnot meet the CQ constraints. E.g.: Query string should refer only one region, join not supported. The query must be a SELECT statement. DISTINCT queries are not supported. Projections are not supported. Only one iterator in the FROM clause is supported, and it must be a region path. Bind parameters in the query are not supported for the initial release. |
@endnativeclient
◆ newQuery()
virtual std::shared_ptr<Query> apache::geode::client::QueryService::newQuery |
( |
std::string |
querystr | ) |
|
|
pure virtual |
Get a new Query with the specified query string.
- Parameters
-
querystr | The query string with which to create a new Query. |
- Returns
- A smart pointer to the Query.
◆ stopCqs()
virtual void apache::geode::client::QueryService::stopCqs |
( |
| ) |
|
|
pure virtual |
Stops all the cqs on this client.