public class HashableObject extends java.lang.Object implements ObjectInstance
| Modifier and Type | Class and Description |
|---|---|
static class |
HashableObject.CachedHashableObject |
| Modifier and Type | Field and Description |
|---|---|
ObjectInstance |
source |
| Constructor and Description |
|---|
HashableObject(ObjectInstance source) |
| Modifier and Type | Method and Description |
|---|---|
ObjectInstance |
addAllRelationalTargets(java.lang.String attName,
java.util.Collection<java.lang.String> targets)
Adds all relational targets to the attribute attName for this object instance.
|
ObjectInstance |
addRelationalTarget(java.lang.String attName,
java.lang.String target)
Sets/adds the relational value of the attribute named attName for this object instance.
|
java.lang.StringBuilder |
buildObjectDescription(java.lang.StringBuilder builder) |
ObjectInstance |
clearRelationalTargets(java.lang.String attName)
Clears all the relational value targets of the attribute named attName for this object instance.
|
ObjectInstance |
copy()
Creates and returns a new object instance that is a copy of this object instance's values, if mutable the copy should be deep
|
java.util.Set<java.lang.String> |
getAllRelationalTargets(java.lang.String attName)
Returns the set of all relational targets to which the relational attribute named attName is set.
|
boolean |
getBooleanValForAttribute(java.lang.String attName)
Returns the boolean value of the attribute (only defined for boolean attributes, int, and disc values).
|
java.lang.String |
getClassName()
Returns the name of this object instance's object class
|
double[] |
getDoubleArrayValForAttribute(java.lang.String attName)
Returns the int array value of the attribute (only defined for int array attributes).
|
double[] |
getFeatureVec()
Returns a double vector of all the observable values in this object instance.
|
int[] |
getIntArrayValForAttribute(java.lang.String attName)
Returns the int array value of the attribute (only defined for int array attributes).
|
int |
getIntValForAttribute(java.lang.String attName)
Returns the int value assignment for the discrete-valued attribute named attName.
|
java.lang.String |
getName()
Returns the name identifier of this object instance
|
double[] |
getNormalizedFeatureVec()
Returns a normalized double vector of all the observable values in this object instance.
|
double |
getNumericValForAttribute(java.lang.String attName)
Returns the double value for the attribute named attType.
|
ObjectClass |
getObjectClass()
Returns this object instance's object class
|
java.lang.String |
getObjectDescription()
Returns a string representation of this object including its name and value attribute value assignment.
|
java.lang.String |
getObjectDescriptionWithNullForUnsetAttributes()
Returns a string description of the object with the unset attribute values listed as null.
|
double |
getRealValForAttribute(java.lang.String attName)
Returns the double value assignment for the real-valued attribute named attName.
|
java.lang.String |
getStringValForAttribute(java.lang.String attName)
Returns the string value representation for the attribute named attName.
|
Value |
getValueForAttribute(java.lang.String attName)
Returns the Value object assignment for the attribute named attName
|
java.util.List<Value> |
getValues()
Returns the list of value object assignments to all of this object instance's attributes.
|
ObjectInstance |
removeRelationalTarget(java.lang.String attName,
java.lang.String target)
Removes an object target from the specified relational attribute.
|
ObjectInstance |
setName(java.lang.String name)
Sets the name of this object instance.
|
ObjectInstance |
setValue(java.lang.String attName,
boolean v)
Sets the value of the attribute named attName for this object instance.
|
ObjectInstance |
setValue(java.lang.String attName,
double v)
Sets the value of the attribute named attName for this object instance.
|
ObjectInstance |
setValue(java.lang.String attName,
double[] v)
Sets the value of the attribute named attName for this object instance.
|
ObjectInstance |
setValue(java.lang.String attName,
int v)
Sets the value of the attribute named attName for this object instance.
|
ObjectInstance |
setValue(java.lang.String attName,
int[] v)
Sets the value of the attribute named attName for this object instance.
|
ObjectInstance |
setValue(java.lang.String attName,
java.lang.String v)
Sets the value of the attribute named attName for this object instance.
|
<T> ObjectInstance |
setValue(java.lang.String attName,
T v) |
java.util.List<java.lang.String> |
unsetAttributes()
Returns a list of the names of
Attributes that have unset values |
boolean |
valueEquals(ObjectInstance obj)
Returns true if the value assignments in this object instance are the same as they are in the target object instance.
|
public ObjectInstance source
public HashableObject(ObjectInstance source)
public ObjectInstance copy()
ObjectInstancecopy in interface ObjectInstancepublic ObjectInstance setName(java.lang.String name)
ObjectInstancesetName in interface ObjectInstancename - the name for this object instance.public <T> ObjectInstance setValue(java.lang.String attName, T v)
setValue in interface ObjectInstancepublic ObjectInstance setValue(java.lang.String attName, java.lang.String v)
ObjectInstancesetValue in interface ObjectInstanceattName - the name of the attribute whose value is to be set.v - the string rep value to which the attribute of this object instance should be set.public ObjectInstance setValue(java.lang.String attName, double v)
ObjectInstancesetValue in interface ObjectInstanceattName - the name of the attribute whose value is to be set.v - the double rep value to which the attribute of this object instance should be set.public ObjectInstance setValue(java.lang.String attName, int v)
ObjectInstancesetValue in interface ObjectInstanceattName - the name of the attribute whose value is to be set.v - the int rep value to which the attribute of this object instance should be set.public ObjectInstance setValue(java.lang.String attName, boolean v)
ObjectInstancesetValue in interface ObjectInstanceattName - the name of the attribute whose value is to be set.v - the int rep value to which the attribute of this object instance should be set.public ObjectInstance setValue(java.lang.String attName, int[] v)
ObjectInstancesetValue in interface ObjectInstanceattName - the name of the attribute whose value is to be set.v - the int array rep value to which the attribute of this object instance should be set.public ObjectInstance setValue(java.lang.String attName, double[] v)
ObjectInstancesetValue in interface ObjectInstanceattName - the name of the attribute whose value is to be set.v - the double array rep value to which the attribute of this object instance should be set.public ObjectInstance addRelationalTarget(java.lang.String attName, java.lang.String target)
ObjectInstanceaddRelationalTarget in interface ObjectInstanceattName - the name of the relational attribute that will have a relational target added/settarget - the name of the object reference that is to be added as a target.public ObjectInstance addAllRelationalTargets(java.lang.String attName, java.util.Collection<java.lang.String> targets)
ObjectInstanceaddAllRelationalTargets in interface ObjectInstanceattName - the name of the relational attribute that will have a relational target added/settargets - the names of the object references that are to be added as a targets.public ObjectInstance clearRelationalTargets(java.lang.String attName)
ObjectInstanceclearRelationalTargets in interface ObjectInstancepublic ObjectInstance removeRelationalTarget(java.lang.String attName, java.lang.String target)
ObjectInstanceremoveRelationalTarget in interface ObjectInstanceattName - the name of the relational attribute from which the target should be removed.target - the target to remove from the relational attribute value.public java.lang.String getName()
ObjectInstancegetName in interface ObjectInstancepublic ObjectClass getObjectClass()
ObjectInstancegetObjectClass in interface ObjectInstancepublic java.lang.String getClassName()
ObjectInstancegetClassName in interface ObjectInstancepublic Value getValueForAttribute(java.lang.String attName)
ObjectInstancegetValueForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returnedpublic double getRealValForAttribute(java.lang.String attName)
ObjectInstancegetRealValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returnedpublic double getNumericValForAttribute(java.lang.String attName)
ObjectInstanceObjectInstance.getRealValForAttribute(String) method because it will cast the int
values for non real attributes to double values and will not throw an exception.
Note that if this method is called on relational attributes, it will return 0.,
where as attributes like Attribute.AttributeType.INT and Attribute.AttributeType.DISC
will cast their int values to doubles.getNumericValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returnedpublic java.lang.String getStringValForAttribute(java.lang.String attName)
ObjectInstancegetStringValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returnedpublic int getIntValForAttribute(java.lang.String attName)
ObjectInstancegetIntValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returnedpublic java.util.Set<java.lang.String> getAllRelationalTargets(java.lang.String attName)
ObjectInstancegetAllRelationalTargets in interface ObjectInstanceattName - attName the name of the attribute whose value should be returnedpublic boolean getBooleanValForAttribute(java.lang.String attName)
ObjectInstancegetBooleanValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returnedpublic int[] getIntArrayValForAttribute(java.lang.String attName)
ObjectInstancegetIntArrayValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returned.public double[] getDoubleArrayValForAttribute(java.lang.String attName)
ObjectInstancegetDoubleArrayValForAttribute in interface ObjectInstanceattName - the name of the attribute whose value should be returned.public java.util.List<Value> getValues()
ObjectInstancegetValues in interface ObjectInstancepublic java.util.List<java.lang.String> unsetAttributes()
ObjectInstanceAttributes that have unset valuesunsetAttributes in interface ObjectInstancepublic java.lang.String getObjectDescription()
ObjectInstancegetObjectDescription in interface ObjectInstancepublic java.lang.StringBuilder buildObjectDescription(java.lang.StringBuilder builder)
buildObjectDescription in interface ObjectInstancepublic java.lang.String getObjectDescriptionWithNullForUnsetAttributes()
ObjectInstancegetObjectDescriptionWithNullForUnsetAttributes in interface ObjectInstancepublic double[] getFeatureVec()
ObjectInstancegetFeatureVec in interface ObjectInstancepublic double[] getNormalizedFeatureVec()
ObjectInstancegetNormalizedFeatureVec in interface ObjectInstancepublic boolean valueEquals(ObjectInstance obj)
ObjectInstancevalueEquals in interface ObjectInstanceobj - the object instance against which this object instance should be compared.