[ https://issues.apache.org/jira/browse/PARQUET-2347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17768412#comment-17768412 ]
ASF GitHub Bot commented on PARQUET-2347: ----------------------------------------- amousavigourabi commented on code in PR #1141: URL: https://github.com/apache/parquet-mr/pull/1141#discussion_r1335212534 ########## parquet-thrift/src/main/java/org/apache/parquet/hadoop/thrift/AbstractThriftWriteSupport.java: ########## @@ -40,14 +42,22 @@ public abstract class AbstractThriftWriteSupport<T> extends WriteSupport<T> { public static final String PARQUET_THRIFT_CLASS = "parquet.thrift.class"; private static final Logger LOG = LoggerFactory.getLogger(AbstractThriftWriteSupport.class); - private static Configuration conf; + private static ParquetConfiguration conf; public static void setGenericThriftClass(Configuration configuration, Class<?> thriftClass) { + setGenericThriftClass(new HadoopParquetConfiguration(configuration), thriftClass); + } + + public static void setGenericThriftClass(ParquetConfiguration configuration, Class<?> thriftClass) { conf = configuration; configuration.set(PARQUET_THRIFT_CLASS, thriftClass.getName()); } public static Class getGenericThriftClass(Configuration configuration) { + return getGenericThriftClass(new HadoopParquetConfiguration(configuration)); + } + + public static Class<?> getGenericThriftClass(ParquetConfiguration configuration) { Review Comment: `Class` is a generic type, raw use of which is discouraged. This is why I chose to give the generic `Class<?>` with a wildcard here. > Add interface layer between Parquet and Hadoop Configuration > ------------------------------------------------------------ > > Key: PARQUET-2347 > URL: https://issues.apache.org/jira/browse/PARQUET-2347 > Project: Parquet > Issue Type: Improvement > Components: parquet-mr > Reporter: Atour Mousavi Gourabi > Priority: Minor > > Parquet relies heavily on a few Hadoop classes, such as its Configuration > class, which is used throughout Parquet's reading and writing logic. If we > include our own interface for this, this could potentially allow users to use > Parquet's readers and writers without the Hadoop dependency later on. > In order to preserve backward compatibility and avoid breaking downstream > projects, the constructors and methods using Hadoop's constructor should be > preserved for the time being, though I would favour deprecation in the near > future. > This is part of an effort that has been [discussed on the dev mailing > list|https://lists.apache.org/thread/4wl0l3d9dkpx4w69jx3rwnjk034dtqr8]. -- This message was sent by Atlassian Jira (v8.20.10#820010)