Github user ravipesala commented on a diff in the pull request: https://github.com/apache/carbondata/pull/3019#discussion_r244097300 --- Diff: integration/presto/src/main/java/org/apache/carbondata/presto/CarbondataConnectorFactory.java --- @@ -17,69 +17,179 @@ package org.apache.carbondata.presto; +import java.lang.management.ManagementFactory; +import java.lang.reflect.*; import java.util.Map; +import java.util.Optional; +import java.util.Set; import static java.util.Objects.requireNonNull; -import com.facebook.presto.spi.ConnectorHandleResolver; +import org.apache.carbondata.presto.impl.CarbonTableConfig; + +import com.facebook.presto.hive.HiveConnector; +import com.facebook.presto.hive.HiveConnectorFactory; +import com.facebook.presto.hive.HiveMetadataFactory; +import com.facebook.presto.hive.HiveProcedureModule; +import com.facebook.presto.hive.HiveSchemaProperties; +import com.facebook.presto.hive.HiveSessionProperties; +import com.facebook.presto.hive.HiveStorageFormat; +import com.facebook.presto.hive.HiveTableProperties; +import com.facebook.presto.hive.HiveTransactionManager; +import com.facebook.presto.hive.NodeVersion; +import com.facebook.presto.hive.RebindSafeMBeanServer; +import com.facebook.presto.hive.authentication.HiveAuthenticationModule; +import com.facebook.presto.hive.metastore.HiveMetastoreModule; +import com.facebook.presto.hive.s3.HiveS3Module; +import com.facebook.presto.hive.security.HiveSecurityModule; +import com.facebook.presto.hive.security.PartitionsAwareAccessControl; +import com.facebook.presto.spi.NodeManager; +import com.facebook.presto.spi.PageIndexerFactory; +import com.facebook.presto.spi.PageSorter; import com.facebook.presto.spi.classloader.ThreadContextClassLoader; -import com.facebook.presto.spi.connector.*; -import com.facebook.presto.spi.connector.classloader.ClassLoaderSafeConnectorMetadata; +import com.facebook.presto.spi.connector.Connector; +import com.facebook.presto.spi.connector.ConnectorAccessControl; +import com.facebook.presto.spi.connector.ConnectorContext; +import com.facebook.presto.spi.connector.ConnectorNodePartitioningProvider; +import com.facebook.presto.spi.connector.ConnectorPageSinkProvider; +import com.facebook.presto.spi.connector.ConnectorPageSourceProvider; +import com.facebook.presto.spi.connector.ConnectorSplitManager; +import com.facebook.presto.spi.connector.classloader.ClassLoaderSafeConnectorPageSinkProvider; import com.facebook.presto.spi.connector.classloader.ClassLoaderSafeConnectorPageSourceProvider; import com.facebook.presto.spi.connector.classloader.ClassLoaderSafeConnectorSplitManager; -import com.google.common.base.Throwables; +import com.facebook.presto.spi.connector.classloader.ClassLoaderSafeNodePartitioningProvider; +import com.facebook.presto.spi.procedure.Procedure; +import com.facebook.presto.spi.type.TypeManager; +import com.google.common.collect.ImmutableSet; import com.google.inject.Injector; +import com.google.inject.Key; +import com.google.inject.TypeLiteral; import io.airlift.bootstrap.Bootstrap; import io.airlift.bootstrap.LifeCycleManager; +import io.airlift.event.client.EventModule; import io.airlift.json.JsonModule; +import io.airlift.units.DataSize; +import org.weakref.jmx.guice.MBeanModule; +import sun.reflect.ConstructorAccessor; +import static com.google.common.base.Throwables.throwIfUnchecked; +import static io.airlift.configuration.ConfigBinder.configBinder; /** * Build Carbondata Connector * It will be called by CarbondataPlugin */ -public class CarbondataConnectorFactory implements ConnectorFactory { +public class CarbondataConnectorFactory extends HiveConnectorFactory { private final String name; --- End diff -- removed
---