Package org.apache.iceberg.inmemory
Class InMemoryOutputFile
java.lang.Object
org.apache.iceberg.inmemory.InMemoryOutputFile
- All Implemented Interfaces:
OutputFile
-
Constructor Summary
ConstructorDescriptionInMemoryOutputFile
(String location) InMemoryOutputFile
(String location, InMemoryFileIO parentFileIO) If the optional parentFileIO is provided, file-existence behaves similarly to S3FileIO; existence checks are performed up-front if creating without overwrite, but files only exist in the parentFileIO if close() has been called on the associated output streams (or pre-existing files are populated into the parentFileIO through other means). -
Method Summary
Modifier and TypeMethodDescriptioncreate()
Create a new file and return aPositionOutputStream
to it.Create a new file and return aPositionOutputStream
to it.location()
Return the location this output file will create.byte[]
Return anInputFile
for the location of this output file.
-
Constructor Details
-
InMemoryOutputFile
public InMemoryOutputFile() -
InMemoryOutputFile
-
InMemoryOutputFile
If the optional parentFileIO is provided, file-existence behaves similarly to S3FileIO; existence checks are performed up-front if creating without overwrite, but files only exist in the parentFileIO if close() has been called on the associated output streams (or pre-existing files are populated into the parentFileIO through other means).- Parameters:
location
- the location returned by location() of this OutputFile, the InputFile obtained from calling toInputFile(), and the location for looking up the associated InputFile from a parentFileIO, if non-null.parentFileIO
- if non-null, commits an associated InMemoryInputFile on close() into the parentFileIO, and uses the parentFileIO for "already exists" checks if creating without overwriting.
-
-
Method Details
-
create
Description copied from interface:OutputFile
Create a new file and return aPositionOutputStream
to it.If the file already exists, this will throw an exception.
- Specified by:
create
in interfaceOutputFile
- Returns:
- an output stream that can report its position
-
createOrOverwrite
Description copied from interface:OutputFile
Create a new file and return aPositionOutputStream
to it.If the file already exists, this will not throw an exception and will replace the file.
- Specified by:
createOrOverwrite
in interfaceOutputFile
- Returns:
- an output stream that can report its position
-
location
Description copied from interface:OutputFile
Return the location this output file will create.- Specified by:
location
in interfaceOutputFile
- Returns:
- the location of this output file
-
toInputFile
Description copied from interface:OutputFile
Return anInputFile
for the location of this output file.- Specified by:
toInputFile
in interfaceOutputFile
- Returns:
- an input file for the location of this output file
-
toByteArray
public byte[] toByteArray()
-