Package com.luciad.datamodel
Class TLcdDataObject
java.lang.Object
com.luciad.datamodel.TLcdDataObject
- All Implemented Interfaces:
ILcdDataObject
,ILcdCloneable
,ILcdDeepCloneable
,Cloneable
- Direct Known Subclasses:
ALcdSLDLayer
,ALcdSLDLayerStyle
,ALcdSLDSymbolizer
,TLcdAIXM51AbstractAIXMProperty
,TLcdAIXM51Association
,TLcdAIXM51Link
,TLcdAIXM51Optional
,TLcdAIXM51TextNote
,TLcdAIXM51ValDepth
,TLcdAIXM51ValDistance
,TLcdAIXM51ValDistanceSigned
,TLcdAIXM51ValDistanceVertical
,TLcdAIXM51ValDuration
,TLcdAIXM51ValFL
,TLcdAIXM51ValFrequency
,TLcdAIXM51ValLightIntensity
,TLcdAIXM51ValPressure
,TLcdAIXM51ValSpeed
,TLcdAIXM51ValTemperature
,TLcdAIXM51ValWeight
,TLcdAIXM51XHTML
,TLcdAtomCategory
,TLcdAtomContent
,TLcdAtomDateTime
,TLcdAtomEntry
,TLcdAtomFeed
,TLcdAtomGenerator
,TLcdAtomIcon
,TLcdAtomId
,TLcdAtomLink
,TLcdAtomLogo
,TLcdAtomPerson
,TLcdAtomSource
,TLcdAtomText
,TLcdAtomUri
,TLcdCSWAbstractQuery
,TLcdCSWAbstractRecord
,TLcdCSWAcknowledgement
,TLcdCSWDistributedSearch
,TLcdCSWEchoedRequest
,TLcdCSWElementSetName
,TLcdCSWGetRecordsResponse
,TLcdCSWQueryConstraint
,TLcdCSWRequestBase
,TLcdCSWRequestStatus
,TLcdCSWSearchResults
,TLcdCSWTemporalExtent
,TLcdDCElemSimpleLiteral
,TLcdFeaturedDataObject
,TLcdGML32AbstractCurveSegment
,TLcdGML32AbstractFeatureMember
,TLcdGML32AbstractGML
,TLcdGML32AbstractMember
,TLcdGML32AbstractMetaData
,TLcdGML32AbstractMetadataProperty
,TLcdGML32AbstractRing
,TLcdGML32AbstractRingProperty
,TLcdGML32AbstractSurfacePatch
,TLcdGML32AffinePlacement
,TLcdGML32AssociationRole
,TLcdGML32Boolean
,TLcdGML32BooleanProperty
,TLcdGML32BoundingShape
,TLcdGML32CategoryProperty
,TLcdGML32Clothoid.RefLocation
,TLcdGML32Code
,TLcdGML32CodeList
,TLcdGML32CodeOrNilReasonList
,TLcdGML32Coordinates
,TLcdGML32Count
,TLcdGML32CountProperty
,TLcdGML32CoverageFunction
,TLcdGML32CurveArrayProperty
,TLcdGML32CurveProperty
,TLcdGML32CurveSegmentArrayProperty
,TLcdGML32DataBlock
,TLcdGML32DirectionDescription
,TLcdGML32DirectionProperty
,TLcdGML32DirectionVector
,TLcdGML32DirectPosition
,TLcdGML32DirectPositionList
,TLcdGML32DomainSet
,TLcdGML32Envelope
,TLcdGML32FeatureArrayProperty
,TLcdGML32FeatureProperty
,TLcdGML32File
,TLcdGML32Formula
,TLcdGML32GeometricComplexProperty
,TLcdGML32GeometricPrimitiveProperty
,TLcdGML32GeometryArrayProperty
,TLcdGML32GeometryProperty
,TLcdGML32GridEnvelope
,TLcdGML32GridFunction
,TLcdGML32GridLimits
,TLcdGML32HistoryProperty
,TLcdGML32InlineProperty
,TLcdGML32Knot
,TLcdGML32KnotProperty
,TLcdGML32LinearRingProperty
,TLcdGML32LineStringSegmentArrayProperty
,TLcdGML32LocationProperty
,TLcdGML32MappingRule
,TLcdGML32Measure
,TLcdGML32MeasureList
,TLcdGML32MeasureOrNilReasonList
,TLcdGML32MetaDataProperty
,TLcdGML32MultiCurveProperty
,TLcdGML32MultiGeometryProperty
,TLcdGML32MultiPointProperty
,TLcdGML32MultiSolidProperty
,TLcdGML32MultiSurfaceProperty
,TLcdGML32PointArrayProperty
,TLcdGML32PointProperty
,TLcdGML32ProcedureProperty
,TLcdGML32QuantityProperty
,TLcdGML32RangeSet
,TLcdGML32Reference
,TLcdGML32Result
,TLcdGML32RingProperty
,TLcdGML32Rows
,TLcdGML32Rows.Row
,TLcdGML32SequenceRule
,TLcdGML32Shell
,TLcdGML32ShellProperty
,TLcdGML32SolidArrayProperty
,TLcdGML32SolidProperty
,TLcdGML32StringOrRef
,TLcdGML32SurfaceArrayProperty
,TLcdGML32SurfacePatchArrayProperty
,TLcdGML32SurfaceProperty
,TLcdGML32TargetProperty
,TLcdGML32TimeInstantProperty
,TLcdGML32TimeIntervalLength
,TLcdGML32TimePeriodProperty
,TLcdGML32TimePosition
,TLcdGML32TimePrimitiveProperty
,TLcdGML32Tin.ControlPoint
,TLcdGML32UnitOfMeasure
,TLcdGML32ValueArrayProperty
,TLcdGML32ValueProperty
,TLcdISO19103Binary
,TLcdISO19103RecordType
,TLcdISO19103UnlimitedInteger
,TLcdISO19115Anchor
,TLcdISO19115Code
,TLcdISO19115FileName
,TLcdISO19115LocaleContainer
,TLcdISO19115LocalisedCharacterString
,TLcdISO19115MimeFileType
,TLcdISO19115Optional
,TLcdISO19115Resolution
,TLcdISO19115ScopeDescription
,TLcdISO19118Object
,TLcdISO19118ObjectReference
,TLcdKML22AbstractObject
,TLcdKML22Boundary
,TLcdKML22Change
,TLcdKML22Create
,TLcdKML22Delete
,TLcdKML22ExtendedData
,TLcdKML22Kml
,TLcdKML22Metadata
,TLcdKML22NetworkLinkControl
,TLcdKML22Schema
,TLcdKML22SimpleData
,TLcdKML22SimpleField
,TLcdKML22Snippet
,TLcdKML22Update
,TLcdKML22Vec2
,TLcdNVG15Anchor
,TLcdNVG15Base
,TLcdNVG15ExtendedData
,TLcdNVG15Model
,TLcdNVG15Schema
,TLcdNVG15SimpleData
,TLcdNVG15SimpleField
,TLcdNVG20ArcBandRing
,TLcdNVG20CircularRing
,TLcdNVG20Content
,TLcdNVG20Content.TimeSpan
,TLcdNVG20EllipticRing
,TLcdNVG20Exclusion
,TLcdNVG20ExtendedData
,TLcdNVG20Extension
,TLcdNVG20LinearRing
,TLcdNVG20Model
,TLcdNVG20RectangularRing
,TLcdNVG20Schema
,TLcdNVG20SimpleData
,TLcdNVG20SimpleDataSection
,TLcdNVG20SimpleField
,TLcdOGCBBoxOperator
,TLcdOGCBinaryComparisonOperator
,TLcdOGCBinaryLogicOperator
,TLcdOGCBinaryOperator
,TLcdOGCBinarySpatialOperator
,TLcdOGCBinaryTemporalOperator
,TLcdOGCDistance
,TLcdOGCDistanceBuffer
,TLcdOGCFilter
,TLcdOGCFilterCapabilities
,TLcdOGCFunction
,TLcdOGCIDFilterCapabilities
,TLcdOGCIsBetweenOperator
,TLcdOGCIsLikeOperator
,TLcdOGCIsNullOperator
,TLcdOGCLiteral
,TLcdOGCNotOperator
,TLcdOGCPropertyName
,TLcdOGCResourceId
,TLcdOGCResourceIdsOperator
,TLcdOGCScalarFilterCapabilities
,TLcdOGCSortBy
,TLcdOGCSortProperty
,TLcdOGCSpatialFilterCapabilities
,TLcdOGCSpatialOperator
,TLcdOGCTemporalFilterCapabilities
,TLcdOGCTemporalOperator
,TLcdOpenSearchDescription
,TLcdOpenSearchDescription.Image
,TLcdOpenSearchDescription.Url
,TLcdOpenSearchQuery
,TLcdOWSAbstractReferenceBase
,TLcdOWSAdditionalParameter
,TLcdOWSAddress
,TLcdOWSAllowedValues
,TLcdOWSAnyValue
,TLcdOWSBoundingBox
,TLcdOWSCapabilitiesBase
,TLcdOWSCapabilitiesBase.Languages
,TLcdOWSCode
,TLcdOWSContact
,TLcdOWSContentsBase
,TLcdOWSDCP
,TLcdOWSDescription
,TLcdOWSDomainMetadata
,TLcdOWSException
,TLcdOWSExceptionReport
,TLcdOWSGetResourceById
,TLcdOWSHTTP
,TLcdOWSKeywords
,TLcdOWSLanguageString
,TLcdOWSMetadata
,TLcdOWSNoValues
,TLcdOWSOnlineResource
,TLcdOWSOperation
,TLcdOWSOperationsMetadata
,TLcdOWSRange
,TLcdOWSResponsibleParty
,TLcdOWSResponsiblePartySubset
,TLcdOWSServiceProvider
,TLcdOWSTelephone
,TLcdOWSUnNamedDomain
,TLcdOWSValue
,TLcdOWSValuesReference
,TLcdPanorama
,TLcdSLDAnchorPoint
,TLcdSLDChannelSelection
,TLcdSLDColorMap
,TLcdSLDColorMapEntry
,TLcdSLDContrastEnhancement
,TLcdSLDDescription
,TLcdSLDDisplacement
,TLcdSLDExtent
,TLcdSLDExternalGraphic
,TLcdSLDFeatureTypeConstraint
,TLcdSLDFeatureTypeStyle
,TLcdSLDFill
,TLcdSLDFont
,TLcdSLDFunction
,TLcdSLDGeometry
,TLcdSLDGraphic
,TLcdSLDHalo
,TLcdSLDHistogram
,TLcdSLDImageOutline
,TLcdSLDInlineContent
,TLcdSLDInlineFeature
,TLcdSLDInterpolationPoint
,TLcdSLDLabelPlacement
,TLcdSLDLayerFeatureConstraints
,TLcdSLDLinePlacement
,TLcdSLDMapItem
,TLcdSLDMark
,TLcdSLDNormalize
,TLcdSLDOnlineResource
,TLcdSLDOverlapBehavior
,TLcdSLDParameterValue
,TLcdSLDPointPlacement
,TLcdSLDRemoteOWS
,TLcdSLDRule
,TLcdSLDSelectedChannel
,TLcdSLDShadedRelief
,TLcdSLDStroke
,TLcdSLDStyledLayerDescriptor
,TLcdSLDVendorOption
,TLcdWCSProxy
,TLcdWFSFeatureType
,TLcdWFSFeatureTypeList
,TLcdWFSGMLObjectType
,TLcdWFSGMLObjectTypeList
,TLcdWFSMetadataURL
,TLcdWFSOperation
,TLcdWFSOperationList
,TLcdWFSOutputFormatList
,TLcdXLinkSimpleLink
public class TLcdDataObject
extends Object
implements ILcdDataObject, ILcdCloneable, ILcdDeepCloneable
Default implementation of
ILcdDataObject
.
This implementation stores the values of its properties in an Object array.- Since:
- 10.0
-
Constructor Summary
ConstructorDescriptionTLcdDataObject
(TLcdDataType aType) Creates a new data object for the given type. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Returns a deep clone of this object.Returns a deep clone of this object.Returns 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
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.toString()
-
Constructor Details
-
TLcdDataObject
Creates a new data object for the given type.- Parameters:
aType
- the type for which to create a new data object
-
-
Method Details
-
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
-
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
-
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:
-
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.
-
clone
Returns a deep clone of this object. This method delegates toclone(Map)
.- Specified by:
clone
in interfaceILcdCloneable
- Overrides:
clone
in classObject
- Returns:
- a deep clone of this object
- See Also:
-
clone
Returns a deep clone of this object. If the clone is not already present in the dictionary, a new instance if created as follows:- First, a new instance is created using Java's clone() mechanism.
- Then, all properties of this object are cloned and set on the newly created
instance. A property is cloned as follows:
- If the property value is an
ILcdDataObject
, the value is cloned by first creating a new instance via thevalue.getDataType().newInstance()
method, and then cloning its properties one by one. - If the value implements
ILcdDeepCloneable
orILcdCloneable
then this interface is used to clone the value. - Otherwise, the property value is copied by reference.
- If the property value is an
- Specified by:
clone
in interfaceILcdDeepCloneable
- Parameters:
aObjectDictionary
- the Object dictionary that keeps track of the objects for which a clone has already been made, and their corresponding clone Object.- Returns:
- a deep clone of this 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
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.
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.
-
toString
-