Class GCSFileIO
- All Implemented Interfaces:
- Closeable,- Serializable,- AutoCloseable,- DelegateFileIO,- FileIO,- SupportsBulkOperations,- SupportsPrefixOperations,- SupportsStorageCredentials
Locations follow the conventions used by BlobId.fromGsUtilUri that follow the
 convention
 
gs://<bucket>/<blob_path>- See Also:
- 
Constructor SummaryConstructorsConstructorDescriptionNo-arg constructor to load the FileIO dynamically.GCSFileIO(SerializableSupplier<com.google.cloud.storage.Storage> storageSupplier) Constructor with custom storage supplier.GCSFileIO(SerializableSupplier<com.google.cloud.storage.Storage> storageSupplier, GCPProperties gcpProperties) Deprecated.
- 
Method SummaryModifier and TypeMethodDescriptioncom.google.cloud.storage.Storageclient()com.google.cloud.storage.Storagevoidclose()Close File IO to release underlying resources.voiddeleteFile(String path) Delete the file at the given path.voiddeleteFiles(Iterable<String> pathsToDelete) Delete the files at the given paths.voiddeletePrefix(String prefix) Delete all files under a prefix.voidinitialize(Map<String, String> props) Initialize File IO from catalog properties.listPrefix(String prefix) Return an iterable of all files under a prefix.newInputFile(String path) Get aInputFileinstance to read bytes from the file at the given path.newInputFile(String path, long length) Get aInputFileinstance to read bytes from the file at the given path, with a known file length.newOutputFile(String path) Get aOutputFileinstance to write bytes to the file at the given path.Returns the property map used to configure this FileIOvoidsetCredentials(List<StorageCredential> credentials) Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.iceberg.io.FileIOdeleteFile, deleteFile, newInputFile, newInputFile, newInputFile
- 
Constructor Details- 
GCSFileIOpublic GCSFileIO()No-arg constructor to load the FileIO dynamically.All fields are initialized by calling initialize(Map)later.
- 
GCSFileIOConstructor with custom storage supplier.- Parameters:
- storageSupplier- storage supplier
 
- 
GCSFileIO@Deprecated public GCSFileIO(SerializableSupplier<com.google.cloud.storage.Storage> storageSupplier, GCPProperties gcpProperties) Deprecated.since 1.10.0, will be removed in 1.11.0; useGCSFileIO(SerializableSupplier)withinitialize(Map)insteadConstructor with custom storage supplier and GCP properties.Calling initialize(Map)will overwrite information set in this constructor.- Parameters:
- storageSupplier- storage supplier
- gcpProperties- gcp properties
 
 
- 
- 
Method Details- 
newInputFileDescription copied from interface:FileIOGet aInputFileinstance to read bytes from the file at the given path.- Specified by:
- newInputFilein interface- FileIO
 
- 
newInputFileDescription copied from interface:FileIOGet aInputFileinstance to read bytes from the file at the given path, with a known file length.- Specified by:
- newInputFilein interface- FileIO
 
- 
newOutputFileDescription copied from interface:FileIOGet aOutputFileinstance to write bytes to the file at the given path.- Specified by:
- newOutputFilein interface- FileIO
 
- 
deleteFileDescription copied from interface:FileIODelete the file at the given path.- Specified by:
- deleteFilein interface- FileIO
 
- 
propertiesDescription copied from interface:FileIOReturns the property map used to configure this FileIO- Specified by:
- propertiesin interface- FileIO
 
- 
clientpublic com.google.cloud.storage.Storage client()
- 
client
- 
initializeDescription copied from interface:FileIOInitialize File IO from catalog properties.- Specified by:
- initializein interface- FileIO
- Parameters:
- props- catalog properties
 
- 
closepublic void close()Description copied from interface:FileIOClose File IO to release underlying resources.Calling this method is only required when this FileIO instance is no longer expected to be used, and the resources it holds need to be explicitly released to avoid resource leaks. 
- 
listPrefixDescription copied from interface:SupportsPrefixOperationsReturn an iterable of all files under a prefix.Hierarchical file systems (e.g. HDFS) may impose additional restrictions like the prefix must fully match a directory whereas key/value object stores may allow for arbitrary prefixes. - Specified by:
- listPrefixin interface- SupportsPrefixOperations
- Parameters:
- prefix- prefix to list
- Returns:
- iterable of file information
 
- 
deletePrefixDescription copied from interface:SupportsPrefixOperationsDelete all files under a prefix.Hierarchical file systems (e.g. HDFS) may impose additional restrictions like the prefix must fully match a directory whereas key/value object stores may allow for arbitrary prefixes. - Specified by:
- deletePrefixin interface- SupportsPrefixOperations
- Parameters:
- prefix- prefix to delete
 
- 
deleteFilesDescription copied from interface:SupportsBulkOperationsDelete the files at the given paths.- Specified by:
- deleteFilesin interface- SupportsBulkOperations
- Parameters:
- pathsToDelete- The paths to delete
- Throws:
- BulkDeletionFailureException- in case of failure to delete at least 1 file
 
- 
setCredentials- Specified by:
- setCredentialsin interface- SupportsStorageCredentials
 
- 
credentials- Specified by:
- credentialsin interface- SupportsStorageCredentials
 
 
- 
GCSFileIO(SerializableSupplier)withinitialize(Map)instead