Package org.apache.iceberg
Class GenericManifestFile
- java.lang.Object
-
- org.apache.iceberg.avro.SupportsIndexProjection
-
- org.apache.iceberg.GenericManifestFile
-
- All Implemented Interfaces:
java.io.Serializable
,org.apache.avro.generic.GenericContainer
,org.apache.avro.generic.IndexedRecord
,org.apache.avro.specific.SpecificData.SchemaConstructable
,ManifestFile
,StructLike
public class GenericManifestFile extends SupportsIndexProjection implements ManifestFile, StructLike, org.apache.avro.generic.IndexedRecord, org.apache.avro.specific.SpecificData.SchemaConstructable, java.io.Serializable
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
GenericManifestFile.CopyBuilder
-
Nested classes/interfaces inherited from interface org.apache.iceberg.ManifestFile
ManifestFile.PartitionFieldSummary
-
-
Field Summary
-
Fields inherited from interface org.apache.iceberg.ManifestFile
ADDED_FILES_COUNT, ADDED_ROWS_COUNT, DELETED_FILES_COUNT, DELETED_ROWS_COUNT, EXISTING_FILES_COUNT, EXISTING_ROWS_COUNT, KEY_METADATA, LENGTH, MANIFEST_CONTENT, MIN_SEQUENCE_NUMBER, PARTITION_SUMMARIES, PARTITION_SUMMARY_TYPE, PATH, SCHEMA, SEQUENCE_NUMBER, SNAPSHOT_ID, SPEC_ID
-
-
Constructor Summary
Constructors Constructor Description GenericManifestFile(java.lang.String path, long length, int specId, ManifestContent content, long sequenceNumber, long minSequenceNumber, java.lang.Long snapshotId, int addedFilesCount, long addedRowsCount, int existingFilesCount, long existingRowsCount, int deletedFilesCount, long deletedRowsCount, java.util.List<ManifestFile.PartitionFieldSummary> partitions, java.nio.ByteBuffer keyMetadata)
GenericManifestFile(org.apache.avro.Schema avroSchema)
Used by Avro reflection to instantiate this class when reading manifest files.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Integer
addedFilesCount()
Returns the number of files with status ADDED in the manifest file.java.lang.Long
addedRowsCount()
Returns the total number of rows in all files with status ADDED in the manifest file.ManifestContent
content()
Returns the content stored in the manifest; either DATA or DELETES.ManifestFile
copy()
Copies thismanifest file
.static GenericManifestFile.CopyBuilder
copyOf(ManifestFile manifestFile)
java.lang.Integer
deletedFilesCount()
Returns the number of files with status DELETED in the manifest file.java.lang.Long
deletedRowsCount()
Returns the total number of rows in all files with status DELETED in the manifest file.boolean
equals(java.lang.Object other)
java.lang.Integer
existingFilesCount()
Returns the number of files with status EXISTING in the manifest file.java.lang.Long
existingRowsCount()
Returns the total number of rows in all files with status EXISTING in the manifest file.java.lang.Object
get(int pos)
org.apache.avro.Schema
getSchema()
int
hashCode()
protected <T> T
internalGet(int pos, java.lang.Class<T> javaClass)
protected <T> void
internalSet(int basePos, T value)
java.nio.ByteBuffer
keyMetadata()
Returns metadata about how this manifest file is encrypted, or null if the file is stored in plain text.java.lang.Long
lazyLength()
long
length()
Returns length of the manifest file.long
minSequenceNumber()
Returns the lowest data sequence number of any live file in the manifest.java.util.List<ManifestFile.PartitionFieldSummary>
partitions()
Returns a list ofpartition field summaries
.int
partitionSpecId()
Returns iD of thePartitionSpec
used to write the manifest file.java.lang.String
path()
Returns fully qualified path to the file, suitable for constructing a Hadoop Path.void
put(int i, java.lang.Object v)
long
sequenceNumber()
Returns the sequence number of the commit that added the manifest file.int
size()
java.lang.Long
snapshotId()
Returns iD of the snapshot that added the manifest file to table metadata.java.lang.String
toString()
-
Methods inherited from class org.apache.iceberg.avro.SupportsIndexProjection
get, set
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.iceberg.ManifestFile
hasAddedFiles, hasDeletedFiles, hasExistingFiles
-
Methods inherited from interface org.apache.iceberg.StructLike
get, set
-
-
-
-
Constructor Detail
-
GenericManifestFile
public GenericManifestFile(org.apache.avro.Schema avroSchema)
Used by Avro reflection to instantiate this class when reading manifest files.
-
GenericManifestFile
public GenericManifestFile(java.lang.String path, long length, int specId, ManifestContent content, long sequenceNumber, long minSequenceNumber, java.lang.Long snapshotId, int addedFilesCount, long addedRowsCount, int existingFilesCount, long existingRowsCount, int deletedFilesCount, long deletedRowsCount, java.util.List<ManifestFile.PartitionFieldSummary> partitions, java.nio.ByteBuffer keyMetadata)
-
-
Method Detail
-
path
public java.lang.String path()
Description copied from interface:ManifestFile
Returns fully qualified path to the file, suitable for constructing a Hadoop Path.- Specified by:
path
in interfaceManifestFile
-
lazyLength
public java.lang.Long lazyLength()
-
length
public long length()
Description copied from interface:ManifestFile
Returns length of the manifest file.- Specified by:
length
in interfaceManifestFile
-
partitionSpecId
public int partitionSpecId()
Description copied from interface:ManifestFile
Returns iD of thePartitionSpec
used to write the manifest file.- Specified by:
partitionSpecId
in interfaceManifestFile
-
content
public ManifestContent content()
Description copied from interface:ManifestFile
Returns the content stored in the manifest; either DATA or DELETES.- Specified by:
content
in interfaceManifestFile
-
sequenceNumber
public long sequenceNumber()
Description copied from interface:ManifestFile
Returns the sequence number of the commit that added the manifest file.- Specified by:
sequenceNumber
in interfaceManifestFile
-
minSequenceNumber
public long minSequenceNumber()
Description copied from interface:ManifestFile
Returns the lowest data sequence number of any live file in the manifest.- Specified by:
minSequenceNumber
in interfaceManifestFile
-
snapshotId
public java.lang.Long snapshotId()
Description copied from interface:ManifestFile
Returns iD of the snapshot that added the manifest file to table metadata.- Specified by:
snapshotId
in interfaceManifestFile
-
addedFilesCount
public java.lang.Integer addedFilesCount()
Description copied from interface:ManifestFile
Returns the number of files with status ADDED in the manifest file.- Specified by:
addedFilesCount
in interfaceManifestFile
-
addedRowsCount
public java.lang.Long addedRowsCount()
Description copied from interface:ManifestFile
Returns the total number of rows in all files with status ADDED in the manifest file.- Specified by:
addedRowsCount
in interfaceManifestFile
-
existingFilesCount
public java.lang.Integer existingFilesCount()
Description copied from interface:ManifestFile
Returns the number of files with status EXISTING in the manifest file.- Specified by:
existingFilesCount
in interfaceManifestFile
-
existingRowsCount
public java.lang.Long existingRowsCount()
Description copied from interface:ManifestFile
Returns the total number of rows in all files with status EXISTING in the manifest file.- Specified by:
existingRowsCount
in interfaceManifestFile
-
deletedFilesCount
public java.lang.Integer deletedFilesCount()
Description copied from interface:ManifestFile
Returns the number of files with status DELETED in the manifest file.- Specified by:
deletedFilesCount
in interfaceManifestFile
-
deletedRowsCount
public java.lang.Long deletedRowsCount()
Description copied from interface:ManifestFile
Returns the total number of rows in all files with status DELETED in the manifest file.- Specified by:
deletedRowsCount
in interfaceManifestFile
-
partitions
public java.util.List<ManifestFile.PartitionFieldSummary> partitions()
Description copied from interface:ManifestFile
Returns a list ofpartition field summaries
.Each summary corresponds to a field in the manifest file's partition spec, by ordinal. For example, the partition spec [ ts_day=date(ts), type=identity(type) ] will have 2 summaries. The first summary is for the ts_day partition field and the second is for the type partition field.
- Specified by:
partitions
in interfaceManifestFile
- Returns:
- a list of partition field summaries, one for each field in the manifest's spec
-
keyMetadata
public java.nio.ByteBuffer keyMetadata()
Description copied from interface:ManifestFile
Returns metadata about how this manifest file is encrypted, or null if the file is stored in plain text.- Specified by:
keyMetadata
in interfaceManifestFile
-
size
public int size()
- Specified by:
size
in interfaceStructLike
- Overrides:
size
in classSupportsIndexProjection
-
get
public java.lang.Object get(int pos)
- Specified by:
get
in interfaceorg.apache.avro.generic.IndexedRecord
-
internalGet
protected <T> T internalGet(int pos, java.lang.Class<T> javaClass)
- Specified by:
internalGet
in classSupportsIndexProjection
-
internalSet
protected <T> void internalSet(int basePos, T value)
- Specified by:
internalSet
in classSupportsIndexProjection
-
put
public void put(int i, java.lang.Object v)
- Specified by:
put
in interfaceorg.apache.avro.generic.IndexedRecord
-
copy
public ManifestFile copy()
Description copied from interface:ManifestFile
Copies thismanifest file
. Readers can reuse manifest file instances; use this method to make defensive copies.- Specified by:
copy
in interfaceManifestFile
- Returns:
- a copy of this manifest file
-
getSchema
public org.apache.avro.Schema getSchema()
- Specified by:
getSchema
in interfaceorg.apache.avro.generic.GenericContainer
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
copyOf
public static GenericManifestFile.CopyBuilder copyOf(ManifestFile manifestFile)
-
-