Class BindingBuilder
- java.lang.Object
-
- org.apache.jena.sparql.engine.binding.BindingBuilder
-
public class BindingBuilder extends java.lang.ObjectBuild Bindings.Binding are immutable and can not be changed once constructed. A
BindingBuilderaccumulates some var/node pairs and, at the build step, chooses the most efficient Binding implementation.Binding binding = Binding.builder() .add(var, value) ... .build();Thebuild()method can only be called once per binding constructed. ABindingBuildercan be reused but is not thread safe.Example:
BindingBuilder builder = Binding.builder(parent); for .... { builder.reset() for ( ... each variable ... ) { builder.add(var, node) } Binding binding = builder.build(); ... accumulate binding ... }Example:
BindingBuilder builder = Binding.builder(parent); for .... { Binding binding = builder.reset() .add(var1, node1) .add(var2, node2) .add(var3, node3) .build(); } ... accumulate binding ... }See alsoBindingFactory. When the number of var/node pairs is fixed and known, operations inBindingFactorydirectly create a binding without needing a builder.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description BindingBuilderadd(Var var, Node node)BindingBuilderaddAll(Binding other)Add all the (var, value) pairs from another bindingBindingbuild()Construct the binding.booleancontains(Var var)static BindingBuildercreate()static BindingBuildercreate(Binding parent)Nodeget(Var var)NodegetOrSame(Var var)Get or return the variable.booleanisEmpty()BindingBuilderreset()Reset the builder state, while keeping the parentBindingBuilderset(Var var, Node node)Accumulate (var,value) pairs.Bindingsnapshot()Build a view of the current state.java.lang.StringtoString()java.util.Iterator<Var>vars1()Variables in the builder - does not include the parent.
-
-
-
Field Detail
-
noParent
public static final Binding noParent
-
-
Method Detail
-
create
public static BindingBuilder create()
-
create
public static BindingBuilder create(Binding parent)
-
set
public BindingBuilder set(Var var, Node node)
Accumulate (var,value) pairs. Allow binding in this level to be replaced (i.e. not in parent)
-
add
public BindingBuilder add(Var var, Node node)
-
addAll
public BindingBuilder addAll(Binding other)
Add all the (var, value) pairs from another binding
-
contains
public boolean contains(Var var)
-
isEmpty
public boolean isEmpty()
-
vars1
public java.util.Iterator<Var> vars1()
Variables in the builder - does not include the parent.
-
reset
public BindingBuilder reset()
Reset the builder state, while keeping the parent
-
build
public Binding build()
Construct the binding. This can be called only once for a binding but the builder can be reused after a call toreset().
-
snapshot
public Binding snapshot()
Build a view of the current state.Do not modify the builder while this binding is in use. Changes to the builder make this view unstable. To create a finished binding, call
build().
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-