Class WasbTranslatingFileIOFactory

java.lang.Object
org.apache.polaris.service.catalog.io.WasbTranslatingFileIOFactory
All Implemented Interfaces:
FileIOFactory

@ApplicationScoped @Identifier("wasb") public class WasbTranslatingFileIOFactory extends Object implements FileIOFactory
A FileIOFactory that translates WASB paths to ABFS ones
  • Constructor Details

    • WasbTranslatingFileIOFactory

      @Inject public WasbTranslatingFileIOFactory(S3AccessConfig s3AccessConfig)
  • Method Details

    • loadFileIO

      public org.apache.iceberg.io.FileIO loadFileIO(@NonNull org.apache.polaris.core.storage.StorageAccessConfig accessConfig, @NonNull String ioImplClassName, @NonNull Map<String,String> properties)
      Description copied from interface: FileIOFactory
      Loads a FileIO implementation for server-side use (metadata read/write, purge).

      This method may obtain subscoped credentials to restrict the FileIO's permissions, ensuring secure and limited access to the table's data and locations.

      storageAccessConfig is authoritative for credentials and storage-config extras. properties may carry catalog-trusted contextual settings (for example table-default.*). Callers must not pass table metadata.properties(), which can include caller-controlled FileIO client settings such as s3.endpoint.

      Specified by:
      loadFileIO in interface FileIOFactory
      Parameters:
      accessConfig - the storage access configuration containing credentials and other properties.
      ioImplClassName - the class name of the FileIO implementation to load.
      properties - catalog-trusted contextual properties for the FileIO.
      Returns:
      a configured FileIO instance.