Rebrand to Jena Elephas per community vote
Project: http://git-wip-us.apache.org/repos/asf/jena/repo Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/a6c0fefc Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/a6c0fefc Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/a6c0fefc Branch: refs/heads/master Commit: a6c0fefc7bec24484720748b6c5a2c1cc1b08919 Parents: 657fae5 Author: Rob Vesse <[email protected]> Authored: Mon Jan 5 14:55:12 2015 +0000 Committer: Rob Vesse <[email protected]> Committed: Mon Jan 5 14:55:12 2015 +0000 ---------------------------------------------------------------------- jena-hadoop-rdf/hadoop-rdf-common/pom.xml | 54 -- .../rdf/types/AbstractNodeTupleWritable.java | 193 ----- .../rdf/types/CharacteristicSetWritable.java | 298 -------- .../rdf/types/CharacteristicWritable.java | 160 ---- .../hadoop/rdf/types/NodeTupleWritable.java | 80 -- .../jena/hadoop/rdf/types/NodeWritable.java | 188 ----- .../jena/hadoop/rdf/types/QuadWritable.java | 136 ---- .../jena/hadoop/rdf/types/TripleWritable.java | 138 ---- .../comparators/SimpleBinaryComparator.java | 34 - .../rdf/types/converters/ThriftConverter.java | 147 ---- .../rdf/io/types/CharacteristicTests.java | 210 ----- .../jena/hadoop/rdf/io/types/RdfTypesTest.java | 406 ---------- jena-hadoop-rdf/hadoop-rdf-io/pom.xml | 100 --- .../jena/hadoop/rdf/io/HadoopIOConstants.java | 49 -- .../jena/hadoop/rdf/io/RdfIOConstants.java | 81 -- .../io/input/AbstractNLineFileInputFormat.java | 70 -- .../io/input/AbstractWholeFileInputFormat.java | 42 - .../hadoop/rdf/io/input/QuadsInputFormat.java | 46 -- .../hadoop/rdf/io/input/TriplesInputFormat.java | 42 - .../rdf/io/input/TriplesOrQuadsInputFormat.java | 47 -- .../io/input/jsonld/JsonLDQuadInputFormat.java | 39 - .../input/jsonld/JsonLDTripleInputFormat.java | 39 - .../input/nquads/BlockedNQuadsInputFormat.java | 53 -- .../rdf/io/input/nquads/NQuadsInputFormat.java | 46 -- .../nquads/WholeFileNQuadsInputFormat.java | 51 -- .../ntriples/BlockedNTriplesInputFormat.java | 53 -- .../io/input/ntriples/NTriplesInputFormat.java | 46 -- .../ntriples/WholeFileNTriplesInputFormat.java | 51 -- .../io/input/rdfjson/RdfJsonInputFormat.java | 46 -- .../rdf/io/input/rdfxml/RdfXmlInputFormat.java | 46 -- .../AbstractBlockBasedNodeTupleReader.java | 344 --------- .../readers/AbstractBlockBasedQuadReader.java | 51 -- .../readers/AbstractBlockBasedTripleReader.java | 51 -- .../AbstractLineBasedNodeTupleReader.java | 265 ------- .../readers/AbstractLineBasedQuadReader.java | 50 -- .../readers/AbstractLineBasedTripleReader.java | 51 -- .../rdf/io/input/readers/AbstractRdfReader.java | 108 --- .../AbstractWholeFileNodeTupleReader.java | 328 -------- .../readers/AbstractWholeFileQuadReader.java | 51 -- .../readers/AbstractWholeFileTripleReader.java | 51 -- .../rdf/io/input/readers/QuadsReader.java | 49 -- .../io/input/readers/TriplesOrQuadsReader.java | 72 -- .../rdf/io/input/readers/TriplesReader.java | 49 -- .../io/input/readers/TriplesToQuadsReader.java | 102 --- .../input/readers/jsonld/JsonLDQuadReader.java | 32 - .../readers/jsonld/JsonLDTripleReader.java | 30 - .../readers/nquads/BlockedNQuadsReader.java | 45 -- .../io/input/readers/nquads/NQuadsReader.java | 49 -- .../readers/nquads/WholeFileNQuadsReader.java | 42 - .../readers/ntriples/BlockedNTriplesReader.java | 45 -- .../input/readers/ntriples/NTriplesReader.java | 48 -- .../ntriples/WholeFileNTriplesReader.java | 42 - .../io/input/readers/rdfjson/RdfJsonReader.java | 37 - .../io/input/readers/rdfxml/RdfXmlReader.java | 37 - .../input/readers/thrift/ThriftQuadReader.java | 32 - .../readers/thrift/ThriftTripleReader.java | 30 - .../rdf/io/input/readers/trig/TriGReader.java | 37 - .../rdf/io/input/readers/trix/TriXReader.java | 37 - .../io/input/readers/turtle/TurtleReader.java | 37 - .../io/input/thrift/ThriftQuadInputFormat.java | 39 - .../input/thrift/ThriftTripleInputFormat.java | 39 - .../rdf/io/input/trig/TriGInputFormat.java | 46 -- .../rdf/io/input/trix/TriXInputFormat.java | 42 - .../rdf/io/input/turtle/TurtleInputFormat.java | 46 -- .../rdf/io/input/util/BlockInputStream.java | 94 --- .../hadoop/rdf/io/input/util/RdfIOUtils.java | 101 --- .../rdf/io/input/util/TrackableInputStream.java | 38 - .../rdf/io/input/util/TrackedInputStream.java | 124 --- .../io/input/util/TrackedPipedQuadsStream.java | 55 -- .../io/input/util/TrackedPipedRDFStream.java | 64 -- .../input/util/TrackedPipedTriplesStream.java | 56 -- .../AbstractBatchedNodeTupleOutputFormat.java | 55 -- .../rdf/io/output/AbstractNodeOutputFormat.java | 94 --- .../output/AbstractNodeTupleOutputFormat.java | 109 --- .../AbstractStreamRdfNodeTupleOutputFormat.java | 73 -- .../hadoop/rdf/io/output/QuadsOutputFormat.java | 64 -- .../io/output/TriplesOrQuadsOutputFormat.java | 74 -- .../rdf/io/output/TriplesOutputFormat.java | 61 -- .../output/jsonld/JsonLDQuadOutputFormat.java | 44 -- .../output/jsonld/JsonLDTripleOutputFormat.java | 44 -- .../io/output/nquads/NQuadsOutputFormat.java | 52 -- .../ntriples/NTriplesNodeOutputFormat.java | 45 -- .../output/ntriples/NTriplesOutputFormat.java | 52 -- .../io/output/rdfjson/RdfJsonOutputFormat.java | 52 -- .../io/output/rdfxml/RdfXmlOutputFormat.java | 52 -- .../output/thrift/ThriftQuadOutputFormat.java | 51 -- .../output/thrift/ThriftTripleOutputFormat.java | 52 -- .../io/output/trig/BatchedTriGOutputFormat.java | 54 -- .../rdf/io/output/trig/TriGOutputFormat.java | 58 -- .../rdf/io/output/trix/TriXOutputFormat.java | 57 -- .../turtle/BatchedTurtleOutputFormat.java | 50 -- .../io/output/turtle/TurtleOutputFormat.java | 56 -- .../writers/AbstractBatchedNodeTupleWriter.java | 113 --- .../writers/AbstractBatchedQuadWriter.java | 80 -- .../writers/AbstractBatchedTripleWriter.java | 68 -- .../AbstractLineBasedNodeTupleWriter.java | 152 ---- .../writers/AbstractLineBasedQuadWriter.java | 71 -- .../writers/AbstractLineBasedTripleWriter.java | 68 -- .../io/output/writers/AbstractNodeWriter.java | 192 ----- .../AbstractStreamRdfNodeTupleWriter.java | 71 -- .../AbstractWholeFileNodeTupleWriter.java | 96 --- .../writers/AbstractWholeFileQuadWriter.java | 66 -- .../writers/AbstractWholeFileTripleWriter.java | 65 -- .../io/output/writers/QuadsToTriplesWriter.java | 59 -- .../io/output/writers/StreamRdfQuadWriter.java | 45 -- .../output/writers/StreamRdfTripleWriter.java | 44 -- .../output/writers/jsonld/JsonLDQuadWriter.java | 38 - .../writers/jsonld/JsonLDTripleWriter.java | 38 - .../io/output/writers/nquads/NQuadsWriter.java | 57 -- .../writers/ntriples/NTriplesNodeWriter.java | 59 -- .../output/writers/ntriples/NTriplesWriter.java | 58 -- .../output/writers/rdfjson/RdfJsonWriter.java | 51 -- .../io/output/writers/rdfxml/RdfXmlWriter.java | 51 -- .../output/writers/thrift/ThriftQuadWriter.java | 38 - .../writers/thrift/ThriftTripleWriter.java | 38 - .../output/writers/trig/BatchedTriGWriter.java | 52 -- .../writers/turtle/BatchedTurtleWriter.java | 54 -- .../rdf/io/registry/HadoopRdfIORegistry.java | 310 -------- .../hadoop/rdf/io/registry/ReaderFactory.java | 83 -- .../hadoop/rdf/io/registry/WriterFactory.java | 96 --- .../readers/AbstractQuadsOnlyReaderFactory.java | 83 -- .../registry/readers/AbstractReaderFactory.java | 80 -- .../AbstractTriplesOnlyReaderFactory.java | 83 -- .../registry/readers/JsonLDReaderFactory.java | 49 -- .../registry/readers/NQuadsReaderFactory.java | 42 - .../registry/readers/NTriplesReaderFactory.java | 38 - .../registry/readers/RdfJsonReaderFactory.java | 41 - .../registry/readers/RdfXmlReaderFactory.java | 40 - .../registry/readers/ThriftReaderFactory.java | 49 -- .../io/registry/readers/TriGReaderFactory.java | 42 - .../io/registry/readers/TriXReaderFactory.java | 41 - .../registry/readers/TurtleReaderFactory.java | 40 - .../writers/AbstractQuadsOnlyWriterFactory.java | 86 --- .../AbstractTriplesOnlyWriterFactory.java | 85 --- .../registry/writers/AbstractWriterFactory.java | 82 -- .../registry/writers/JsonLDWriterFactory.java | 52 -- .../registry/writers/NQuadsWriterFactory.java | 44 -- .../registry/writers/NTriplesWriterFactory.java | 44 -- .../registry/writers/RdfJsonWriterFactory.java | 43 -- .../registry/writers/RdfXmlWriterFactory.java | 44 -- .../registry/writers/ThriftWriterFactory.java | 57 -- .../io/registry/writers/TriGWriterFactory.java | 45 -- .../io/registry/writers/TriXWriterFactory.java | 47 -- .../registry/writers/TurtleWriterFactory.java | 45 -- ...he.jena.hadoop.rdf.io.registry.ReaderFactory | 10 - ...he.jena.hadoop.rdf.io.registry.WriterFactory | 10 - .../rdf/io/RdfTriplesInputTestMapper.java | 47 -- .../AbstractBlockedQuadInputFormatTests.java | 33 - .../AbstractBlockedTripleInputFormatTests.java | 33 - .../AbstractNodeTupleInputFormatTests.java | 612 --------------- .../io/input/AbstractQuadsInputFormatTests.java | 70 -- .../input/AbstractTriplesInputFormatTests.java | 72 -- .../AbstractWholeFileQuadInputFormatTests.java | 115 --- ...AbstractWholeFileTripleInputFormatTests.java | 108 --- .../io/input/bnodes/AbstractBlankNodeTests.java | 636 ---------------- .../bnodes/AbstractTripleBlankNodeTests.java | 65 -- .../input/bnodes/JsonLdTripleBlankNodeTest.java | 63 -- .../io/input/bnodes/NTriplesBlankNodeTest.java | 58 -- .../io/input/bnodes/RdfJsonBlankNodeTest.java | 58 -- .../io/input/bnodes/RdfThriftBlankNodeTest.java | 68 -- .../io/input/bnodes/RdfXmlBlankNodeTest.java | 62 -- .../io/input/bnodes/TurtleBlankNodeTest.java | 58 -- ...ractCompressedNodeTupleInputFormatTests.java | 74 -- ...AbstractCompressedQuadsInputFormatTests.java | 71 -- ...stractCompressedTriplesInputFormatTests.java | 71 -- ...CompressedWholeFileQuadInputFormatTests.java | 150 ---- ...mpressedWholeFileTripleInputFormatTests.java | 144 ---- ...actCompressedJsonLDQuadInputFormatTests.java | 74 -- ...tCompressedJsonLDTripleInputFormatTests.java | 74 -- .../jsonld/BZippedJsonLDQuadInputTest.java | 34 - .../jsonld/BZippedJsonLDTripleInputTest.java | 34 - .../jsonld/DeflatedJsonLDQuadInputTest.java | 34 - .../jsonld/DeflatedJsonLDTripleInputTest.java | 34 - .../jsonld/GZippedJsonLDQuadInputTest.java | 34 - .../jsonld/GZippedJsonLDTripleInputTest.java | 34 - ...bstractCompressedNQuadsInputFormatTests.java | 68 -- ...mpressedWholeFileNQuadsInputFormatTests.java | 75 -- .../nquads/BZipppedNQuadsInputTest.java | 38 - .../BZipppedWholeFileNQuadsInputTest.java | 37 - .../nquads/DeflatedNQuadsInputTest.java | 37 - .../DeflatedWholeFileNQuadsInputTest.java | 37 - .../nquads/GZippedNQuadsInputTest.java | 38 - .../nquads/GZippedWholeFileNQuadsInputTest.java | 38 - ...mpressedBlockedNTriplesInputFormatTests.java | 53 -- ...tractCompressedNTriplesInputFormatTests.java | 68 -- ...ressedWholeFileNTriplesInputFormatTests.java | 75 -- .../ntriples/BZippedBlockedNTriplesInput.java | 37 - .../ntriples/BZippedNTriplesInputTest.java | 38 - .../BZippedWholeFileNTriplesInputTest.java | 38 - .../ntriples/DeflatedBlockedNTriplesInput.java | 37 - .../ntriples/DeflatedNTriplesInputTest.java | 38 - .../DeflatedWholeFileNTriplesInputTest.java | 38 - .../ntriples/GZippedBlockedNTriplesInput.java | 37 - .../ntriples/GZippedNTriplesInputTest.java | 41 - .../GZippedWholeFileNTriplesInputTest.java | 38 - ...stractCompressedRdfJsonInputFormatTests.java | 74 -- .../rdfjson/BZippedRdfJsonInputTest.java | 37 - .../rdfjson/DeflatedRdfJsonInputTest.java | 37 - .../rdfjson/GZippedRdfJsonInputTest.java | 37 - ...bstractCompressedRdfXmlInputFormatTests.java | 75 -- .../rdfxml/BZippedRdfXmlInputTest.java | 37 - .../rdfxml/DeflatedRdfXmlInputTest.java | 37 - .../rdfxml/GZippedRdfXmlInputTest.java | 37 - ...actCompressedThriftQuadInputFormatTests.java | 72 -- ...tCompressedThriftTripleInputFormatTests.java | 72 -- .../thrift/BZippedThriftQuadInputTest.java | 34 - .../thrift/BZippedThriftTripleInputTest.java | 34 - .../thrift/DeflatedThriftQuadInputTest.java | 34 - .../thrift/DeflatedThriftTripleInputTest.java | 34 - .../thrift/GZippedThriftQuadInputTest.java | 34 - .../thrift/GZippedThriftTripleInputTest.java | 34 - .../AbstractCompressedTriGInputFormatTests.java | 72 -- .../compressed/trig/BZippedTriGInputTest.java | 37 - .../compressed/trig/DeflatedTriGInputTest.java | 37 - .../compressed/trig/GZippedTriGInputTest.java | 37 - .../AbstractCompressedTriXInputFormatTests.java | 72 -- .../compressed/trix/BZippedTriXInputTest.java | 35 - .../compressed/trix/DeflatedTriXInputTest.java | 35 - .../compressed/trix/GZippedTriXInputTest.java | 35 - ...bstractCompressedTurtleInputFormatTests.java | 75 -- .../turtle/BZippedTurtleInputTest.java | 37 - .../turtle/DeflatedTurtleInputTest.java | 37 - .../turtle/GZippedTurtleInputTest.java | 37 - .../io/input/jsonld/JsonLDQuadInputTest.java | 50 -- .../io/input/jsonld/JsonLDTripleInputTest.java | 50 -- .../io/input/nquads/BlockedNQuadsInputTest.java | 51 -- .../rdf/io/input/nquads/NQuadsInputTest.java | 44 -- .../input/nquads/WholeFileNQuadsInputTest.java | 51 -- .../ntriples/BlockedNTriplesInputTest.java | 50 -- .../io/input/ntriples/NTriplesInputTest.java | 44 -- .../ntriples/WholeFileNTriplesInputTest.java | 52 -- .../rdf/io/input/rdfjson/RdfJsonInputTest.java | 51 -- .../rdf/io/input/rdfxml/RdfXmlInputTest.java | 51 -- .../io/input/thrift/ThriftQuadInputTest.java | 51 -- .../io/input/thrift/ThriftTripleInputTest.java | 51 -- .../hadoop/rdf/io/input/trig/TriGInputTest.java | 50 -- .../hadoop/rdf/io/input/trix/TriXInputTest.java | 50 -- .../rdf/io/input/turtle/TurtleInputTest.java | 50 -- .../util/AbstractTrackableInputStreamTests.java | 701 ----------------- .../rdf/io/input/util/BlockInputStreamTest.java | 240 ------ .../io/input/util/TrackedInputStreamTest.java | 39 - .../AbstractNodeTupleOutputFormatTests.java | 255 ------- .../output/AbstractQuadOutputFormatTests.java | 51 -- .../output/AbstractTripleOutputFormatTests.java | 47 -- .../io/output/jsonld/JsonLdQuadOutputTest.java | 47 -- .../output/jsonld/JsonLdTripleOutputTest.java | 47 -- .../rdf/io/output/nquads/NQuadsOutputTest.java | 51 -- .../io/output/ntriples/NTriplesOutputTest.java | 51 -- .../io/output/rdfjson/RdfJsonOutputTest.java | 51 -- .../rdf/io/output/rdfxml/RdfXmlOutputTest.java | 51 -- .../io/output/thrift/ThriftQuadOutputTest.java | 48 -- .../output/thrift/ThriftTripleOutputTest.java | 48 -- .../io/output/trig/BatchedTriGOutputTest.java | 92 --- .../io/output/trig/StreamedTriGOutputTest.java | 92 --- .../output/trig/TriGBlankNodeOutputTests.java | 120 --- .../rdf/io/output/trix/TriXOutputTest.java | 47 -- .../output/turtle/BatchedTurtleOutputTest.java | 92 --- .../output/turtle/StreamedTurtleOutputTest.java | 92 --- .../turtle/TurtleBlankNodeOutputTests.java | 118 --- .../io/registry/TestHadoopRdfIORegistry.java | 186 ----- jena-hadoop-rdf/hadoop-rdf-stats/hadoop-job.xml | 46 -- jena-hadoop-rdf/hadoop-rdf-stats/pom.xml | 103 --- .../apache/jena/hadoop/rdf/stats/RdfStats.java | 405 ---------- .../jena/hadoop/rdf/stats/jobs/JobFactory.java | 757 ------------------- jena-hadoop-rdf/jena-elephas-common/pom.xml | 54 ++ .../rdf/types/AbstractNodeTupleWritable.java | 193 +++++ .../rdf/types/CharacteristicSetWritable.java | 298 ++++++++ .../rdf/types/CharacteristicWritable.java | 160 ++++ .../hadoop/rdf/types/NodeTupleWritable.java | 80 ++ .../jena/hadoop/rdf/types/NodeWritable.java | 188 +++++ .../jena/hadoop/rdf/types/QuadWritable.java | 136 ++++ .../jena/hadoop/rdf/types/TripleWritable.java | 138 ++++ .../comparators/SimpleBinaryComparator.java | 34 + .../rdf/types/converters/ThriftConverter.java | 147 ++++ .../rdf/io/types/CharacteristicTests.java | 210 +++++ .../jena/hadoop/rdf/io/types/RdfTypesTest.java | 406 ++++++++++ jena-hadoop-rdf/jena-elephas-io/pom.xml | 67 ++ .../jena/hadoop/rdf/io/HadoopIOConstants.java | 49 ++ .../jena/hadoop/rdf/io/RdfIOConstants.java | 81 ++ .../io/input/AbstractNLineFileInputFormat.java | 70 ++ .../io/input/AbstractWholeFileInputFormat.java | 42 + .../hadoop/rdf/io/input/QuadsInputFormat.java | 46 ++ .../hadoop/rdf/io/input/TriplesInputFormat.java | 42 + .../rdf/io/input/TriplesOrQuadsInputFormat.java | 47 ++ .../io/input/jsonld/JsonLDQuadInputFormat.java | 39 + .../input/jsonld/JsonLDTripleInputFormat.java | 39 + .../input/nquads/BlockedNQuadsInputFormat.java | 53 ++ .../rdf/io/input/nquads/NQuadsInputFormat.java | 46 ++ .../nquads/WholeFileNQuadsInputFormat.java | 51 ++ .../ntriples/BlockedNTriplesInputFormat.java | 53 ++ .../io/input/ntriples/NTriplesInputFormat.java | 46 ++ .../ntriples/WholeFileNTriplesInputFormat.java | 51 ++ .../io/input/rdfjson/RdfJsonInputFormat.java | 46 ++ .../rdf/io/input/rdfxml/RdfXmlInputFormat.java | 46 ++ .../AbstractBlockBasedNodeTupleReader.java | 344 +++++++++ .../readers/AbstractBlockBasedQuadReader.java | 51 ++ .../readers/AbstractBlockBasedTripleReader.java | 51 ++ .../AbstractLineBasedNodeTupleReader.java | 265 +++++++ .../readers/AbstractLineBasedQuadReader.java | 50 ++ .../readers/AbstractLineBasedTripleReader.java | 51 ++ .../rdf/io/input/readers/AbstractRdfReader.java | 108 +++ .../AbstractWholeFileNodeTupleReader.java | 328 ++++++++ .../readers/AbstractWholeFileQuadReader.java | 51 ++ .../readers/AbstractWholeFileTripleReader.java | 51 ++ .../rdf/io/input/readers/QuadsReader.java | 49 ++ .../io/input/readers/TriplesOrQuadsReader.java | 72 ++ .../rdf/io/input/readers/TriplesReader.java | 49 ++ .../io/input/readers/TriplesToQuadsReader.java | 102 +++ .../input/readers/jsonld/JsonLDQuadReader.java | 32 + .../readers/jsonld/JsonLDTripleReader.java | 30 + .../readers/nquads/BlockedNQuadsReader.java | 45 ++ .../io/input/readers/nquads/NQuadsReader.java | 49 ++ .../readers/nquads/WholeFileNQuadsReader.java | 42 + .../readers/ntriples/BlockedNTriplesReader.java | 45 ++ .../input/readers/ntriples/NTriplesReader.java | 48 ++ .../ntriples/WholeFileNTriplesReader.java | 42 + .../io/input/readers/rdfjson/RdfJsonReader.java | 37 + .../io/input/readers/rdfxml/RdfXmlReader.java | 37 + .../input/readers/thrift/ThriftQuadReader.java | 32 + .../readers/thrift/ThriftTripleReader.java | 30 + .../rdf/io/input/readers/trig/TriGReader.java | 37 + .../rdf/io/input/readers/trix/TriXReader.java | 37 + .../io/input/readers/turtle/TurtleReader.java | 37 + .../io/input/thrift/ThriftQuadInputFormat.java | 39 + .../input/thrift/ThriftTripleInputFormat.java | 39 + .../rdf/io/input/trig/TriGInputFormat.java | 46 ++ .../rdf/io/input/trix/TriXInputFormat.java | 42 + .../rdf/io/input/turtle/TurtleInputFormat.java | 46 ++ .../rdf/io/input/util/BlockInputStream.java | 94 +++ .../hadoop/rdf/io/input/util/RdfIOUtils.java | 101 +++ .../rdf/io/input/util/TrackableInputStream.java | 38 + .../rdf/io/input/util/TrackedInputStream.java | 124 +++ .../io/input/util/TrackedPipedQuadsStream.java | 55 ++ .../io/input/util/TrackedPipedRDFStream.java | 64 ++ .../input/util/TrackedPipedTriplesStream.java | 56 ++ .../AbstractBatchedNodeTupleOutputFormat.java | 55 ++ .../rdf/io/output/AbstractNodeOutputFormat.java | 94 +++ .../output/AbstractNodeTupleOutputFormat.java | 109 +++ .../AbstractStreamRdfNodeTupleOutputFormat.java | 73 ++ .../hadoop/rdf/io/output/QuadsOutputFormat.java | 64 ++ .../io/output/TriplesOrQuadsOutputFormat.java | 74 ++ .../rdf/io/output/TriplesOutputFormat.java | 61 ++ .../output/jsonld/JsonLDQuadOutputFormat.java | 44 ++ .../output/jsonld/JsonLDTripleOutputFormat.java | 44 ++ .../io/output/nquads/NQuadsOutputFormat.java | 52 ++ .../ntriples/NTriplesNodeOutputFormat.java | 45 ++ .../output/ntriples/NTriplesOutputFormat.java | 52 ++ .../io/output/rdfjson/RdfJsonOutputFormat.java | 52 ++ .../io/output/rdfxml/RdfXmlOutputFormat.java | 52 ++ .../output/thrift/ThriftQuadOutputFormat.java | 51 ++ .../output/thrift/ThriftTripleOutputFormat.java | 52 ++ .../io/output/trig/BatchedTriGOutputFormat.java | 54 ++ .../rdf/io/output/trig/TriGOutputFormat.java | 58 ++ .../rdf/io/output/trix/TriXOutputFormat.java | 57 ++ .../turtle/BatchedTurtleOutputFormat.java | 50 ++ .../io/output/turtle/TurtleOutputFormat.java | 56 ++ .../writers/AbstractBatchedNodeTupleWriter.java | 113 +++ .../writers/AbstractBatchedQuadWriter.java | 80 ++ .../writers/AbstractBatchedTripleWriter.java | 68 ++ .../AbstractLineBasedNodeTupleWriter.java | 152 ++++ .../writers/AbstractLineBasedQuadWriter.java | 71 ++ .../writers/AbstractLineBasedTripleWriter.java | 68 ++ .../io/output/writers/AbstractNodeWriter.java | 192 +++++ .../AbstractStreamRdfNodeTupleWriter.java | 71 ++ .../AbstractWholeFileNodeTupleWriter.java | 96 +++ .../writers/AbstractWholeFileQuadWriter.java | 66 ++ .../writers/AbstractWholeFileTripleWriter.java | 65 ++ .../io/output/writers/QuadsToTriplesWriter.java | 59 ++ .../io/output/writers/StreamRdfQuadWriter.java | 45 ++ .../output/writers/StreamRdfTripleWriter.java | 44 ++ .../output/writers/jsonld/JsonLDQuadWriter.java | 38 + .../writers/jsonld/JsonLDTripleWriter.java | 38 + .../io/output/writers/nquads/NQuadsWriter.java | 57 ++ .../writers/ntriples/NTriplesNodeWriter.java | 59 ++ .../output/writers/ntriples/NTriplesWriter.java | 58 ++ .../output/writers/rdfjson/RdfJsonWriter.java | 51 ++ .../io/output/writers/rdfxml/RdfXmlWriter.java | 51 ++ .../output/writers/thrift/ThriftQuadWriter.java | 38 + .../writers/thrift/ThriftTripleWriter.java | 38 + .../output/writers/trig/BatchedTriGWriter.java | 52 ++ .../writers/turtle/BatchedTurtleWriter.java | 54 ++ .../rdf/io/registry/HadoopRdfIORegistry.java | 310 ++++++++ .../hadoop/rdf/io/registry/ReaderFactory.java | 83 ++ .../hadoop/rdf/io/registry/WriterFactory.java | 96 +++ .../readers/AbstractQuadsOnlyReaderFactory.java | 83 ++ .../registry/readers/AbstractReaderFactory.java | 80 ++ .../AbstractTriplesOnlyReaderFactory.java | 83 ++ .../registry/readers/JsonLDReaderFactory.java | 49 ++ .../registry/readers/NQuadsReaderFactory.java | 42 + .../registry/readers/NTriplesReaderFactory.java | 38 + .../registry/readers/RdfJsonReaderFactory.java | 41 + .../registry/readers/RdfXmlReaderFactory.java | 40 + .../registry/readers/ThriftReaderFactory.java | 49 ++ .../io/registry/readers/TriGReaderFactory.java | 42 + .../io/registry/readers/TriXReaderFactory.java | 41 + .../registry/readers/TurtleReaderFactory.java | 40 + .../writers/AbstractQuadsOnlyWriterFactory.java | 86 +++ .../AbstractTriplesOnlyWriterFactory.java | 85 +++ .../registry/writers/AbstractWriterFactory.java | 82 ++ .../registry/writers/JsonLDWriterFactory.java | 52 ++ .../registry/writers/NQuadsWriterFactory.java | 44 ++ .../registry/writers/NTriplesWriterFactory.java | 44 ++ .../registry/writers/RdfJsonWriterFactory.java | 43 ++ .../registry/writers/RdfXmlWriterFactory.java | 44 ++ .../registry/writers/ThriftWriterFactory.java | 57 ++ .../io/registry/writers/TriGWriterFactory.java | 45 ++ .../io/registry/writers/TriXWriterFactory.java | 47 ++ .../registry/writers/TurtleWriterFactory.java | 45 ++ ...he.jena.hadoop.rdf.io.registry.ReaderFactory | 10 + ...he.jena.hadoop.rdf.io.registry.WriterFactory | 10 + .../rdf/io/RdfTriplesInputTestMapper.java | 47 ++ .../AbstractBlockedQuadInputFormatTests.java | 33 + .../AbstractBlockedTripleInputFormatTests.java | 33 + .../AbstractNodeTupleInputFormatTests.java | 612 +++++++++++++++ .../io/input/AbstractQuadsInputFormatTests.java | 70 ++ .../input/AbstractTriplesInputFormatTests.java | 72 ++ .../AbstractWholeFileQuadInputFormatTests.java | 115 +++ ...AbstractWholeFileTripleInputFormatTests.java | 108 +++ .../io/input/bnodes/AbstractBlankNodeTests.java | 636 ++++++++++++++++ .../bnodes/AbstractTripleBlankNodeTests.java | 65 ++ .../input/bnodes/JsonLdTripleBlankNodeTest.java | 63 ++ .../io/input/bnodes/NTriplesBlankNodeTest.java | 58 ++ .../io/input/bnodes/RdfJsonBlankNodeTest.java | 58 ++ .../io/input/bnodes/RdfThriftBlankNodeTest.java | 68 ++ .../io/input/bnodes/RdfXmlBlankNodeTest.java | 62 ++ .../io/input/bnodes/TurtleBlankNodeTest.java | 58 ++ ...ractCompressedNodeTupleInputFormatTests.java | 74 ++ ...AbstractCompressedQuadsInputFormatTests.java | 71 ++ ...stractCompressedTriplesInputFormatTests.java | 71 ++ ...CompressedWholeFileQuadInputFormatTests.java | 150 ++++ ...mpressedWholeFileTripleInputFormatTests.java | 144 ++++ ...actCompressedJsonLDQuadInputFormatTests.java | 74 ++ ...tCompressedJsonLDTripleInputFormatTests.java | 74 ++ .../jsonld/BZippedJsonLDQuadInputTest.java | 34 + .../jsonld/BZippedJsonLDTripleInputTest.java | 34 + .../jsonld/DeflatedJsonLDQuadInputTest.java | 34 + .../jsonld/DeflatedJsonLDTripleInputTest.java | 34 + .../jsonld/GZippedJsonLDQuadInputTest.java | 34 + .../jsonld/GZippedJsonLDTripleInputTest.java | 34 + ...bstractCompressedNQuadsInputFormatTests.java | 68 ++ ...mpressedWholeFileNQuadsInputFormatTests.java | 75 ++ .../nquads/BZipppedNQuadsInputTest.java | 38 + .../BZipppedWholeFileNQuadsInputTest.java | 37 + .../nquads/DeflatedNQuadsInputTest.java | 37 + .../DeflatedWholeFileNQuadsInputTest.java | 37 + .../nquads/GZippedNQuadsInputTest.java | 38 + .../nquads/GZippedWholeFileNQuadsInputTest.java | 38 + ...mpressedBlockedNTriplesInputFormatTests.java | 53 ++ ...tractCompressedNTriplesInputFormatTests.java | 68 ++ ...ressedWholeFileNTriplesInputFormatTests.java | 75 ++ .../ntriples/BZippedBlockedNTriplesInput.java | 37 + .../ntriples/BZippedNTriplesInputTest.java | 38 + .../BZippedWholeFileNTriplesInputTest.java | 38 + .../ntriples/DeflatedBlockedNTriplesInput.java | 37 + .../ntriples/DeflatedNTriplesInputTest.java | 38 + .../DeflatedWholeFileNTriplesInputTest.java | 38 + .../ntriples/GZippedBlockedNTriplesInput.java | 37 + .../ntriples/GZippedNTriplesInputTest.java | 41 + .../GZippedWholeFileNTriplesInputTest.java | 38 + ...stractCompressedRdfJsonInputFormatTests.java | 74 ++ .../rdfjson/BZippedRdfJsonInputTest.java | 37 + .../rdfjson/DeflatedRdfJsonInputTest.java | 37 + .../rdfjson/GZippedRdfJsonInputTest.java | 37 + ...bstractCompressedRdfXmlInputFormatTests.java | 75 ++ .../rdfxml/BZippedRdfXmlInputTest.java | 37 + .../rdfxml/DeflatedRdfXmlInputTest.java | 37 + .../rdfxml/GZippedRdfXmlInputTest.java | 37 + ...actCompressedThriftQuadInputFormatTests.java | 72 ++ ...tCompressedThriftTripleInputFormatTests.java | 72 ++ .../thrift/BZippedThriftQuadInputTest.java | 34 + .../thrift/BZippedThriftTripleInputTest.java | 34 + .../thrift/DeflatedThriftQuadInputTest.java | 34 + .../thrift/DeflatedThriftTripleInputTest.java | 34 + .../thrift/GZippedThriftQuadInputTest.java | 34 + .../thrift/GZippedThriftTripleInputTest.java | 34 + .../AbstractCompressedTriGInputFormatTests.java | 72 ++ .../compressed/trig/BZippedTriGInputTest.java | 37 + .../compressed/trig/DeflatedTriGInputTest.java | 37 + .../compressed/trig/GZippedTriGInputTest.java | 37 + .../AbstractCompressedTriXInputFormatTests.java | 72 ++ .../compressed/trix/BZippedTriXInputTest.java | 35 + .../compressed/trix/DeflatedTriXInputTest.java | 35 + .../compressed/trix/GZippedTriXInputTest.java | 35 + ...bstractCompressedTurtleInputFormatTests.java | 75 ++ .../turtle/BZippedTurtleInputTest.java | 37 + .../turtle/DeflatedTurtleInputTest.java | 37 + .../turtle/GZippedTurtleInputTest.java | 37 + .../io/input/jsonld/JsonLDQuadInputTest.java | 50 ++ .../io/input/jsonld/JsonLDTripleInputTest.java | 50 ++ .../io/input/nquads/BlockedNQuadsInputTest.java | 51 ++ .../rdf/io/input/nquads/NQuadsInputTest.java | 44 ++ .../input/nquads/WholeFileNQuadsInputTest.java | 51 ++ .../ntriples/BlockedNTriplesInputTest.java | 50 ++ .../io/input/ntriples/NTriplesInputTest.java | 44 ++ .../ntriples/WholeFileNTriplesInputTest.java | 52 ++ .../rdf/io/input/rdfjson/RdfJsonInputTest.java | 51 ++ .../rdf/io/input/rdfxml/RdfXmlInputTest.java | 51 ++ .../io/input/thrift/ThriftQuadInputTest.java | 51 ++ .../io/input/thrift/ThriftTripleInputTest.java | 51 ++ .../hadoop/rdf/io/input/trig/TriGInputTest.java | 50 ++ .../hadoop/rdf/io/input/trix/TriXInputTest.java | 50 ++ .../rdf/io/input/turtle/TurtleInputTest.java | 50 ++ .../util/AbstractTrackableInputStreamTests.java | 701 +++++++++++++++++ .../rdf/io/input/util/BlockInputStreamTest.java | 240 ++++++ .../io/input/util/TrackedInputStreamTest.java | 39 + .../AbstractNodeTupleOutputFormatTests.java | 255 +++++++ .../output/AbstractQuadOutputFormatTests.java | 51 ++ .../output/AbstractTripleOutputFormatTests.java | 47 ++ .../io/output/jsonld/JsonLdQuadOutputTest.java | 47 ++ .../output/jsonld/JsonLdTripleOutputTest.java | 47 ++ .../rdf/io/output/nquads/NQuadsOutputTest.java | 51 ++ .../io/output/ntriples/NTriplesOutputTest.java | 51 ++ .../io/output/rdfjson/RdfJsonOutputTest.java | 51 ++ .../rdf/io/output/rdfxml/RdfXmlOutputTest.java | 51 ++ .../io/output/thrift/ThriftQuadOutputTest.java | 48 ++ .../output/thrift/ThriftTripleOutputTest.java | 48 ++ .../io/output/trig/BatchedTriGOutputTest.java | 92 +++ .../io/output/trig/StreamedTriGOutputTest.java | 92 +++ .../output/trig/TriGBlankNodeOutputTests.java | 120 +++ .../rdf/io/output/trix/TriXOutputTest.java | 47 ++ .../output/turtle/BatchedTurtleOutputTest.java | 92 +++ .../output/turtle/StreamedTurtleOutputTest.java | 92 +++ .../turtle/TurtleBlankNodeOutputTests.java | 118 +++ .../io/registry/TestHadoopRdfIORegistry.java | 186 +++++ .../jena-elephas-stats/hadoop-job.xml | 46 ++ jena-hadoop-rdf/jena-elephas-stats/pom.xml | 103 +++ .../apache/jena/hadoop/rdf/stats/RdfStats.java | 405 ++++++++++ .../jena/hadoop/rdf/stats/jobs/JobFactory.java | 757 +++++++++++++++++++ jena-hadoop-rdf/pom.xml | 26 +- 529 files changed, 20511 insertions(+), 20552 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/pom.xml ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/pom.xml b/jena-hadoop-rdf/hadoop-rdf-common/pom.xml deleted file mode 100644 index b5081a6..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/pom.xml +++ /dev/null @@ -1,54 +0,0 @@ -<!-- - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.jena</groupId> - <artifactId>jena-hadoop-rdf</artifactId> - <version>0.9.0-SNAPSHOT</version> - </parent> - <artifactId>jena-hadoop-rdf-common</artifactId> - <name>Apache Jena - RDF Tools for Hadoop - Common API</name> - <description>Common code for RDF on Hadoop such as writable types for RDF primitives</description> - - <!-- Note that versions are managed by parent POMs --> - <dependencies> - <!-- Hadoop Dependencies --> - <!-- Note these will be provided on the Hadoop cluster hence the provided - scope --> - <dependency> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-common</artifactId> - <scope>provided</scope> - </dependency> - - <!-- Jena dependencies --> - <dependency> - <groupId>org.apache.jena</groupId> - <artifactId>jena-arq</artifactId> - </dependency> - - <!-- Test Dependencies --> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <scope>test</scope> - </dependency> - </dependencies> -</project> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/AbstractNodeTupleWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/AbstractNodeTupleWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/AbstractNodeTupleWritable.java deleted file mode 100644 index f0acc09..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/AbstractNodeTupleWritable.java +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.DataOutput; -import java.io.IOException; -import org.apache.hadoop.io.WritableComparable; -import org.apache.hadoop.io.WritableUtils; -import com.hp.hpl.jena.graph.Node; -import com.hp.hpl.jena.sparql.util.NodeUtils; - -/** - * A abstract general purpose writable where the actual class represented is - * composed of a number of {@link Node} instances - * <p> - * The binary encoding of this base implementation is just a variable integer - * indicating the number of nodes present followed by the binary encodings of - * the {@link NodeWritable} instances. Derived implementations may wish to - * override the {@link #readFields(DataInput)} and {@link #write(DataOutput)} - * methods in order to use more specialised encodings. - * </p> - * - * @param <T> - * Tuple type - */ -public abstract class AbstractNodeTupleWritable<T> implements WritableComparable<AbstractNodeTupleWritable<T>> { - - private T tuple; - - /** - * Creates a new empty instance - */ - protected AbstractNodeTupleWritable() { - this(null); - } - - /** - * Creates a new instance with the given value - * - * @param tuple - * Tuple value - */ - protected AbstractNodeTupleWritable(T tuple) { - this.tuple = tuple; - } - - /** - * Gets the tuple - * - * @return Tuple - */ - public T get() { - return this.tuple; - } - - /** - * Sets the tuple - * - * @param tuple - * Tuple - */ - public void set(T tuple) { - this.tuple = tuple; - } - - @Override - public void readFields(DataInput input) throws IOException { - // Determine how many nodes - int size = WritableUtils.readVInt(input); - Node[] ns = new Node[size]; - - NodeWritable nw = new NodeWritable(); - for (int i = 0; i < ns.length; i++) { - nw.readFields(input); - ns[i] = nw.get(); - } - - // Load the tuple - this.tuple = this.createTuple(ns); - } - - /** - * Creates the actual tuple type from an array of nodes - * - * @param ns - * Nodes - * @return Tuple - */ - protected abstract T createTuple(Node[] ns); - - @Override - public void write(DataOutput output) throws IOException { - // Determine how many nodes - Node[] ns = this.createNodes(this.tuple); - WritableUtils.writeVInt(output, ns.length); - - // Write out nodes - NodeWritable nw = new NodeWritable(); - for (int i = 0; i < ns.length; i++) { - nw.set(ns[i]); - nw.write(output); - } - } - - /** - * Sets the tuple value - * <p> - * Intended only for internal use i.e. when a derived implementation - * overrides {@link #readFields(DataInput)} and needs to set the tuple value - * directly i.e. when a derived implementation is using a custom encoding - * scheme - * </p> - * - * @param tuple - * Tuple - */ - protected final void setInternal(T tuple) { - this.tuple = tuple; - } - - /** - * Converts the actual tuple type into an array of nodes - * - * @param tuple - * Tuples - * @return Nodes - */ - protected abstract Node[] createNodes(T tuple); - - /** - * Compares instances node by node - * <p> - * Derived implementations may wish to override this and substitute native - * tuple based comparisons - * </p> - * - * @param other - * Instance to compare with - */ - @Override - public int compareTo(AbstractNodeTupleWritable<T> other) { - Node[] ns = this.createNodes(this.tuple); - Node[] otherNs = this.createNodes(other.tuple); - - if (ns.length < otherNs.length) { - return -1; - } else if (ns.length > otherNs.length) { - return 1; - } - // Compare node by node - for (int i = 0; i < ns.length; i++) { - int c = NodeUtils.compareRDFTerms(ns[i], otherNs[i]); - if (c != 0) - return c; - } - return 0; - } - - @Override - public String toString() { - return this.get().toString(); - } - - @Override - public int hashCode() { - return this.get().hashCode(); - } - - @SuppressWarnings("unchecked") - @Override - public boolean equals(Object other) { - if (!(other instanceof AbstractNodeTupleWritable)) - return false; - return this.compareTo((AbstractNodeTupleWritable<T>) other) == 0; - } -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicSetWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicSetWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicSetWritable.java deleted file mode 100644 index f29b156..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicSetWritable.java +++ /dev/null @@ -1,298 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.DataOutput; -import java.io.IOException; -import java.util.Iterator; -import java.util.Map; -import java.util.TreeMap; - -import org.apache.hadoop.io.LongWritable; -import org.apache.hadoop.io.WritableComparable; -import org.apache.hadoop.io.WritableUtils; - -import com.hp.hpl.jena.graph.Node; -import com.hp.hpl.jena.graph.NodeFactory; - -/** - * Represents a characteristic set which is comprised of a count of nodes for - * which the characteristic is applicable and a set of characteristics which - * represents the number of usages of predicates with those nodes - * - * - * - */ -public class CharacteristicSetWritable implements WritableComparable<CharacteristicSetWritable> { - - private Map<NodeWritable, CharacteristicWritable> characteristics = new TreeMap<NodeWritable, CharacteristicWritable>(); - private LongWritable count = new LongWritable(); - - /** - * Creates a new empty characteristic set with the default count of 1 - */ - public CharacteristicSetWritable() { - this(1); - } - - /** - * Creates a new characteristic set with the default count of 1 and the - * given characteristics - * - * @param characteristics - * Characteristics - */ - public CharacteristicSetWritable(CharacteristicWritable... characteristics) { - this(1, characteristics); - } - - /** - * Creates an empty characteristic set with the given count - * - * @param count - * Count - */ - public CharacteristicSetWritable(long count) { - this(count, new CharacteristicWritable[0]); - } - - /** - * Creates a new characteristic set - * - * @param count - * Count - * @param characteristics - * Characteristics - */ - public CharacteristicSetWritable(long count, CharacteristicWritable... characteristics) { - this.count.set(count); - for (CharacteristicWritable characteristic : characteristics) { - this.characteristics.put(characteristic.getNode(), characteristic); - } - } - - /** - * Creates a new instance and reads its data from the given input - * - * @param input - * Input - * @return New instance - * @throws IOException - */ - public static CharacteristicSetWritable read(DataInput input) throws IOException { - CharacteristicSetWritable set = new CharacteristicSetWritable(); - set.readFields(input); - return set; - } - - /** - * Gets the count - * - * @return Count - */ - public LongWritable getCount() { - return this.count; - } - - /** - * Gets the characteristics - * - * @return Characteristics - */ - public Iterator<CharacteristicWritable> getCharacteristics() { - return this.characteristics.values().iterator(); - } - - /** - * Gets the size of the characteristic set - * - * @return Size - */ - public int size() { - return this.characteristics.size(); - } - - /** - * Adds a characteristic to the set merging it into the appropriate existing - * characteristic if applicable - * - * @param characteristic - * Characteristics - */ - public void add(CharacteristicWritable characteristic) { - if (this.characteristics.containsKey(characteristic.getNode())) { - this.characteristics.get(characteristic.getNode()).increment(characteristic.getCount().get()); - } else { - this.characteristics.put(characteristic.getNode(), characteristic); - } - } - - /** - * Adds some characteristics to the set merging them with the appropriate - * existing characteristics if applicable - * - * @param characteristics - */ - public void add(CharacteristicWritable... characteristics) { - for (CharacteristicWritable characteristic : characteristics) { - this.add(characteristic); - } - } - - /** - * Adds the contents of the other characteristic set to this characteristic - * set - * - * @param set - * Characteristic set - */ - public void add(CharacteristicSetWritable set) { - this.increment(set.getCount().get()); - Iterator<CharacteristicWritable> iter = set.getCharacteristics(); - while (iter.hasNext()) { - this.add(iter.next()); - } - } - - /** - * Gets whether the set contains a characteristic for the given predicate - * - * @param uri - * Predicate URI - * @return True if contained in the set, false otherwise - */ - public boolean hasCharacteristic(String uri) { - return this.hasCharacteristic(NodeFactory.createURI(uri)); - } - - /** - * Gets whether the set contains a characteristic for the given predicate - * - * @param n - * Predicate - * @return True if contained in the set, false otherwise - */ - public boolean hasCharacteristic(Node n) { - return this.hasCharacteristic(new NodeWritable(n)); - } - - /** - * Gets whether the set contains a characteristic for the given predicate - * - * @param n - * Predicate - * @return True if contained in the set, false otherwise - */ - public boolean hasCharacteristic(NodeWritable n) { - return this.characteristics.containsKey(n); - } - - /** - * Increments the count by the given increment - * - * @param l - * Increment - */ - public void increment(long l) { - this.count.set(this.count.get() + l); - } - - @Override - public void write(DataOutput output) throws IOException { - // Write size, then count, then characteristics - WritableUtils.writeVInt(output, this.characteristics.size()); - this.count.write(output); - for (CharacteristicWritable characteristic : this.characteristics.values()) { - characteristic.write(output); - } - } - - @Override - public void readFields(DataInput input) throws IOException { - // Read size, then count, then characteristics - int size = WritableUtils.readVInt(input); - this.count.readFields(input); - this.characteristics.clear(); - for (int i = 0; i < size; i++) { - CharacteristicWritable cw = CharacteristicWritable.read(input); - this.characteristics.put(cw.getNode(), cw); - } - } - - @Override - public int compareTo(CharacteristicSetWritable cs) { - int size = this.characteristics.size(); - int otherSize = cs.characteristics.size(); - if (size < otherSize) { - return -1; - } else if (size > otherSize) { - return 1; - } else { - // Compare characteristics in turn - Iterator<CharacteristicWritable> iter = this.getCharacteristics(); - Iterator<CharacteristicWritable> otherIter = cs.getCharacteristics(); - - int compare = 0; - while (iter.hasNext()) { - CharacteristicWritable c = iter.next(); - CharacteristicWritable otherC = otherIter.next(); - compare = c.compareTo(otherC); - if (compare != 0) - return compare; - } - return compare; - } - } - - @Override - public boolean equals(Object other) { - if (!(other instanceof CharacteristicSetWritable)) - return false; - return this.compareTo((CharacteristicSetWritable) other) == 0; - } - - @Override - public int hashCode() { - // Build a hash code from characteristics - if (this.characteristics.size() == 0) - return 0; - Iterator<CharacteristicWritable> iter = this.getCharacteristics(); - int hash = 17; - while (iter.hasNext()) { - hash = hash * 31 + iter.next().hashCode(); - } - return hash; - } - - @Override - public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("{ "); - builder.append(this.count.get()); - Iterator<CharacteristicWritable> iter = this.getCharacteristics(); - while (iter.hasNext()) { - builder.append(" , "); - builder.append(iter.next().toString()); - } - builder.append(" }"); - return builder.toString(); - } - -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicWritable.java deleted file mode 100644 index 90fc7db..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/CharacteristicWritable.java +++ /dev/null @@ -1,160 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.DataOutput; -import java.io.IOException; - -import org.apache.hadoop.io.LongWritable; -import org.apache.hadoop.io.WritableComparable; - -import com.hp.hpl.jena.graph.Node; - -/** - * Represents a characteristic for a single node and contains the node and a - * count associated with that node - * <p> - * Note that characteristics are compared based upon only the nodes and not - * their counts - * </p> - * - * - * - */ -public class CharacteristicWritable implements WritableComparable<CharacteristicWritable> { - - private NodeWritable node = new NodeWritable(); - private LongWritable count = new LongWritable(); - - /** - * Creates an empty characteristic writable - */ - public CharacteristicWritable() { - this(null); - } - - /** - * Creates a characteristic writable with the given node and the default - * count of 1 - * - * @param n - * Node - */ - public CharacteristicWritable(Node n) { - this(n, 1); - } - - /** - * Creates a characteristic writable with the given node and count - * - * @param n - * Node - * @param count - * Count - */ - public CharacteristicWritable(Node n, long count) { - this.node.set(n); - this.count.set(count); - } - - /** - * Creates a new instance and reads in its data from the given input - * - * @param input - * Input - * @return New instance - * @throws IOException - */ - public static CharacteristicWritable read(DataInput input) throws IOException { - CharacteristicWritable cw = new CharacteristicWritable(); - cw.readFields(input); - return cw; - } - - /** - * Gets the node - * - * @return Node - */ - public NodeWritable getNode() { - return this.node; - } - - /** - * Gets the count - * - * @return Count - */ - public LongWritable getCount() { - return this.count; - } - - /** - * Increments the count by 1 - */ - public void increment() { - this.increment(1); - } - - /** - * Increments the count by the given value - * - * @param l - * Value to increment by - */ - public void increment(long l) { - this.count.set(this.count.get() + l); - } - - @Override - public void write(DataOutput output) throws IOException { - this.node.write(output); - this.count.write(output); - } - - @Override - public void readFields(DataInput input) throws IOException { - this.node.readFields(input); - this.count.readFields(input); - } - - @Override - public int compareTo(CharacteristicWritable o) { - return this.node.compareTo(o.node); - } - - @Override - public boolean equals(Object other) { - if (!(other instanceof CharacteristicWritable)) - return false; - return this.compareTo((CharacteristicWritable) other) == 0; - } - - @Override - public int hashCode() { - return this.node.hashCode(); - } - - @Override - public String toString() { - return "(" + this.node.toString() + ", " + this.count.toString() + ")"; - } - -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeTupleWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeTupleWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeTupleWritable.java deleted file mode 100644 index e06aac4..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeTupleWritable.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.IOException; - -import org.apache.jena.atlas.lib.Tuple; -import com.hp.hpl.jena.graph.Node; - -/** - * A writable RDF tuple - * <p> - * Unlike the more specific {@link TripleWritable} and {@link QuadWritable} this - * class allows for arbitrary length tuples and does not restrict tuples to - * being of uniform size. - * </p> - * - * - * - */ -public class NodeTupleWritable extends AbstractNodeTupleWritable<Tuple<Node>> { - - /** - * Creates a new empty instance - */ - public NodeTupleWritable() { - this(null); - } - - /** - * Creates a new instance with the given value - * - * @param tuple - * Tuple - */ - public NodeTupleWritable(Tuple<Node> tuple) { - super(tuple); - } - - /** - * Creates a new instance from the given input - * - * @param input - * Input - * @return New instance - * @throws IOException - */ - public static NodeTupleWritable read(DataInput input) throws IOException { - NodeTupleWritable t = new NodeTupleWritable(); - t.readFields(input); - return t; - } - - @Override - protected Tuple<Node> createTuple(Node[] ns) { - return Tuple.create(ns); - } - - @Override - protected Node[] createNodes(Tuple<Node> tuple) { - return tuple.tuple(); - } -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeWritable.java deleted file mode 100644 index cf00f8d..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/NodeWritable.java +++ /dev/null @@ -1,188 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.DataOutput; -import java.io.IOException; -import org.apache.hadoop.io.WritableComparable; -import org.apache.hadoop.io.WritableComparator; -import org.apache.jena.hadoop.rdf.types.comparators.SimpleBinaryComparator; -import org.apache.jena.hadoop.rdf.types.converters.ThriftConverter; -import org.apache.jena.riot.thrift.TRDF; -import org.apache.jena.riot.thrift.ThriftConvert; -import org.apache.jena.riot.thrift.wire.RDF_Term; -import org.apache.thrift.TException; - -import com.hp.hpl.jena.graph.Node; -import com.hp.hpl.jena.sparql.util.NodeUtils; - -/** - * A writable for {@link Node} instances - * <p> - * This uses <a - * href="http://afs.github.io/rdf-thrift/rdf-binary-thrift.html">RDF Thrift</a> - * for the binary encoding of terms. The in-memory storage for this type is both - * a {@link Node} and a {@link RDF_Term} with lazy conversion between the two - * forms as necessary. - * </p> - */ -public class NodeWritable implements WritableComparable<NodeWritable> { - - static { - WritableComparator.define(NodeWritable.class, new SimpleBinaryComparator()); - } - - private Node node; - private RDF_Term term = new RDF_Term(); - - /** - * Creates an empty writable - */ - public NodeWritable() { - this(null); - } - - /** - * Creates a new instance from the given input - * - * @param input - * Input - * @return New instance - * @throws IOException - */ - public static NodeWritable read(DataInput input) throws IOException { - NodeWritable nw = new NodeWritable(); - nw.readFields(input); - return nw; - } - - /** - * Creates a new writable with the given value - * - * @param n - * Node - */ - public NodeWritable(Node n) { - this.set(n); - } - - /** - * Gets the node - * - * @return Node - */ - public Node get() { - // We may not have yet loaded the node - if (this.node == null) { - // If term is set to undefined then node is supposed to be null - if (this.term.isSet() && !this.term.isSetUndefined()) { - this.node = ThriftConvert.convert(this.term); - } - } - return this.node; - } - - /** - * Sets the node - * - * @param n - * Node - */ - public void set(Node n) { - this.node = n; - // Clear the term for now - // We only convert the Node to a term as and when we want to write it - // out in order to not waste effort if the value is never written out - this.term.clear(); - } - - @Override - public void readFields(DataInput input) throws IOException { - // Clear previous value - this.node = null; - this.term.clear(); - - // Read in the new value - int termLength = input.readInt(); - byte[] buffer = new byte[termLength]; - input.readFully(buffer); - try { - ThriftConverter.fromBytes(buffer, this.term); - } catch (TException e) { - throw new IOException(e); - } - - // Note that we don't convert it back into a Node at this time - } - - @Override - public void write(DataOutput output) throws IOException { - // May not yet have prepared the Thrift term - if (!this.term.isSet()) { - if (this.node == null) { - this.term.setUndefined(TRDF.UNDEF); - } else { - ThriftConvert.toThrift(this.node, null, this.term, false); - } - } - - // Write out the Thrift term - byte[] buffer; - try { - buffer = ThriftConverter.toBytes(this.term); - } catch (TException e) { - throw new IOException(e); - } - output.writeInt(buffer.length); - output.write(buffer); - } - - @Override - public int compareTo(NodeWritable other) { - // Use get() rather than accessing the field directly because the node - // field is lazily instantiated from the Thrift term - return NodeUtils.compareRDFTerms(this.get(), other.get()); - } - - @Override - public String toString() { - // Use get() rather than accessing the field directly because the node - // field is lazily instantiated from the Thrift term - Node n = this.get(); - if (n == null) - return ""; - return n.toString(); - } - - @Override - public int hashCode() { - // Use get() rather than accessing the field directly because the node - // field is lazily instantiated from the Thrift term - Node n = this.get(); - return n != null ? this.get().hashCode() : 0; - } - - @Override - public boolean equals(Object other) { - if (!(other instanceof NodeWritable)) - return false; - return this.compareTo((NodeWritable) other) == 0; - } -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/QuadWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/QuadWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/QuadWritable.java deleted file mode 100644 index 3d9dd00..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/QuadWritable.java +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.DataOutput; -import java.io.IOException; - -import org.apache.hadoop.io.WritableComparator; -import org.apache.jena.hadoop.rdf.types.comparators.SimpleBinaryComparator; -import org.apache.jena.hadoop.rdf.types.converters.ThriftConverter; -import org.apache.jena.riot.thrift.ThriftConvert; -import org.apache.jena.riot.thrift.wire.RDF_Quad; -import org.apache.thrift.TException; - -import com.hp.hpl.jena.graph.Node; -import com.hp.hpl.jena.sparql.core.Quad; - -/** - * A writable quad - */ -public class QuadWritable extends AbstractNodeTupleWritable<Quad> { - - static { - WritableComparator.define(QuadWritable.class, new SimpleBinaryComparator()); - } - - private RDF_Quad quad = new RDF_Quad(); - - /** - * Creates a new empty instance - */ - public QuadWritable() { - this(null); - } - - /** - * Creates a new instance with the given value - * - * @param q - * Quad - */ - public QuadWritable(Quad q) { - super(q); - } - - /** - * Creates a new instance from the given input - * - * @param input - * Input - * @return New instance - * @throws IOException - */ - public static QuadWritable read(DataInput input) throws IOException { - QuadWritable q = new QuadWritable(); - q.readFields(input); - return q; - } - - @Override - public void set(Quad tuple) { - super.set(tuple); - this.quad.clear(); - } - - @Override - public void readFields(DataInput input) throws IOException { - this.quad.clear(); - int tripleLength = input.readInt(); - byte[] buffer = new byte[tripleLength]; - input.readFully(buffer); - try { - ThriftConverter.fromBytes(buffer, this.quad); - } catch (TException e) { - throw new IOException(e); - } - this.setInternal(new Quad(ThriftConvert.convert(this.quad.getG()), ThriftConvert.convert(this.quad.getS()), - ThriftConvert.convert(this.quad.getP()), ThriftConvert.convert(this.quad.getO()))); - } - - @Override - public void write(DataOutput output) throws IOException { - if (this.get() == null) - throw new IOException( - "Null quads cannot be written using this class, consider using NodeTupleWritable instead"); - - // May not have yet prepared the Thrift triple - if (!this.quad.isSetS()) { - Quad tuple = this.get(); - this.quad.setG(ThriftConvert.convert(tuple.getGraph(), false)); - this.quad.setS(ThriftConvert.convert(tuple.getSubject(), false)); - this.quad.setP(ThriftConvert.convert(tuple.getPredicate(), false)); - this.quad.setO(ThriftConvert.convert(tuple.getObject(), false)); - } - - byte[] buffer; - try { - buffer = ThriftConverter.toBytes(this.quad); - } catch (TException e) { - throw new IOException(e); - } - output.writeInt(buffer.length); - output.write(buffer); - } - - @Override - protected Quad createTuple(Node[] ns) { - if (ns.length != 4) - throw new IllegalArgumentException(String.format( - "Incorrect number of nodes to form a quad - got %d but expected 4", ns.length)); - return new Quad(ns[0], ns[1], ns[2], ns[3]); - } - - @Override - protected Node[] createNodes(Quad tuple) { - return new Node[] { tuple.getGraph(), tuple.getSubject(), tuple.getPredicate(), tuple.getObject() }; - } - -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/TripleWritable.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/TripleWritable.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/TripleWritable.java deleted file mode 100644 index a17052b..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/TripleWritable.java +++ /dev/null @@ -1,138 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types; - -import java.io.DataInput; -import java.io.DataOutput; -import java.io.IOException; - -import org.apache.hadoop.io.WritableComparator; -import org.apache.jena.hadoop.rdf.types.comparators.SimpleBinaryComparator; -import org.apache.jena.hadoop.rdf.types.converters.ThriftConverter; -import org.apache.jena.riot.thrift.ThriftConvert; -import org.apache.jena.riot.thrift.wire.RDF_Triple; -import org.apache.thrift.TException; - -import com.hp.hpl.jena.graph.Node; -import com.hp.hpl.jena.graph.Triple; - -/** - * A writable triple - * - * - * - */ -public class TripleWritable extends AbstractNodeTupleWritable<Triple> { - - static { - WritableComparator.define(TripleWritable.class, new SimpleBinaryComparator()); - } - - private RDF_Triple triple = new RDF_Triple(); - - /** - * Creates a new instance using the default NTriples node formatter - */ - public TripleWritable() { - this(null); - } - - /** - * Creates a new instance with a given value that uses a specific node - * formatter - * - * @param t - * Triple - */ - public TripleWritable(Triple t) { - super(t); - } - - /** - * Creates a new instance from the given input - * - * @param input - * Input - * @return New instance - * @throws IOException - */ - public static TripleWritable read(DataInput input) throws IOException { - TripleWritable t = new TripleWritable(); - t.readFields(input); - return t; - } - - @Override - public void set(Triple tuple) { - super.set(tuple); - this.triple.clear(); - } - - @Override - public void readFields(DataInput input) throws IOException { - this.triple.clear(); - int tripleLength = input.readInt(); - byte[] buffer = new byte[tripleLength]; - input.readFully(buffer); - try { - ThriftConverter.fromBytes(buffer, this.triple); - } catch (TException e) { - throw new IOException(e); - } - this.setInternal(new Triple(ThriftConvert.convert(this.triple.getS()), - ThriftConvert.convert(this.triple.getP()), ThriftConvert.convert(this.triple.getO()))); - } - - @Override - public void write(DataOutput output) throws IOException { - if (this.get() == null) - throw new IOException( - "Null triples cannot be written using this class, consider using NodeTupleWritable instead"); - - // May not have yet prepared the Thrift triple - if (!this.triple.isSetS()) { - Triple tuple = this.get(); - this.triple.setS(ThriftConvert.convert(tuple.getSubject(), false)); - this.triple.setP(ThriftConvert.convert(tuple.getPredicate(), false)); - this.triple.setO(ThriftConvert.convert(tuple.getObject(), false)); - } - - byte[] buffer; - try { - buffer = ThriftConverter.toBytes(this.triple); - } catch (TException e) { - throw new IOException(e); - } - output.writeInt(buffer.length); - output.write(buffer); - } - - @Override - protected Triple createTuple(Node[] ns) { - if (ns.length != 3) - throw new IllegalArgumentException(String.format( - "Incorrect number of nodes to form a triple - got %d but expected 3", ns.length)); - return new Triple(ns[0], ns[1], ns[2]); - } - - @Override - protected Node[] createNodes(Triple tuple) { - return new Node[] { tuple.getSubject(), tuple.getPredicate(), tuple.getObject() }; - } -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/comparators/SimpleBinaryComparator.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/comparators/SimpleBinaryComparator.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/comparators/SimpleBinaryComparator.java deleted file mode 100644 index 6c46714..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/comparators/SimpleBinaryComparator.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types.comparators; - -import org.apache.hadoop.io.WritableComparator; - -/** - * A general purpose comparator that may be used with any types which can be - * compared directly on their binary encodings - */ -public class SimpleBinaryComparator extends WritableComparator { - - @Override - public int compare(byte[] b1, int s1, int l1, byte[] b2, int s2, int l2) { - return WritableComparator.compareBytes(b1, s1, l1, b2, s2, l2); - } - -} http://git-wip-us.apache.org/repos/asf/jena/blob/a6c0fefc/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/converters/ThriftConverter.java ---------------------------------------------------------------------- diff --git a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/converters/ThriftConverter.java b/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/converters/ThriftConverter.java deleted file mode 100644 index 0675afc..0000000 --- a/jena-hadoop-rdf/hadoop-rdf-common/src/main/java/org/apache/jena/hadoop/rdf/types/converters/ThriftConverter.java +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.jena.hadoop.rdf.types.converters; - -import java.io.ByteArrayOutputStream; - -import org.apache.jena.riot.thrift.wire.RDF_Quad; -import org.apache.jena.riot.thrift.wire.RDF_Term; -import org.apache.jena.riot.thrift.wire.RDF_Triple; -import org.apache.thrift.TException; -import org.apache.thrift.protocol.TCompactProtocol; -import org.apache.thrift.protocol.TProtocol; -import org.apache.thrift.transport.TIOStreamTransport; -import org.apache.thrift.transport.TMemoryInputTransport; -import org.apache.thrift.transport.TTransport; - -/** - * Helper for converting between the binary representation of Nodes, Triples and - * Quads and their Jena API equivalents - * - */ -public class ThriftConverter { - - private static ThreadLocal<TMemoryInputTransport> inputTransports = new ThreadLocal<>(); - private static ThreadLocal<TProtocol> inputProtocols = new ThreadLocal<>(); - - private static ThreadLocal<ByteArrayOutputStream> outputStreams = new ThreadLocal<>(); - private static ThreadLocal<TTransport> outputTransports = new ThreadLocal<>(); - private static ThreadLocal<TProtocol> outputProtocols = new ThreadLocal<>(); - - private static TMemoryInputTransport getInputTransport() { - TMemoryInputTransport transport = inputTransports.get(); - if (transport != null) - return transport; - - transport = new TMemoryInputTransport(); - inputTransports.set(transport); - return transport; - } - - private static TProtocol getInputProtocol() { - TProtocol protocol = inputProtocols.get(); - if (protocol != null) - return protocol; - - protocol = new TCompactProtocol(getInputTransport()); - inputProtocols.set(protocol); - return protocol; - } - - private static ByteArrayOutputStream getOutputStream() { - ByteArrayOutputStream output = outputStreams.get(); - if (output != null) - return output; - - output = new ByteArrayOutputStream(); - outputStreams.set(output); - return output; - } - - private static TTransport getOutputTransport() { - TTransport transport = outputTransports.get(); - if (transport != null) - return transport; - - transport = new TIOStreamTransport(getOutputStream()); - outputTransports.set(transport); - return transport; - } - - private static TProtocol getOutputProtocol() { - TProtocol protocol = outputProtocols.get(); - if (protocol != null) - return protocol; - - protocol = new TCompactProtocol(getOutputTransport()); - outputProtocols.set(protocol); - return protocol; - } - - public static byte[] toBytes(RDF_Term term) throws TException { - ByteArrayOutputStream output = getOutputStream(); - output.reset(); - - TProtocol protocol = getOutputProtocol(); - term.write(protocol); - - return output.toByteArray(); - } - - public static void fromBytes(byte[] bs, RDF_Term term) throws TException { - TMemoryInputTransport transport = getInputTransport(); - transport.reset(bs); - TProtocol protocol = getInputProtocol(); - term.read(protocol); - } - - public static void fromBytes(byte[] buffer, RDF_Triple triple) throws TException { - TMemoryInputTransport transport = getInputTransport(); - transport.reset(buffer); - TProtocol protocol = getInputProtocol(); - triple.read(protocol); - } - - public static byte[] toBytes(RDF_Triple triple) throws TException { - ByteArrayOutputStream output = getOutputStream(); - output.reset(); - - TProtocol protocol = getOutputProtocol(); - triple.write(protocol); - - return output.toByteArray(); - } - - public static void fromBytes(byte[] buffer, RDF_Quad quad) throws TException { - TMemoryInputTransport transport = getInputTransport(); - transport.reset(buffer); - TProtocol protocol = getInputProtocol(); - quad.read(protocol); - } - - public static byte[] toBytes(RDF_Quad quad) throws TException { - ByteArrayOutputStream output = getOutputStream(); - output.reset(); - - TProtocol protocol = getOutputProtocol(); - quad.write(protocol); - - return output.toByteArray(); - } -}
