Class GeodeUtils
- java.lang.Object
-
- org.apache.calcite.adapter.geode.util.GeodeUtils
-
public class GeodeUtils extends java.lang.Object
Utilities for the Geode adapter.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
currentLocatorHost
private static int
currentLocatorPort
private static JavaTypeFactoryExtImpl
JAVA_TYPE_FACTORY
protected static org.slf4j.Logger
LOGGER
private static java.util.Map<java.lang.String,org.apache.geode.cache.Region>
REGION_MAP
Cache for the client proxy regions created in the current ClientCache.
-
Constructor Summary
Constructors Modifier Constructor Description private
GeodeUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static RelDataType
autodetectRelTypeFromRegion(org.apache.geode.cache.Region<?,?> region)
Extract the first entity of each Regions and use it to build a table types.static void
closeClientCache()
private static java.lang.Object
convert(java.lang.Object o, java.lang.Class clazz)
static java.lang.Object
convertToRowValues(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object geodeResultObject)
Converts a Geode object into a Row tuple.static org.apache.geode.cache.client.ClientCache
createClientCache(java.lang.String locatorHost, int locatorPort, java.lang.String autoSerializerPackagePath, boolean readSerialized)
Creates a Geode client instance connected to locator and configured to support PDX instances.static org.apache.geode.cache.Region
createRegion(org.apache.geode.cache.GemFireCache cache, java.lang.String regionName)
Obtains a proxy pointing to an existing Region on the serverprivate static RelDataType
createRelDataType(java.lang.Object regionEntry)
private static java.lang.Object
handleJavaObjectEntry(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object obj)
private static java.lang.Object
handlePdxInstanceEntry(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object obj)
private static java.lang.Object
handleStructEntry(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object obj)
-
-
-
Field Detail
-
LOGGER
protected static final org.slf4j.Logger LOGGER
-
REGION_MAP
private static final java.util.Map<java.lang.String,org.apache.geode.cache.Region> REGION_MAP
Cache for the client proxy regions created in the current ClientCache.
-
currentLocatorHost
private static java.lang.String currentLocatorHost
-
currentLocatorPort
private static int currentLocatorPort
-
JAVA_TYPE_FACTORY
private static final JavaTypeFactoryExtImpl JAVA_TYPE_FACTORY
-
-
Method Detail
-
createClientCache
public static org.apache.geode.cache.client.ClientCache createClientCache(java.lang.String locatorHost, int locatorPort, java.lang.String autoSerializerPackagePath, boolean readSerialized)
Creates a Geode client instance connected to locator and configured to support PDX instances.If an old instance exists, it will be destroyed and re-created.
- Parameters:
locatorHost
- Locator's host addresslocatorPort
- Locator's portautoSerializerPackagePath
- package name of the Domain classes loaded in the regions- Returns:
- Returns a Geode
ClientCache
instance connected to Geode cluster
-
closeClientCache
public static void closeClientCache()
-
createRegion
public static org.apache.geode.cache.Region createRegion(org.apache.geode.cache.GemFireCache cache, java.lang.String regionName)
Obtains a proxy pointing to an existing Region on the server- Parameters:
cache
-GemFireCache
instance to interact with the Geode serverregionName
- Name of the region to create proxy for.- Returns:
- Returns a Region proxy to a remote (on the Server) regions.
-
convertToRowValues
public static java.lang.Object convertToRowValues(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object geodeResultObject)
Converts a Geode object into a Row tuple.- Parameters:
relDataTypeFields
- Table relation typesgeodeResultObject
- Object value returned by Geode query- Returns:
- List of objects values corresponding to the relDataTypeFields
-
handleStructEntry
private static java.lang.Object handleStructEntry(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object obj)
-
handlePdxInstanceEntry
private static java.lang.Object handlePdxInstanceEntry(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object obj)
-
handleJavaObjectEntry
private static java.lang.Object handleJavaObjectEntry(java.util.List<RelDataTypeField> relDataTypeFields, java.lang.Object obj)
-
convert
private static java.lang.Object convert(java.lang.Object o, java.lang.Class clazz)
-
autodetectRelTypeFromRegion
public static RelDataType autodetectRelTypeFromRegion(org.apache.geode.cache.Region<?,?> region)
Extract the first entity of each Regions and use it to build a table types.- Parameters:
region
- existing region- Returns:
- derived data type.
-
createRelDataType
private static RelDataType createRelDataType(java.lang.Object regionEntry)
-
-