Package org.opendaylight.yangtools.util
Class HashCodeBuilder<T>
java.lang.Object
org.opendaylight.yangtools.util.HashCodeBuilder<T>
- Type Parameters:
T- Component object type
Utility class for incrementally building object hashCode by hashing together component objects, one by one.
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a new instance, with internal hash initialized to 1, equivalent ofHashCodeBuilder(1).HashCodeBuilder(int seedHash) Create a new instance, with internal hash set to specified seed. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddArgument(T obj) Update the internal hash code with the hash code of a component object.intbuild()Return the currently-accumulated hash code.static intnextHashCode(int hashCode, Object obj) Determine the next hash code combining a base hash code and the hash code of an object.
-
Constructor Details
-
HashCodeBuilder
public HashCodeBuilder()Create a new instance, with internal hash initialized to 1, equivalent ofHashCodeBuilder(1). -
HashCodeBuilder
public HashCodeBuilder(int seedHash) Create a new instance, with internal hash set to specified seed.- Parameters:
seedHash- Seed hash value
-
-
Method Details
-
nextHashCode
Determine the next hash code combining a base hash code and the hash code of an object.- Parameters:
hashCode- base hash codeobj- Object to be added- Returns:
- Combined hash code
-
addArgument
Update the internal hash code with the hash code of a component object.- Parameters:
obj- Component object
-
build
public int build()Return the currently-accumulated hash code.- Returns:
- Current hash code
-