github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/clients/hadoopfs/src/main/java/io/lakefs/storage/StorageAccessStrategy.java (about)

     1  package io.lakefs.storage;
     2  
     3  import java.io.IOException;
     4  import org.apache.hadoop.fs.FSDataInputStream;
     5  import org.apache.hadoop.fs.FSDataOutputStream;
     6  
     7  import io.lakefs.clients.sdk.ApiException;
     8  import io.lakefs.utils.ObjectLocation;
     9  
    10  public interface StorageAccessStrategy {
    11      default FSDataOutputStream createDataOutputStream(ObjectLocation objectLocation,
    12                                                       CreateOutputStreamParams params) throws ApiException, IOException {
    13          return createDataOutputStream(objectLocation, params, true);
    14      }
    15  
    16      FSDataOutputStream createDataOutputStream(ObjectLocation objectLocation, CreateOutputStreamParams params, boolean overwrite)
    17              throws ApiException, IOException;
    18  
    19      FSDataInputStream createDataInputStream(ObjectLocation objectLocation, int bufSize) throws ApiException, IOException;
    20  }