Class TLcdDataObjectShapeList
- All Implemented Interfaces:
ILcdDataObject
,ILcdBounded
,ILcdEditableShapeList
,ILcdShape
,ILcdShapeList
,ILcdCache
,ILcdCloneable
,ILcdInvalidateable
,Serializable
,Cloneable
ILcdShapeList
that is
also ILcdDataObject
. This class is typically used as implementation
class for data objects that have geometry (represented by appropriate
ILcdShape
objects) and that geometry is not exposed in data properties.
This class is thread-safe for concurrent read-only access of its contents. For read-write access, external locking must be used. Such locking is typically done at the model level.
- Since:
- 10.1
- See Also:
-
Constructor Summary
ConstructorDescriptionTLcdDataObjectShapeList
(ILcdDataObject aDelegate) Creates a new instance with the object as delegate data object.TLcdDataObjectShapeList
(TLcdDataType aDataType) Creates a new instance with the given type.TLcdDataObjectShapeList
(TLcdDataType aDataType, ILcdShape... aShapes) Creates a new instance with the given type and containing the given shape objects. -
Method Summary
Modifier and TypeMethodDescriptionReturns the delegate data objectReturns the type of this data object.getValue
(TLcdDataProperty aProperty) Returns the value of the given property.Convenience method that returns the value of the property with the given name.boolean
hasValue
(TLcdDataProperty aProperty) Indicates whether this data object has a value for the given property.boolean
Indicates whether this data object has a value for the given property.void
setDataObject
(ILcdDataObject aDataObject) Sets the delegate data object.void
setValue
(TLcdDataProperty aProperty, Object aValue) Sets the value of the given property for this data object.void
Convenience method that sets the value of the property with the given name.Methods inherited from class com.luciad.shape.TLcdShapeList
addShape, addShape, addShapes, clearShapes, clone, getShape, getShapeCount, removeShape, removeShape, removeShapes, setShape, setShape, setShapes, shapeChanged, shapeChanged, shapesChanged
Methods inherited from class com.luciad.shape.ALcdShapeList
calculateFocusPoint, clearCache, contains2D, contains3D, equals, getBounds, getCachedObject, getFocusPoint, hashCode, insertIntoCache, invalidateBounds, invalidateObject, removeCachedObject, setFocusPoint, toString
Methods inherited from class com.luciad.shape.ALcdShape
contains2D, contains3D, fromDomainObject
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.luciad.shape.ILcdBounded
getBounds
Methods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3D, getFocusPoint
-
Constructor Details
-
TLcdDataObjectShapeList
Creates a new instance with the object as delegate data object.- Parameters:
aDelegate
- the data object delegate
-
TLcdDataObjectShapeList
Creates a new instance with the given type.- Parameters:
aDataType
- the type of the instance that is to be created
-
TLcdDataObjectShapeList
Creates a new instance with the given type and containing the given shape objects.- Parameters:
aDataType
- the type of the instance that is to be createdaShapes
- an array of shape objects to put in this shape list.
-
-
Method Details
-
getDataType
Description copied from interface:ILcdDataObject
Returns the type of this data object. This can never benull
.- Specified by:
getDataType
in interfaceILcdDataObject
- Returns:
- the type of this data object
-
getValue
Description copied from interface:ILcdDataObject
Returns the value of the given property.
If the property is a collection, the returned value will never be null. If the property has not been set, an empty collection of the appropriate type will be returned (Set, List or Map).
The property must not be null, and must be declared in the
data object's type
or in one of its super types. Otherwise anIllegalArgumentException
is thrown.- Specified by:
getValue
in interfaceILcdDataObject
- Parameters:
aProperty
- the property for which the value is to be returned- Returns:
- the value of the given property for this data object
-
getValue
Description copied from interface:ILcdDataObject
Convenience method that returns the value of the property with the given name.
If more than one property exists with the given name, the most specific property should be used (this is the property defined by the most specialized type in this object's data type hierarchy). SeeILcdDataObject.getValue(TLcdDataProperty)
for more information.- Specified by:
getValue
in interfaceILcdDataObject
- Parameters:
aPropertyName
- the name of the property of which the value is to be returned- Returns:
- the value of the property with the given name
- See Also:
-
setValue
Description copied from interface:ILcdDataObject
Sets the value of the given property for this data object. The implementation is allowed to throw an exception if the given value can't be set.
The given property must be declared in thedata object's type
or in one of its super types. In other words, getDataType().getProperties().contains( aProperty ) should always be true. Otherwise, the implementation should throw anIllegalArgumentException
.- Specified by:
setValue
in interfaceILcdDataObject
- Parameters:
aProperty
- the property for which the value is to be setaValue
- the value to set- See Also:
-
setValue
Description copied from interface:ILcdDataObject
Convenience method that sets the value of the property with the given name.
If more than one property exists with the given name, the most specific property should be used (this is the property defined by the most specialized type in this object's data type hierarchy). SeeILcdDataObject.setValue(TLcdDataProperty, Object)
for more information.- Specified by:
setValue
in interfaceILcdDataObject
- Parameters:
aPropertyName
- the name of the property of which the value is to be setaValue
- the value to set
-
hasValue
Description copied from interface:ILcdDataObject
Indicates whether this data object has a value for the given property.aProperty
is from theright data type
, and this instance has a value for it: returnstrue
aProperty
is from theright data type
, and this instance has no value for it: returnsfalse
aProperty
is not from theright data type
: not allowed, you will get IllegalArgumentExceptionaProperty
isnull
: not allowed, you will get NullPointerException
- Specified by:
hasValue
in interfaceILcdDataObject
- Parameters:
aProperty
- the property for which to return whether a value is present or not.- Returns:
true
if this data object has a value for the given property,false
otherwise.
-
hasValue
Description copied from interface:ILcdDataObject
Indicates whether this data object has a value for the given property.
SeeILcdDataObject.hasValue(TLcdDataProperty)
for more information.- Specified by:
hasValue
in interfaceILcdDataObject
- Parameters:
aPropertyName
- the name of the property for which to return whether a value is present or not.- Returns:
true
if this data object has a value for the property with the given name,false
otherwise.
-
getDataObject
Returns the delegate data object- Returns:
- the delegate data object
-
setDataObject
Sets the delegate data object.- Parameters:
aDataObject
- the delegate data object to set
-