Package org.apache.iceberg.aws.s3
Class S3InputFile
- java.lang.Object
-
- org.apache.iceberg.aws.s3.S3InputFile
-
- All Implemented Interfaces:
org.apache.iceberg.encryption.NativelyEncryptedFile,org.apache.iceberg.io.InputFile
public class S3InputFile extends java.lang.Object implements org.apache.iceberg.io.InputFile, org.apache.iceberg.encryption.NativelyEncryptedFile
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanexists()Note: this may be stale if file was deleted since metadata is cached for size/existence checks.static S3InputFilefromLocation(java.lang.String location, long length, software.amazon.awssdk.services.s3.S3Client client, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)static S3InputFilefromLocation(java.lang.String location, long length, software.amazon.awssdk.services.s3.S3Client client, software.amazon.awssdk.services.s3.S3AsyncClient asyncClient, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)static S3InputFilefromLocation(java.lang.String location, software.amazon.awssdk.services.s3.S3Client client, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)static S3InputFilefromLocation(java.lang.String location, software.amazon.awssdk.services.s3.S3Client client, software.amazon.awssdk.services.s3.S3AsyncClient asyncClient, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)longgetLength()Note: this may be stale if file was deleted since metadata is cached for size/existence checks.protected software.amazon.awssdk.services.s3.model.HeadObjectResponsegetObjectMetadata()java.lang.Stringlocation()protected org.apache.iceberg.metrics.MetricsContextmetrics()org.apache.iceberg.encryption.NativeFileCryptoParametersnativeCryptoParameters()org.apache.iceberg.io.SeekableInputStreamnewStream()S3FileIOPropertiess3FileIOProperties()voidsetNativeCryptoParameters(org.apache.iceberg.encryption.NativeFileCryptoParameters nativeCryptoParameters)java.lang.StringtoString()
-
-
-
Method Detail
-
fromLocation
public static S3InputFile fromLocation(java.lang.String location, software.amazon.awssdk.services.s3.S3Client client, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)
-
fromLocation
public static S3InputFile fromLocation(java.lang.String location, software.amazon.awssdk.services.s3.S3Client client, software.amazon.awssdk.services.s3.S3AsyncClient asyncClient, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)
-
fromLocation
public static S3InputFile fromLocation(java.lang.String location, long length, software.amazon.awssdk.services.s3.S3Client client, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)
-
fromLocation
public static S3InputFile fromLocation(java.lang.String location, long length, software.amazon.awssdk.services.s3.S3Client client, software.amazon.awssdk.services.s3.S3AsyncClient asyncClient, S3FileIOProperties s3FileIOProperties, org.apache.iceberg.metrics.MetricsContext metrics)
-
getLength
public long getLength()
Note: this may be stale if file was deleted since metadata is cached for size/existence checks.- Specified by:
getLengthin interfaceorg.apache.iceberg.io.InputFile- Returns:
- content length
-
newStream
public org.apache.iceberg.io.SeekableInputStream newStream()
- Specified by:
newStreamin interfaceorg.apache.iceberg.io.InputFile
-
nativeCryptoParameters
public org.apache.iceberg.encryption.NativeFileCryptoParameters nativeCryptoParameters()
- Specified by:
nativeCryptoParametersin interfaceorg.apache.iceberg.encryption.NativelyEncryptedFile
-
setNativeCryptoParameters
public void setNativeCryptoParameters(org.apache.iceberg.encryption.NativeFileCryptoParameters nativeCryptoParameters)
- Specified by:
setNativeCryptoParametersin interfaceorg.apache.iceberg.encryption.NativelyEncryptedFile
-
location
public java.lang.String location()
-
s3FileIOProperties
public S3FileIOProperties s3FileIOProperties()
-
metrics
protected org.apache.iceberg.metrics.MetricsContext metrics()
-
exists
public boolean exists()
Note: this may be stale if file was deleted since metadata is cached for size/existence checks.- Returns:
- flag
-
getObjectMetadata
protected software.amazon.awssdk.services.s3.model.HeadObjectResponse getObjectMetadata() throws software.amazon.awssdk.services.s3.model.S3Exception- Throws:
software.amazon.awssdk.services.s3.model.S3Exception
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-