Package org.eclipse.rdf4j.sail.memory
Class FileIO
- java.lang.Object
-
- org.eclipse.rdf4j.sail.memory.FileIO
-
class FileIO extends java.lang.ObjectFunctionality to read and write MemoryStore to/from a file.
-
-
Field Summary
Fields Modifier and Type Field Description private static intBMSF_VERSIONThe version number of the current format.static intBNODE_MARKERprivate java.nio.charset.CharsetDecodercharsetDecoderprivate java.nio.charset.CharsetEncodercharsetEncoderstatic intDATATYPE_LITERAL_MARKERstatic intEOF_MARKERstatic intEXPL_QUAD_MARKERstatic intEXPL_TRIPLE_MARKERprivate intformatVersionstatic intINF_QUAD_MARKERstatic intINF_TRIPLE_MARKERstatic intLANG_LITERAL_MARKERprivate static byte[]MAGIC_NUMBERMagic number for Binary Memory Store Filesstatic intNAMESPACE_MARKERstatic intPLAIN_LITERAL_MARKERstatic intRDFSTAR_TRIPLE_MARKERstatic intURI_MARKERprivate MemValueFactoryvf
-
Constructor Summary
Constructors Constructor Description FileIO(MemValueFactory vf)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidread(java.io.File dataFile, SailSink explicit, SailSink inferred)private voidreadNamespace(java.io.DataInputStream dataIn, SailSink store)private voidreadStatement(boolean hasContext, boolean isExplicit, java.io.DataInputStream dataIn, SailSink explicit, SailSink inferred)private java.lang.StringreadString(java.io.DataInputStream dataIn)private java.lang.StringreadStringV1(java.io.DataInputStream dataIn)Reads a string from the version 1 format, i.e.private java.lang.StringreadStringV2(java.io.DataInputStream dataIn)Reads a string from the version 2 format.private ValuereadValue(java.io.DataInputStream dataIn)private voidwrite(SailDataset explicit, SailDataset inferred, java.io.File dataFile)voidwrite(SailDataset explicit, SailDataset inferred, java.io.File syncFile, java.io.File dataFile)private voidwriteNamespaces(SailDataset store, java.io.DataOutputStream dataOut)voidwriteStatement(CloseableIteration<? extends Statement,SailException> stIter, int tripleMarker, int quadMarker, java.io.DataOutputStream dataOut)private voidwriteStatements(SailDataset explicit, SailDataset inferred, java.io.DataOutputStream dataOut)private voidwriteString(java.lang.String s, java.io.DataOutputStream dataOut)private voidwriteValue(Value value, java.io.DataOutputStream dataOut)
-
-
-
Field Detail
-
MAGIC_NUMBER
private static final byte[] MAGIC_NUMBER
Magic number for Binary Memory Store Files
-
BMSF_VERSION
private static final int BMSF_VERSION
The version number of the current format.- See Also:
- Constant Field Values
-
NAMESPACE_MARKER
public static final int NAMESPACE_MARKER
- See Also:
- Constant Field Values
-
EXPL_TRIPLE_MARKER
public static final int EXPL_TRIPLE_MARKER
- See Also:
- Constant Field Values
-
EXPL_QUAD_MARKER
public static final int EXPL_QUAD_MARKER
- See Also:
- Constant Field Values
-
INF_TRIPLE_MARKER
public static final int INF_TRIPLE_MARKER
- See Also:
- Constant Field Values
-
INF_QUAD_MARKER
public static final int INF_QUAD_MARKER
- See Also:
- Constant Field Values
-
URI_MARKER
public static final int URI_MARKER
- See Also:
- Constant Field Values
-
BNODE_MARKER
public static final int BNODE_MARKER
- See Also:
- Constant Field Values
-
PLAIN_LITERAL_MARKER
public static final int PLAIN_LITERAL_MARKER
- See Also:
- Constant Field Values
-
LANG_LITERAL_MARKER
public static final int LANG_LITERAL_MARKER
- See Also:
- Constant Field Values
-
DATATYPE_LITERAL_MARKER
public static final int DATATYPE_LITERAL_MARKER
- See Also:
- Constant Field Values
-
RDFSTAR_TRIPLE_MARKER
public static final int RDFSTAR_TRIPLE_MARKER
- See Also:
- Constant Field Values
-
EOF_MARKER
public static final int EOF_MARKER
- See Also:
- Constant Field Values
-
vf
private final MemValueFactory vf
-
charsetEncoder
private final java.nio.charset.CharsetEncoder charsetEncoder
-
charsetDecoder
private final java.nio.charset.CharsetDecoder charsetDecoder
-
formatVersion
private int formatVersion
-
-
Constructor Detail
-
FileIO
public FileIO(MemValueFactory vf)
-
-
Method Detail
-
write
public void write(SailDataset explicit, SailDataset inferred, java.io.File syncFile, java.io.File dataFile) throws java.io.IOException, SailException
- Throws:
java.io.IOExceptionSailException
-
write
private void write(SailDataset explicit, SailDataset inferred, java.io.File dataFile) throws java.io.IOException, SailException
- Throws:
java.io.IOExceptionSailException
-
read
public void read(java.io.File dataFile, SailSink explicit, SailSink inferred) throws java.io.IOException, SailException- Throws:
java.io.IOExceptionSailException
-
writeNamespaces
private void writeNamespaces(SailDataset store, java.io.DataOutputStream dataOut) throws java.io.IOException, SailException
- Throws:
java.io.IOExceptionSailException
-
readNamespace
private void readNamespace(java.io.DataInputStream dataIn, SailSink store) throws java.io.IOException, SailException- Throws:
java.io.IOExceptionSailException
-
writeStatements
private void writeStatements(SailDataset explicit, SailDataset inferred, java.io.DataOutputStream dataOut) throws java.io.IOException, SailException
- Throws:
java.io.IOExceptionSailException
-
writeStatement
public void writeStatement(CloseableIteration<? extends Statement,SailException> stIter, int tripleMarker, int quadMarker, java.io.DataOutputStream dataOut) throws java.io.IOException, SailException
- Throws:
java.io.IOExceptionSailException
-
readStatement
private void readStatement(boolean hasContext, boolean isExplicit, java.io.DataInputStream dataIn, SailSink explicit, SailSink inferred) throws java.io.IOException, java.lang.ClassCastException, SailException- Throws:
java.io.IOExceptionjava.lang.ClassCastExceptionSailException
-
writeValue
private void writeValue(Value value, java.io.DataOutputStream dataOut) throws java.io.IOException
- Throws:
java.io.IOException
-
readValue
private Value readValue(java.io.DataInputStream dataIn) throws java.io.IOException, java.lang.ClassCastException
- Throws:
java.io.IOExceptionjava.lang.ClassCastException
-
writeString
private void writeString(java.lang.String s, java.io.DataOutputStream dataOut) throws java.io.IOException- Throws:
java.io.IOException
-
readString
private java.lang.String readString(java.io.DataInputStream dataIn) throws java.io.IOException- Throws:
java.io.IOException
-
readStringV1
private java.lang.String readStringV1(java.io.DataInputStream dataIn) throws java.io.IOExceptionReads a string from the version 1 format, i.e. in Java's {@link DataInput#modified-utf-8 Modified UTF-8}.- Throws:
java.io.IOException
-
readStringV2
private java.lang.String readStringV2(java.io.DataInputStream dataIn) throws java.io.IOExceptionReads a string from the version 2 format. Strings are encoded as UTF-8 and are preceeded by a 32-bit integer (high byte first) specifying the length of the encoded string.- Throws:
java.io.IOException
-
-