use of org.apache.geode.cache.client.ClientCacheFactory in project calcite by apache.
the class GeodeUtils method createClientCache.
/**
* Creates a Geode client instance connected to locator and configured to
* support PDX instances.
*
* <p>If an old instance exists, it will be destroyed and re-created.
*
* @param locatorHost Locator's host address
* @param locatorPort Locator's port
* @param autoSerializerPackagePath package name of the Domain classes loaded in the regions
* @return Returns a Geode {@link ClientCache} instance connected to Geode cluster
*/
public static synchronized ClientCache createClientCache(String locatorHost, int locatorPort, String autoSerializerPackagePath, boolean readSerialized) {
if (locatorPort != currentLocatorPort || !StringUtils.equalsIgnoreCase(currentLocatorHost, locatorHost)) {
LOGGER.info("Close existing ClientCache [" + currentLocatorHost + ":" + currentLocatorPort + "] for new Locator connection at: [" + locatorHost + ":" + locatorPort + "]");
currentLocatorHost = locatorHost;
currentLocatorPort = locatorPort;
closeClientCache();
}
try {
// client proxy regions can also be resolved from the regionMap
return ClientCacheFactory.getAnyInstance();
} catch (CacheClosedException cce) {
// Do nothing if there is no existing instance
}
return new ClientCacheFactory().addPoolLocator(locatorHost, locatorPort).setPdxSerializer(new ReflectionBasedAutoSerializer(autoSerializerPackagePath)).setPdxReadSerialized(readSerialized).setPdxPersistent(false).create();
}
use of org.apache.geode.cache.client.ClientCacheFactory in project calcite by apache.
the class BookMasterRegionTest method main.
public static void main(String[] args) throws Exception {
ClientCache clientCache = new ClientCacheFactory().addPoolLocator("localhost", 10334).setPdxSerializer(new ReflectionBasedAutoSerializer("org.apache.calcite.adapter.geode.*")).create();
// Using Key/Value
Region bookMaster = clientCache.createClientRegionFactory(ClientRegionShortcut.PROXY).create("BookMaster");
System.out.println("BookMaster = " + bookMaster.get(789));
// Using OQL
QueryService queryService = clientCache.getQueryService();
String oql = "select itemNumber, description, retailCost from /BookMaster";
SelectResults result = (SelectResults) queryService.newQuery(oql).execute();
System.out.println(result.asList());
}
Aggregations