VMware Tanzu GemFire Native C++ Reference
10.1.5
|
Defines the interface for a container that gathers results from function execution. More...
Inherited by apache::geode::client::DefaultResultCollector.
Public Member Functions | |
virtual void | addResult (const std::shared_ptr< Cacheable > &resultOfSingleExecution)=0 |
Adds a single function execution result to the ResultCollector. More... | |
virtual void | clearResults ()=0 |
Geode will invoke this method before re-executing function (in case of Function Execution HA) This is to clear the previous execution results from the result collector. More... | |
virtual void | endResults ()=0 |
Geode will invoke this method when function execution has completed and all results for the execution have been obtained and added to the ResultCollector}. More... | |
virtual std::shared_ptr< CacheableVector > | getResult (std::chrono::milliseconds timeout=DEFAULT_QUERY_RESPONSE_TIMEOUT)=0 |
Returns the result of function execution, potentially blocking until all the results are available. More... | |
ResultCollector ()=default | |
public methods More... | |
Defines the interface for a container that gathers results from function execution.
Geode provides a default implementation for ResultCollector. Applications can choose to implement their own custom ResultCollector. A custom ResultCollector facilitates result sorting or aggregation. Aggregation functions like sum, minimum, maximum and average can also be applied to the result using a custom ResultCollector. Example:
auto rc = FunctionService::onRegion(region) .withArgs(args) .withFilter(keySet) .withCollector(new MyCustomResultCollector()) .execute(Function); //Application can do something else here before retrieving the result auto functionResult = rc.getResult();
|
default |
public methods
|
pure virtual |
Adds a single function execution result to the ResultCollector.
resultOfSingleExecution |
|
pure virtual |
Geode will invoke this method before re-executing function (in case of Function Execution HA) This is to clear the previous execution results from the result collector.
|
pure virtual |
Geode will invoke this method when function execution has completed and all results for the execution have been obtained and added to the ResultCollector}.
|
pure virtual |
Returns the result of function execution, potentially blocking until all the results are available.
If geode sendException is called then ResultCollector.getResult will not throw exception but will have exception {} as a part of results received. timeout if result is not ready within this time, exception will be thrown the result FunctionException if result retrieval fails UserFunctionExecutionException