dpaani commented on code in PR #7188:
URL: https://github.com/apache/iceberg/pull/7188#discussion_r1151048138


##########
api/src/main/java/org/apache/iceberg/io/MetadataLocationProvider.java:
##########
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.iceberg.io;
+
+import java.io.Serializable;
+
+/**
+ * Interface for providing metadata file locations to read/write tasks.
+ *
+ * <p>Implementations must be {@link Serializable} because instances will be 
serialized to tasks.
+ */
+public interface MetadataLocationProvider extends Serializable {

Review Comment:
   Hi @RussellSpitzer Regarding LocationProvider APIs, they are primarily 
related to data location, and one of the methods that is directly related to 
partition specification is:
   
   ```
   String newDataLocation(PartitionSpec spec, StructLike partitionData, String 
filename)
   ```
   
   I can refactor it by creating two diff interfaces (DataLocationProvider, 
MetadataLocationProvider) extending LocationProvider. 
   
   Adding metadata location APIs directly in LocationProvider also risky since 
it wont be backward compatible. 
   
   So , I thought of having MetadataLocationProvider may be good idea and 
later, we can also support dynamic class loading thru table properties if 
required to support diff implementation.
   
   Please advise what would be the correct approach I can follow
   
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to