Class GeodeUtils


  • public class GeodeUtils
    extends java.lang.Object
    Utilities for the Geode adapter.
    • 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 server
      private 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)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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
    • Constructor Detail

      • GeodeUtils

        private GeodeUtils()
    • 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 address
        locatorPort - Locator's port
        autoSerializerPackagePath - 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 server
        regionName - 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 types
        geodeResultObject - 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)