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, software.amazon.awssdk.services.s3.S3Client client, 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, long length, software.amazon.awssdk.services.s3.S3Client client, 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
-
-