public class GCSFileIO
extends java.lang.Object
implements org.apache.iceberg.io.DelegateFileIO
Locations follow the conventions used by BlobId.fromGsUtilUri that follow the
convention
gs://<bucket>/<blob_path>
| Constructor and Description |
|---|
GCSFileIO()
No-arg constructor to load the FileIO dynamically.
|
GCSFileIO(org.apache.iceberg.util.SerializableSupplier<com.google.cloud.storage.Storage> storageSupplier,
GCPProperties gcpProperties)
Constructor with custom storage supplier and GCP properties.
|
| Modifier and Type | Method and Description |
|---|---|
com.google.cloud.storage.Storage |
client() |
void |
close() |
void |
deleteFile(java.lang.String path) |
void |
deleteFiles(java.lang.Iterable<java.lang.String> pathsToDelete) |
void |
deletePrefix(java.lang.String prefix) |
void |
initialize(java.util.Map<java.lang.String,java.lang.String> props) |
java.lang.Iterable<org.apache.iceberg.io.FileInfo> |
listPrefix(java.lang.String prefix) |
org.apache.iceberg.io.InputFile |
newInputFile(java.lang.String path) |
org.apache.iceberg.io.InputFile |
newInputFile(java.lang.String path,
long length) |
org.apache.iceberg.io.OutputFile |
newOutputFile(java.lang.String path) |
java.util.Map<java.lang.String,java.lang.String> |
properties() |
public GCSFileIO()
All fields are initialized by calling initialize(Map) later.
public GCSFileIO(org.apache.iceberg.util.SerializableSupplier<com.google.cloud.storage.Storage> storageSupplier,
GCPProperties gcpProperties)
Calling initialize(Map) will overwrite information set in this
constructor.
storageSupplier - storage suppliergcpProperties - gcp propertiespublic org.apache.iceberg.io.InputFile newInputFile(java.lang.String path)
newInputFile in interface org.apache.iceberg.io.FileIOpublic org.apache.iceberg.io.InputFile newInputFile(java.lang.String path,
long length)
newInputFile in interface org.apache.iceberg.io.FileIOpublic org.apache.iceberg.io.OutputFile newOutputFile(java.lang.String path)
newOutputFile in interface org.apache.iceberg.io.FileIOpublic void deleteFile(java.lang.String path)
deleteFile in interface org.apache.iceberg.io.FileIOpublic java.util.Map<java.lang.String,java.lang.String> properties()
properties in interface org.apache.iceberg.io.FileIOpublic com.google.cloud.storage.Storage client()
public void initialize(java.util.Map<java.lang.String,java.lang.String> props)
initialize in interface org.apache.iceberg.io.FileIOpublic void close()
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in interface org.apache.iceberg.io.FileIOpublic java.lang.Iterable<org.apache.iceberg.io.FileInfo> listPrefix(java.lang.String prefix)
listPrefix in interface org.apache.iceberg.io.SupportsPrefixOperationspublic void deletePrefix(java.lang.String prefix)
deletePrefix in interface org.apache.iceberg.io.SupportsPrefixOperationspublic void deleteFiles(java.lang.Iterable<java.lang.String> pathsToDelete)
throws org.apache.iceberg.io.BulkDeletionFailureException
deleteFiles in interface org.apache.iceberg.io.SupportsBulkOperationsorg.apache.iceberg.io.BulkDeletionFailureException