Class FedXPathIteration.ValuePair
- java.lang.Object
-
- org.eclipse.rdf4j.federated.evaluation.iterator.FedXPathIteration.ValuePair
-
- All Implemented Interfaces:
Serializable
,Iterable<Binding>
,BindingSet
,MutableBindingSet
- Enclosing class:
- FedXPathIteration
public static class FedXPathIteration.ValuePair extends Object implements MutableBindingSet
A specialized BingingSet that can only hold the start and end values of a Path. Minimizing unneeded memory use, and allows specialization in the sets required to answer this part of a query.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addBinding(Binding binding)
Adds a binding to the binding set.boolean
equals(Object obj)
Compares a BindingSet object to another object.Binding
getBinding(String bindingName)
Gets the binding with the specified name from this BindingSet.Set<String>
getBindingNames()
Gets the names of the bindings in this BindingSet.Value
getEndValue()
Value
getStartValue()
Value
getValue(String bindingName)
Gets the value of the binding with the specified name from this BindingSet.boolean
hasBinding(String bindingName)
Checks whether this BindingSet has a binding with the specified name.int
hashCode()
The hash code of a binding is defined as the bit-wise XOR of the hash codes of its bindings:Iterator<Binding>
iterator()
Creates an iterator over the bindings in this BindingSet.void
setBinding(String name, Value value)
void
setBinding(Binding binding)
int
size()
Returns the number of bindings in this BindingSet.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.query.BindingSet
isEmpty
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface org.eclipse.rdf4j.query.MutableBindingSet
addBinding
-
-
-
-
Method Detail
-
getStartValue
public Value getStartValue()
- Returns:
- Returns the startValue.
-
getEndValue
public Value getEndValue()
- Returns:
- Returns the endValue.
-
hashCode
public int hashCode()
Description copied from interface:BindingSet
The hash code of a binding is defined as the bit-wise XOR of the hash codes of its bindings:int hashCode = 0; for (Binding binding : this) { hashCode ˆ= binding.getName().hashCode() ˆ binding.getValue().hashCode(); }
Note: the calculated hash code intentionally does not depend on the order in which the bindings are iterated over.
- Specified by:
hashCode
in interfaceBindingSet
- Overrides:
hashCode
in classObject
- Returns:
- A hash code for the BindingSet.
-
equals
public boolean equals(Object obj)
Description copied from interface:BindingSet
Compares a BindingSet object to another object.- Specified by:
equals
in interfaceBindingSet
- Overrides:
equals
in classObject
- Parameters:
obj
- The object to compare this binding to.- Returns:
- true if the other object is an instance of
BindingSet
and it contains the same set of bindings (disregarding order), false otherwise.
-
iterator
public Iterator<Binding> iterator()
Description copied from interface:BindingSet
Creates an iterator over the bindings in this BindingSet. This only returns bindings with non-null values. An implementation is free to return the bindings in arbitrary order.- Specified by:
iterator
in interfaceBindingSet
- Specified by:
iterator
in interfaceIterable<Binding>
-
getBindingNames
public Set<String> getBindingNames()
Description copied from interface:BindingSet
Gets the names of the bindings in this BindingSet.- Specified by:
getBindingNames
in interfaceBindingSet
- Returns:
- A set of binding names.
-
getBinding
public Binding getBinding(String bindingName)
Description copied from interface:BindingSet
Gets the binding with the specified name from this BindingSet.- Specified by:
getBinding
in interfaceBindingSet
- Parameters:
bindingName
- The name of the binding.- Returns:
- The binding with the specified name, or null if there is no such binding in this BindingSet.
-
hasBinding
public boolean hasBinding(String bindingName)
Description copied from interface:BindingSet
Checks whether this BindingSet has a binding with the specified name.- Specified by:
hasBinding
in interfaceBindingSet
- Parameters:
bindingName
- The name of the binding.- Returns:
- true if this BindingSet has a binding with the specified name, false otherwise.
-
getValue
public Value getValue(String bindingName)
Description copied from interface:BindingSet
Gets the value of the binding with the specified name from this BindingSet.- Specified by:
getValue
in interfaceBindingSet
- Parameters:
bindingName
- The name of the binding.- Returns:
- The value of the binding with the specified name, or null if there is no such binding in this BindingSet.
-
size
public int size()
Description copied from interface:BindingSet
Returns the number of bindings in this BindingSet.- Specified by:
size
in interfaceBindingSet
- Returns:
- The number of bindings in this BindingSet.
-
addBinding
public void addBinding(Binding binding)
Description copied from interface:MutableBindingSet
Adds a binding to the binding set.- Specified by:
addBinding
in interfaceMutableBindingSet
- Parameters:
binding
- The binding to add to the binding set.
-
setBinding
public void setBinding(String name, Value value)
- Specified by:
setBinding
in interfaceMutableBindingSet
-
setBinding
public void setBinding(Binding binding)
- Specified by:
setBinding
in interfaceMutableBindingSet
-
-