Package com.sun.tools.corba.ee.idl
Class ValueRepositoryId
java.lang.Object
com.sun.tools.corba.ee.idl.ValueRepositoryId
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate String
private int
private MessageDigest
private Hashtable
<SymtabEntry, Integer> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addType
(SymtabEntry entry) Add a type to the list of types which have already been included.void
addValue
(int value) Add a value to the hashcode being computed.Get the hashcode computed for the value type.private static String
hexOf
(byte value) boolean
isNewType
(SymtabEntry entry) Check to see if a specified type has already been processed.
-
Field Details
-
sha
-
index
private int index -
types
-
hashcode
-
-
Constructor Details
-
ValueRepositoryId
public ValueRepositoryId()
-
-
Method Details
-
addValue
public void addValue(int value) Add a value to the hashcode being computed.- Parameters:
value
- the value to be added to the value RepositoryID.
-
addType
Add a type to the list of types which have already been included. Note that the type should be added prior to its value.- Parameters:
entry
- the type to be added to the value RepositoryID.
-
isNewType
Check to see if a specified type has already been processed. If so, add the appropriate 'previously processed' code (0xFFFFFFFF) and sequence offset, and return false; otherwise add the symbol table entry and current offset to the hashtable and return false.- Parameters:
entry
- the type to be checked- Returns:
- true if the symbol table entry has not been previously added; and false otherwise.
-
getHashcode
Get the hashcode computed for the value type. This method MUST not be called until all fields have been added, since it computes the hash code from the values entered for each field.- Returns:
- the 64 bit hashcode for the value type represented as a 16 character hexadecimal string.
-
hexOf
-