Tests whether
obj is a value which could be described by this
CompositeType instance.
If obj is null or is not an instance of javax.management.openmbean.CompositeData, isValue returns false.
If obj is an instance of javax.management.openmbean.CompositeData, then let ct be its CompositeType as returned by CompositeData.getCompositeType(). The result is true if this is assignable from ct. This means that:
-
this.getTypeName() equals ct.getTypeName(), and
- there are no item names present in
this that are not also present in ct, and
- for every item in
this, its type is assignable from the type of the corresponding item in ct.
A TabularType is assignable from another TabularType if they have the same typeName and index name list , and the row type of the first is assignable from the row type of the second.
An ArrayType is assignable from another ArrayType if they have the same dimension; and both are primitive arrays or neither is; and the element type of the first is assignable from the element type of the second.
In every other case, an OpenType is assignable from another OpenType only if they are equal.
These rules mean that extra items can be added to a CompositeData without making it invalid for a CompositeType that does not have those items.