You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by cl...@apache.org on 2015/05/10 15:03:52 UTC
[23/50] [abbrv] jena git commit: Using Java 8 types in o.a.j.atlas
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialDocProducerTriples.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialDocProducerTriples.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialDocProducerTriples.java
index 5445aeb..e3f0b73 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialDocProducerTriples.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialDocProducerTriples.java
@@ -18,13 +18,7 @@
package org.apache.jena.query.spatial;
-import java.util.List;
-
-import org.apache.jena.atlas.iterator.Iter;
-import org.apache.jena.atlas.iterator.Transform;
import org.apache.jena.graph.Node ;
-import org.apache.jena.graph.Triple ;
-import org.apache.jena.sparql.core.Quad ;
import org.apache.jena.sparql.core.QuadAction ;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -62,17 +56,4 @@ public class SpatialDocProducerTriples implements SpatialDocProducer {
return;
context.index(g, s, p, o);
}
-
- static Transform<Quad, Triple> QuadsToTriples = new Transform<Quad, Triple>() {
- @Override
- public Triple convert(Quad item) {
- return item.asTriple();
- }
-
- };
-
- static private List<Triple> quadsToTriples(List<Quad> quads) {
- return Iter.map(quads, QuadsToTriples);
- }
-
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/base/block/BlockMgrCache.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/base/block/BlockMgrCache.java b/jena-tdb/src/main/java/org/apache/jena/tdb/base/block/BlockMgrCache.java
index ac9e67f..4b884e8 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/base/block/BlockMgrCache.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/base/block/BlockMgrCache.java
@@ -19,8 +19,8 @@
package org.apache.jena.tdb.base.block;
import java.util.Iterator ;
+import java.util.function.BiConsumer;
-import org.apache.jena.atlas.lib.ActionKeyValue ;
import org.apache.jena.atlas.lib.Cache ;
import org.apache.jena.atlas.lib.CacheFactory ;
import org.slf4j.Logger ;
@@ -67,9 +67,9 @@ public class BlockMgrCache extends BlockMgrSync
else
{
writeCache = CacheFactory.createCache(writeSlots) ;
- writeCache.setDropHandler(new ActionKeyValue<Long, Block>(){
+ writeCache.setDropHandler(new BiConsumer<Long, Block>(){
@Override
- public void apply(Long id, Block block)
+ public void accept(Long id, Block block)
{
// We're inside a synchronized operation at this point.
log("Cache spill: write block: %d", id) ;
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/index/bplustree/BPlusTreeRewriter.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/index/bplustree/BPlusTreeRewriter.java b/jena-tdb/src/main/java/org/apache/jena/tdb/index/bplustree/BPlusTreeRewriter.java
index a6c01ff..3f29ae3 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/index/bplustree/BPlusTreeRewriter.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/index/bplustree/BPlusTreeRewriter.java
@@ -23,10 +23,10 @@ import static org.apache.jena.tdb.index.bplustree.BPlusTreeRewriterUtils.printIn
import static org.apache.jena.tdb.index.bplustree.BPlusTreeRewriterUtils.summarizeDataBlocks ;
import java.util.Iterator ;
+import java.util.function.Function;
import org.apache.jena.atlas.iterator.Iter ;
import org.apache.jena.atlas.iterator.IteratorWithBuffer ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Pair ;
import org.apache.jena.tdb.base.block.BlockMgr ;
import org.apache.jena.tdb.base.buffer.PtrBuffer ;
@@ -141,17 +141,13 @@ public class BPlusTreeRewriter
final RecordBufferPageMgr mgr = bpt.getRecordsMgr().getRecordBufferPageMgr() ;
Iterator<RecordBufferPage> iter = new RecordBufferPageLinker(new RecordBufferPagePacker(records, mgr)) ;
- Transform<RecordBufferPage, Pair<Integer, Record>> transform = new Transform<RecordBufferPage, Pair<Integer, Record>>()
- {
- @Override
- public Pair<Integer, Record> convert(RecordBufferPage rbp)
+ Function<RecordBufferPage, Pair<Integer, Record>> transform = rbp ->
{
mgr.put(rbp) ;
Record r = rbp.getRecordBuffer().getHigh() ;
r = bpt.getRecordFactory().createKeyOnly(r) ;
return new Pair<>(rbp.getId(), r) ;
- }
- } ;
+ };
// Write and convert to split pairs.
Iterator<Pair<Integer, Record>> iter2 = Iter.map(iter, transform) ;
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/lib/NodeLib.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/lib/NodeLib.java b/jena-tdb/src/main/java/org/apache/jena/tdb/lib/NodeLib.java
index 3d1c8f7..e9cf3e9 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/lib/NodeLib.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/lib/NodeLib.java
@@ -27,7 +27,6 @@ import java.security.NoSuchAlgorithmException ;
import java.util.Iterator ;
import org.apache.jena.atlas.iterator.Iter ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Bytes ;
import org.apache.jena.atlas.lib.Pool ;
import org.apache.jena.atlas.lib.PoolBase ;
@@ -222,12 +221,6 @@ public class NodeLib
public static Iterator<Node> nodes(final NodeTable nodeTable, Iterator<NodeId> iter)
{
- return Iter.map(iter, new Transform<NodeId, Node>(){
- @Override
- public Node convert(NodeId item)
- {
- return nodeTable.getNodeForNodeId(item) ;
- }
- }) ;
+ return Iter.map(iter, nodeTable::getNodeForNodeId) ;
}
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/lib/TupleLib.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/lib/TupleLib.java b/jena-tdb/src/main/java/org/apache/jena/tdb/lib/TupleLib.java
index ff9687e..1925c87 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/lib/TupleLib.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/lib/TupleLib.java
@@ -21,9 +21,7 @@ package org.apache.jena.tdb.lib;
import static org.apache.jena.tdb.sys.SystemTDB.SizeOfLong ;
import java.util.Iterator;
-
import org.apache.jena.atlas.iterator.Iter ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Bytes ;
import org.apache.jena.atlas.lib.ColumnMap ;
import org.apache.jena.atlas.lib.InternalErrorException ;
@@ -45,47 +43,23 @@ public class TupleLib
{
public static Iterator<Tuple<Node>> convertToNodes(final NodeTable nodeTable, Iterator<Tuple<NodeId>> iter)
{
- Transform<Tuple<NodeId>, Tuple<Node>> action = new Transform<Tuple<NodeId>, Tuple<Node>>(){
- @Override
- public Tuple<Node> convert(Tuple<NodeId> item)
- {
- return tupleNodes(nodeTable, item) ;
- }} ;
- return Iter.map(iter, action) ;
+ return Iter.map(iter, item -> tupleNodes(nodeTable, item)) ;
}
public static Iterator<Tuple<NodeId>> convertToNodeId(final NodeTable nodeTable, Iterator<Tuple<Node>> iter)
{
- Transform<Tuple<Node>, Tuple<NodeId>> action = new Transform<Tuple<Node>, Tuple<NodeId>>(){
- @Override
- public Tuple<NodeId> convert(Tuple<Node> item)
- {
- return tupleNodeIds(nodeTable, item) ;
- }} ;
- return Iter.map(iter, action) ;
+ return Iter.map(iter, item -> tupleNodeIds(nodeTable, item)) ;
}
//Leave - bypasses extract step in Tuple<NodeId> -> Tuple<Node> -> Triple
public static Iterator<Triple> convertToTriples(final NodeTable nodeTable, Iterator<Tuple<NodeId>> iter)
{
- Transform<Tuple<NodeId>, Triple> action = new Transform<Tuple<NodeId>, Triple>(){
- @Override
- public Triple convert(Tuple<NodeId> item)
- {
- return triple(nodeTable, item) ;
- }} ;
- return Iter.map(iter, action) ;
+ return Iter.map(iter, item -> triple(nodeTable, item)) ;
}
public static Iterator<Quad> convertToQuads(final NodeTable nodeTable, Iterator<Tuple<NodeId>> iter)
{
- Transform<Tuple<NodeId>, Quad> action = new Transform<Tuple<NodeId>, Quad>(){
- @Override
- public Quad convert(Tuple<NodeId> item)
- {
- return quad(nodeTable, item) ;
- }} ;
- return Iter.map(iter, action) ;
+ return Iter.map(iter, item -> quad(nodeTable, item)) ;
}
public static Tuple<Node> tupleNodes(NodeTable nodeTable, Tuple<NodeId> ids)
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/solver/OpExecutorTDB1.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/OpExecutorTDB1.java b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/OpExecutorTDB1.java
index e1ab89f..77cfbfa 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/OpExecutorTDB1.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/OpExecutorTDB1.java
@@ -18,8 +18,9 @@
package org.apache.jena.tdb.solver;
-import org.apache.jena.atlas.iterator.Filter ;
-import org.apache.jena.atlas.lib.Tuple ;
+import java.util.function.Predicate;
+
+import org.apache.jena.atlas.lib.Tuple;
import org.apache.jena.atlas.logging.Log ;
import org.apache.jena.graph.Graph ;
import org.apache.jena.graph.Node ;
@@ -44,7 +45,7 @@ import org.apache.jena.sparql.expr.ExprList ;
import org.apache.jena.sparql.mgt.Explain ;
import org.apache.jena.tdb.store.DatasetGraphTDB ;
import org.apache.jena.tdb.store.GraphTDB ;
-import org.apache.jena.tdb.store.NodeId ;
+import org.apache.jena.tdb.store.NodeId;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -345,7 +346,7 @@ public class OpExecutorTDB1 extends OpExecutor
protected QueryIterator execute(OpDatasetNames dsNames, QueryIterator input)
{
DatasetGraphTDB ds = (DatasetGraphTDB)execCxt.getDataset() ;
- Filter<Tuple<NodeId>> filter = QC2.getFilter(execCxt.getContext()) ;
+ Predicate<Tuple<NodeId>> filter = QC2.getFilter(execCxt.getContext()) ;
Node gn = dsNames.getGraphNode() ;
if ( Var.isVar(gn) )
return SolverLib.graphNames(ds, dsNames.getGraphNode(), input, filter, execCxt) ;
@@ -368,7 +369,7 @@ public class OpExecutorTDB1 extends OpExecutor
/** An op executor that simply executes a BGP or QuadPattern without any reordering */
private static class OpExecutorPlainTDB extends OpExecutor
{
- Filter<Tuple<NodeId>> filter = null ;
+ Predicate<Tuple<NodeId>> filter = null ;
public OpExecutorPlainTDB(ExecutionContext execCxt)
{
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/solver/QC2.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/QC2.java b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/QC2.java
index 26200c3..331ac59 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/QC2.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/QC2.java
@@ -18,7 +18,8 @@
package org.apache.jena.tdb.solver;
-import org.apache.jena.atlas.iterator.Filter ;
+import java.util.function.Predicate;
+
import org.apache.jena.atlas.lib.Tuple ;
import org.apache.jena.sparql.util.Context ;
import org.apache.jena.tdb.TDBException ;
@@ -27,13 +28,13 @@ import org.apache.jena.tdb.sys.SystemTDB ;
public class QC2
{
- public static Filter<Tuple<NodeId>> getFilter(Context context)
+ public static Predicate<Tuple<NodeId>> getFilter(Context context)
{
Object x = context.get(SystemTDB.symTupleFilter) ;
try {
@SuppressWarnings("unchecked")
- Filter<Tuple<NodeId>> f = (Filter<Tuple<NodeId>>)x ;
+ Predicate<Tuple<NodeId>> f = (Predicate<Tuple<NodeId>>)x ;
return f ;
} catch (ClassCastException ex)
{
@@ -41,7 +42,7 @@ public class QC2
}
}
- public static void setFilter(Context context, Filter<Tuple<NodeId>> filter)
+ public static void setFilter(Context context, Predicate<Tuple<NodeId>> filter)
{
context.set(SystemTDB.symTupleFilter, filter) ;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/solver/SolverLib.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/SolverLib.java b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/SolverLib.java
index b92bfc1..cf813e1 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/SolverLib.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/SolverLib.java
@@ -21,6 +21,9 @@ package org.apache.jena.tdb.solver;
import static org.apache.jena.tdb.lib.Lib2.printAbbrev ;
import java.util.* ;
+import java.util.function.Consumer;
+import java.util.function.Function;
+import java.util.function.Predicate;
import org.apache.jena.atlas.iterator.* ;
import org.apache.jena.atlas.lib.Tuple ;
@@ -54,7 +57,7 @@ public class SolverLib
/** Non-reordering execution of a basic graph pattern, given a iterator of bindings as input */
public static QueryIterator execute(GraphTDB graph, BasicPattern pattern,
- QueryIterator input, Filter<Tuple<NodeId>> filter,
+ QueryIterator input, Predicate<Tuple<NodeId>> filter,
ExecutionContext execCxt)
{
// Maybe default graph or named graph.
@@ -67,7 +70,7 @@ public class SolverLib
* GraphNode is null for execution over the real default graph.
*/
public static QueryIterator execute(DatasetGraphTDB ds, Node graphNode, BasicPattern pattern,
- QueryIterator input, Filter<Tuple<NodeId>> filter,
+ QueryIterator input, Predicate<Tuple<NodeId>> filter,
ExecutionContext execCxt)
{
NodeTupleTable ntt = ds.chooseNodeTupleTable(graphNode) ;
@@ -81,14 +84,14 @@ public class SolverLib
* (in convToBinding(BindingNodeId, NodeTable)
*/
public static Iterator<Binding> convertToNodes(Iterator<BindingNodeId> iterBindingIds, NodeTable nodeTable)
- { return Iter.map(iterBindingIds, convToBinding(nodeTable)) ; }
+ { return Iter.map(iterBindingIds, bindingNodeIds -> convToBinding(bindingNodeIds, nodeTable)) ; }
// The worker. Callers choose the NodeTupleTable.
// graphNode may be Node.ANY, meaning we should make triples unique.
// graphNode may be null, meaning default graph
private static QueryIterator execute(NodeTupleTable nodeTupleTable, Node graphNode, BasicPattern pattern,
- QueryIterator input, Filter<Tuple<NodeId>> filter,
+ QueryIterator input, Predicate<Tuple<NodeId>> filter,
ExecutionContext execCxt)
{
if ( Quad.isUnionGraph(graphNode) )
@@ -202,21 +205,11 @@ public class SolverLib
public static Iterator<BindingNodeId> solve(NodeTupleTable nodeTupleTable,
Tuple<Node> tuple,
boolean anyGraph,
- Iterator<BindingNodeId> chain, Filter<Tuple<NodeId>> filter,
+ Iterator<BindingNodeId> chain, Predicate<Tuple<NodeId>> filter,
ExecutionContext execCxt)
{
return new StageMatchTuple(nodeTupleTable, chain, tuple, anyGraph, filter, execCxt) ;
}
-
- // Transform : BindingNodeId ==> Binding
- private static Transform<BindingNodeId, Binding> convToBinding(final NodeTable nodeTable) {
- return new Transform<BindingNodeId, Binding>() {
- @Override
- public Binding convert(BindingNodeId bindingNodeIds) {
- return convToBinding(bindingNodeIds, nodeTable) ;
- }
- } ;
- }
public static Binding convToBinding(BindingNodeId bindingNodeIds, NodeTable nodeTable) {
if ( true )
@@ -235,15 +228,9 @@ public class SolverLib
}
// Transform : Binding ==> BindingNodeId
- public static Transform<Binding, BindingNodeId> convFromBinding(final NodeTable nodeTable)
+ public static Function<Binding, BindingNodeId> convFromBinding(final NodeTable nodeTable)
{
- return new Transform<Binding, BindingNodeId>()
- {
- @Override
- public BindingNodeId convert(Binding binding) {
- return SolverLib.convert(binding, nodeTable) ;
- }
- } ;
+ return binding -> SolverLib.convert(binding, nodeTable);
}
/** Binding ==> BindingNodeId, given a NodeTable */
@@ -276,7 +263,7 @@ public class SolverLib
/** Find whether a specific graph name is in the quads table. */
public static QueryIterator testForGraphName(DatasetGraphTDB ds, Node graphNode, QueryIterator input,
- Filter<Tuple<NodeId>> filter, ExecutionContext execCxt) {
+ Predicate<Tuple<NodeId>> filter, ExecutionContext execCxt) {
NodeId nid = TDBInternal.getNodeId(ds, graphNode) ;
boolean exists = !NodeId.isDoesNotExist(nid) ;
if ( exists ) {
@@ -302,7 +289,7 @@ public class SolverLib
/** Find all the graph names in the quads table. */
public static QueryIterator graphNames(DatasetGraphTDB ds, Node graphNode, QueryIterator input,
- Filter<Tuple<NodeId>> filter, ExecutionContext execCxt) {
+ Predicate<Tuple<NodeId>> filter, ExecutionContext execCxt) {
List<Abortable> killList = new ArrayList<>() ;
Iterator<Tuple<NodeId>> iter1 = ds.getQuadTable().getNodeTupleTable().find(NodeId.NodeIdAny, NodeId.NodeIdAny,
NodeId.NodeIdAny, NodeId.NodeIdAny) ;
@@ -319,14 +306,7 @@ public class SolverLib
Iterator<Node> iter4 = NodeLib.nodes(ds.getQuadTable().getNodeTupleTable().getNodeTable(), iter3) ;
final Var var = Var.alloc(graphNode) ;
- Transform<Node, Binding> bindGraphName = new Transform<Node, Binding>() {
- @Override
- public Binding convert(Node node) {
- return BindingFactory.binding(var, node) ;
- }
- } ;
-
- Iterator<Binding> iterBinding = Iter.map(iter4, bindGraphName) ;
+ Iterator<Binding> iterBinding = Iter.map(iter4, node -> BindingFactory.binding(var, node)) ;
// Not abortable.
return new QueryIterTDB(iterBinding, killList, input, execCxt) ;
}
@@ -364,10 +344,6 @@ public class SolverLib
}
// -- Mutating "transform in place"
- private static Action<Tuple<NodeId>> quadsToAnyTriples = new Action<Tuple<NodeId>>(){
- @Override
- public void apply(Tuple<NodeId> item)
- { item.tuple()[0] = NodeId.NodeIdAny ; }
- } ;
+ private static Consumer<Tuple<NodeId>> quadsToAnyTriples = item -> item.tuple()[0] = NodeId.NodeIdAny ;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageGeneratorDirectTDB.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageGeneratorDirectTDB.java b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageGeneratorDirectTDB.java
index bb76f7c..78bd791 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageGeneratorDirectTDB.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageGeneratorDirectTDB.java
@@ -18,15 +18,16 @@
package org.apache.jena.tdb.solver;
-import org.apache.jena.atlas.iterator.Filter ;
-import org.apache.jena.atlas.lib.Tuple ;
+import java.util.function.Predicate;
+
+import org.apache.jena.atlas.lib.Tuple;
import org.apache.jena.graph.Graph ;
import org.apache.jena.sparql.core.BasicPattern ;
import org.apache.jena.sparql.engine.ExecutionContext ;
import org.apache.jena.sparql.engine.QueryIterator ;
import org.apache.jena.sparql.engine.main.StageGenerator ;
import org.apache.jena.tdb.store.GraphTDB ;
-import org.apache.jena.tdb.store.NodeId ;
+import org.apache.jena.tdb.store.NodeId;
/** Execute TDB requests directly -- no reordering
* Using OpExecutor is preferred.
@@ -51,7 +52,7 @@ public class StageGeneratorDirectTDB implements StageGenerator
// Not us - bounce up the StageGenerator chain
return above.execute(pattern, input, execCxt) ;
GraphTDB graph = (GraphTDB)g ;
- Filter<Tuple<NodeId>> filter = QC2.getFilter(execCxt.getContext()) ;
+ Predicate<Tuple<NodeId>> filter = QC2.getFilter(execCxt.getContext()) ;
return SolverLib.execute(graph, pattern, input, filter, execCxt) ;
}
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageMatchTuple.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageMatchTuple.java b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageMatchTuple.java
index 77cdbdd..398502e 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageMatchTuple.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/StageMatchTuple.java
@@ -21,6 +21,9 @@ package org.apache.jena.tdb.solver;
import java.util.Iterator;
import java.util.List;
+import java.util.function.Consumer;
+import java.util.function.Function;
+import java.util.function.Predicate;
import org.apache.jena.atlas.iterator.* ;
import org.apache.jena.atlas.lib.Tuple ;
@@ -38,11 +41,11 @@ public class StageMatchTuple extends RepeatApplyIterator<BindingNodeId>
private final ExecutionContext execCxt ;
private boolean anyGraphs ;
- private Filter<Tuple<NodeId>> filter ;
+ private Predicate<Tuple<NodeId>> filter ;
public StageMatchTuple(NodeTupleTable nodeTupleTable, Iterator<BindingNodeId> input,
Tuple<Node> tuple, boolean anyGraphs,
- Filter<Tuple<NodeId>> filter,
+ Predicate<Tuple<NodeId>> filter,
ExecutionContext execCxt)
{
super(input) ;
@@ -117,10 +120,7 @@ public class StageMatchTuple extends RepeatApplyIterator<BindingNodeId>
}
// Map Tuple<NodeId> to BindingNodeId
- Transform<Tuple<NodeId>, BindingNodeId> binder = new Transform<Tuple<NodeId>, BindingNodeId>()
- {
- @Override
- public BindingNodeId convert(Tuple<NodeId> tuple)
+ Function<Tuple<NodeId>, BindingNodeId> binder = tuple ->
{
BindingNodeId output = new BindingNodeId(input) ;
for ( int i = 0 ; i < var.length ; i++ )
@@ -134,27 +134,11 @@ public class StageMatchTuple extends RepeatApplyIterator<BindingNodeId>
output.put(v, id) ;
}
return output ;
- }
} ;
return Iter.iter(iterMatches).map(binder).removeNulls() ;
}
-
- // -- Copying
- private static Transform<Tuple<NodeId>,Tuple<NodeId>> projectToTriples = new Transform<Tuple<NodeId>,Tuple<NodeId>>(){
- @Override
- public Tuple<NodeId> convert(Tuple<NodeId> item)
- {
- // Zap graph node id.
- Tuple<NodeId> t2 = Tuple.createTuple(NodeId.NodeIdAny, // Can't be null - gets bound to a daft variable.
- item.get(1),
- item.get(2),
- item.get(3)) ;
- return t2 ;
- } } ;
-
-
private static Iterator<Tuple<NodeId>> print(Iterator<Tuple<NodeId>> iter)
{
if ( ! iter.hasNext() )
@@ -202,9 +186,5 @@ public class StageMatchTuple extends RepeatApplyIterator<BindingNodeId>
}
// -- Mutating "transform in place"
- private static Action<Tuple<NodeId>> quadsToAnyTriples = new Action<Tuple<NodeId>>(){
- @Override
- public void apply(Tuple<NodeId> item)
- { item.tuple()[0] = NodeId.NodeIdAny ; }
- } ;
+ private static Consumer<Tuple<NodeId>> quadsToAnyTriples = item -> item.tuple()[0] = NodeId.NodeIdAny ;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/solver/stats/StatsCollectorBase.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/stats/StatsCollectorBase.java b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/stats/StatsCollectorBase.java
index 620b34a..72f0d97 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/solver/stats/StatsCollectorBase.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/solver/stats/StatsCollectorBase.java
@@ -22,7 +22,6 @@ package org.apache.jena.tdb.solver.stats;
import java.util.HashMap ;
import java.util.Map ;
-import org.apache.jena.atlas.lib.MapUtils ;
import org.apache.jena.graph.Node ;
/** Statistics collector, general purpose */
@@ -41,9 +40,9 @@ abstract class StatsCollectorBase<T>
public void record(T g, T s, T p, T o)
{
count++ ;
- MapUtils.increment(predicates, p) ;
+ predicates.put(p, predicates.getOrDefault(p, 0) + 1);
if ( typeTrigger != null && typeTrigger.equals(p) )
- MapUtils.increment(types, o) ;
+ types.put(o, types.getOrDefault(o, 0) + 1);
}
protected abstract Map<Node, Integer> convert(Map<T, Integer> map) ;
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetGraphTDB.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetGraphTDB.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetGraphTDB.java
index c577861..55dfe53 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetGraphTDB.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetGraphTDB.java
@@ -20,9 +20,7 @@ package org.apache.jena.tdb.store;
import java.util.Iterator ;
-
import org.apache.jena.atlas.iterator.Iter ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Closeable ;
import org.apache.jena.atlas.lib.Sync ;
import org.apache.jena.atlas.lib.Tuple ;
@@ -171,21 +169,12 @@ public class DatasetGraphTDB extends DatasetGraphCaching
public ReorderTransformation getReorderTransform() { return transform ; }
public DatasetPrefixesTDB getPrefixes() { return prefixes ; }
-
- static private Transform<Tuple<NodeId>, NodeId> project0 = new Transform<Tuple<NodeId>, NodeId>()
- {
- @Override
- public NodeId convert(Tuple<NodeId> item)
- {
- return item.get(0) ;
- }
- } ;
@Override
public Iterator<Node> listGraphNodes()
{
Iterator<Tuple<NodeId>> x = quadTable.getNodeTupleTable().findAll() ;
- Iterator<NodeId> z = Iter.iter(x).map(project0).distinct() ;
+ Iterator<NodeId> z = Iter.iter(x).map(t -> t.get(0)).distinct() ;
return NodeLib.nodes(quadTable.getNodeTupleTable().getNodeTable(), z) ;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/store/GraphTDB.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/GraphTDB.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/GraphTDB.java
index 17d2e25..93fbf69 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/GraphTDB.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/GraphTDB.java
@@ -19,9 +19,9 @@
package org.apache.jena.tdb.store ;
import java.util.Iterator ;
+import java.util.function.Function;
import org.apache.jena.atlas.iterator.Iter ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Closeable ;
import org.apache.jena.atlas.lib.Sync ;
import org.apache.jena.atlas.lib.Tuple ;
@@ -166,18 +166,11 @@ public class GraphTDB extends GraphView implements Closeable, Sync {
return (int)Iter.count(iter) ;
}
- private static Transform<Tuple<NodeId>, Tuple<NodeId>> project4TupleTo3Tuple = new Transform<Tuple<NodeId>, Tuple<NodeId>>() {
- @Override
- public Tuple<NodeId> convert(Tuple<NodeId> item) {
- if ( item.size() != 4 )
- throw new TDBException(
- "Expected a Tuple of 4, got: "
- + item) ;
- return Tuple.createTuple(item.get(1),
- item.get(2),
- item.get(3)) ;
- }
- } ;
+ private static Function<Tuple<NodeId>, Tuple<NodeId>> project4TupleTo3Tuple = item -> {
+ if (item.size() != 4)
+ throw new TDBException("Expected a Tuple of 4, got: " + item);
+ return Tuple.createTuple(item.get(1), item.get(2), item.get(3));
+ };
// Convert from Iterator<Quad> to Iterator<Triple>
static class ProjectQuadsToTriples implements Iterator<Triple> {
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/store/QuadTable.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/QuadTable.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/QuadTable.java
index 894b49e..313d8d5 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/QuadTable.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/QuadTable.java
@@ -20,9 +20,7 @@ package org.apache.jena.tdb.store;
import java.util.Iterator ;
-
import org.apache.jena.atlas.iterator.NullIterator ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Tuple ;
import org.apache.jena.graph.Node ;
import org.apache.jena.graph.Triple ;
@@ -89,13 +87,6 @@ public class QuadTable extends TableBase
Iterator<Quad> iter2 = TupleLib.convertToQuads(table.getNodeTable(), iter) ;
return iter2 ;
}
-
- private static Transform<Tuple<Node>, Quad> action = new Transform<Tuple<Node>, Quad>(){
- @Override
- public Quad convert(Tuple<Node> item)
- {
- return new Quad(item.get(0), item.get(1), item.get(2), item.get(3)) ;
- }} ;
/** Clear - does not clear the associated node tuple table */
public void clearQuads()
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/store/TripleTable.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/TripleTable.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/TripleTable.java
index e79f7da..5dfc17e 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/TripleTable.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/TripleTable.java
@@ -20,9 +20,7 @@ package org.apache.jena.tdb.store;
import java.util.Iterator ;
-
import org.apache.jena.atlas.iterator.NullIterator ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Tuple ;
import org.apache.jena.graph.Node ;
import org.apache.jena.graph.Triple ;
@@ -79,13 +77,6 @@ public class TripleTable extends TableBase
return iter2 ;
}
- private static Transform<Tuple<Node>, Triple> action = new Transform<Tuple<Node>, Triple>(){
- @Override
- public Triple convert(Tuple<Node> item)
- {
- return new Triple(item.get(0), item.get(1), item.get(2)) ;
- }} ;
-
/** Clear - does not clear the associated node tuple table */
public void clearTriples()
{ table.clear() ; }
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/store/nodetable/NodeTableNative.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/nodetable/NodeTableNative.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/nodetable/NodeTableNative.java
index e5796ca..51ceee1 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/nodetable/NodeTableNative.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/nodetable/NodeTableNative.java
@@ -22,9 +22,9 @@ import static org.apache.jena.tdb.lib.NodeLib.setHash ;
import java.nio.ByteBuffer ;
import java.util.Iterator ;
+import java.util.function.Function;
import org.apache.jena.atlas.iterator.Iter ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Pair ;
import org.apache.jena.graph.Node ;
import org.apache.jena.tdb.TDBException ;
@@ -214,37 +214,16 @@ public class NodeTableNative implements NodeTable
@Override
public Iterator<Pair<NodeId, Node>> all() { return all2() ; }
- private Iterator<Pair<NodeId, Node>> all1()
-
- {
- // Could be quicker by hoping down the objects files.
- Iterator<Record> iter = nodeHashToId.iterator() ;
-
- Transform<Record, Pair<NodeId, Node>> transform = new Transform<Record, Pair<NodeId, Node>>() {
- @Override
- public Pair<NodeId, Node> convert(Record item)
- {
- NodeId id = NodeId.create(item.getValue(), 0) ;
- Node n = NodeLib.fetchDecode(id.getId(), getObjects()) ;
- return new Pair<>(id, n) ;
- }};
- return Iter.map(iter, transform) ;
- }
-
private Iterator<Pair<NodeId, Node>> all2()
{
Iterator<Pair<Long, ByteBuffer>> objs = objects.all() ;
- Transform<Pair<Long, ByteBuffer>, Pair<NodeId, Node>> transform = new Transform<Pair<Long, ByteBuffer>, Pair<NodeId, Node>>() {
- @Override
- public Pair<NodeId, Node> convert(Pair<Long, ByteBuffer> item)
- {
- NodeId id = NodeId.create(item.car().longValue()) ;
- ByteBuffer bb = item.cdr();
- Node n = NodeLib.decode(bb) ;
- return new Pair<>(id, n) ;
- }
- };
+ Function<Pair<Long, ByteBuffer>, Pair<NodeId, Node>> transform = item -> {
+ NodeId id = NodeId.create(item.car().longValue());
+ ByteBuffer bb = item.cdr();
+ Node n = NodeLib.decode(bb);
+ return new Pair<>(id, n);
+ };
return Iter.map(objs, transform) ;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/main/java/org/apache/jena/tdb/store/tupletable/TupleIndexRecord.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/tupletable/TupleIndexRecord.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/tupletable/TupleIndexRecord.java
index d4079b0..ead540e 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/tupletable/TupleIndexRecord.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/tupletable/TupleIndexRecord.java
@@ -22,6 +22,7 @@ import static java.lang.String.format;
import static org.apache.jena.tdb.sys.SystemTDB.SizeOfNodeId ;
import java.util.Iterator;
+import java.util.function.Predicate;
import org.apache.jena.atlas.iterator.* ;
import org.apache.jena.atlas.lib.Bytes ;
@@ -166,7 +167,7 @@ public class TupleIndexRecord extends TupleIndexBase
iter = index.iterator(minRec, maxRec) ;
}
- Iterator<Tuple<NodeId>> tuples = Iter.map(iter, transformToTuple) ;
+ Iterator<Tuple<NodeId>> tuples = Iter.map(iter, item -> TupleLib.tuple(item, colMap)) ;
if ( leadingIdx < numSlots-1 )
{
@@ -185,25 +186,16 @@ public class TupleIndexRecord extends TupleIndexBase
public Iterator<Tuple<NodeId>> all()
{
Iterator<Record> iter = index.iterator() ;
- return Iter.map(iter, transformToTuple) ;
+ return Iter.map(iter, item -> TupleLib.tuple(item, colMap)) ;
}
- private final Transform<Record, Tuple<NodeId>> transformToTuple = new Transform<Record, Tuple<NodeId>>()
- {
- @Override
- public final Tuple<NodeId> convert(Record item)
- {
- return TupleLib.tuple(item, colMap) ;
- }
- } ;
-
private Iterator<Tuple<NodeId>> scan(Iterator<Tuple<NodeId>> iter,
final Tuple<NodeId> pattern)
{
- Filter<Tuple<NodeId>> filter = new Filter<Tuple<NodeId>>()
+ Predicate<Tuple<NodeId>> filter = new Predicate<Tuple<NodeId>>()
{
@Override
- public boolean accept(Tuple<NodeId> item)
+ public boolean test(Tuple<NodeId> item)
{
// Check on pattern and item (both in natural order)
for ( int i = 0 ; i < tupleLength ; i++ )
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/test/java/org/apache/jena/tdb/base/record/RecordLib.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/test/java/org/apache/jena/tdb/base/record/RecordLib.java b/jena-tdb/src/test/java/org/apache/jena/tdb/base/record/RecordLib.java
index 79053ad..9d72156 100644
--- a/jena-tdb/src/test/java/org/apache/jena/tdb/base/record/RecordLib.java
+++ b/jena-tdb/src/test/java/org/apache/jena/tdb/base/record/RecordLib.java
@@ -24,7 +24,6 @@ import java.util.Iterator;
import java.util.List;
import org.apache.jena.atlas.iterator.Iter ;
-import org.apache.jena.atlas.iterator.Transform ;
import org.apache.jena.atlas.lib.Bytes ;
import org.apache.jena.tdb.base.record.Record ;
import org.apache.jena.tdb.base.record.RecordFactory ;
@@ -83,13 +82,7 @@ public class RecordLib
public static List<Integer> toIntList(Iterator<Record> iter)
{
- return Iter.toList(Iter.map(iter, new Transform<Record, Integer>(){
- @Override
- public Integer convert(Record item)
- {
- return recordToInt(item) ;
- }}
- )) ;
+ return Iter.toList(Iter.map(iter, item -> recordToInt(item))) ;
}
public static Record r(int v)
http://git-wip-us.apache.org/repos/asf/jena/blob/6b475345/jena-tdb/src/test/java/org/apache/jena/tdb/store/TestQuadFilter.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/test/java/org/apache/jena/tdb/store/TestQuadFilter.java b/jena-tdb/src/test/java/org/apache/jena/tdb/store/TestQuadFilter.java
index ee2ff43..9752dac 100644
--- a/jena-tdb/src/test/java/org/apache/jena/tdb/store/TestQuadFilter.java
+++ b/jena-tdb/src/test/java/org/apache/jena/tdb/store/TestQuadFilter.java
@@ -18,7 +18,8 @@
package org.apache.jena.tdb.store;
-import org.apache.jena.atlas.iterator.Filter ;
+import java.util.function.Predicate;
+
import org.apache.jena.atlas.junit.BaseTest ;
import org.apache.jena.atlas.lib.Tuple ;
import org.apache.jena.graph.NodeFactory ;
@@ -61,23 +62,12 @@ public class TestQuadFilter extends BaseTest
}
/** Create a filter to exclude the graph http://example/g2 */
- private static Filter<Tuple<NodeId>> createFilter(Dataset ds)
+ private static Predicate<Tuple<NodeId>> createFilter(Dataset ds)
{
DatasetGraphTDB dsg = (DatasetGraphTDB)(ds.asDatasetGraph()) ;
final NodeTable nodeTable = dsg.getQuadTable().getNodeTupleTable().getNodeTable() ;
final NodeId target = nodeTable.getNodeIdForNode(NodeFactory.createURI(graphToHide)) ;
- Filter<Tuple<NodeId>> filter = new Filter<Tuple<NodeId>>() {
- @Override
- public boolean accept(Tuple<NodeId> item)
- {
- // Reverse the lookup as a demo
- //Node n = nodeTable.getNodeForNodeId(target) ;
- //System.err.println(item) ;
- if ( item.size() == 4 && item.get(0).equals(target) )
- return false ;
- return true ;
- } } ;
- return filter ;
+ return item -> !( item.size() == 4 && item.get(0).equals(target) );
}
@Test public void quad_filter_1() { test("SELECT * { GRAPH ?g { ?s ?p ?o } }", 1, 2) ; }
@@ -86,7 +76,7 @@ public class TestQuadFilter extends BaseTest
private void test(String qs, int withFilter, int withoutFilter)
{
- Filter<Tuple<NodeId>> filter = createFilter(ds) ;
+ Predicate<Tuple<NodeId>> filter = createFilter(ds) ;
// private static void example(Dataset ds, Filter<Tuple<NodeId>> filter)
// {