Class DefaultDimension
java.lang.Object
org.apache.sis.metadata.AbstractMetadata
org.apache.sis.metadata.ModifiableMetadata
org.apache.sis.metadata.iso.ISOMetadata
org.apache.sis.metadata.iso.spatial.DefaultDimension
- All Implemented Interfaces:
Serializable
,Emptiable
,LenientComparable
,IdentifiedObject
,org.opengis.metadata.spatial.Dimension
@TitleProperty(name="dimensionName")
public class DefaultDimension
extends ISOMetadata
implements org.opengis.metadata.spatial.Dimension
Axis properties.
The following properties are mandatory in a well-formed metadata according ISO 19115:
MD_Dimension
├─dimensionName……
Name of the axis.
└─dimensionSize……
Number of elements along the axis.Limitations
- Instances of this class are not synchronized for multi-threading. Synchronization, if needed, is caller's responsibility.
- Serialized objects of this class are not guaranteed to be compatible with future Apache SIS releases.
Serialization support is appropriate for short term storage or RMI between applications running the
same version of Apache SIS. For long term storage, use
XML
instead.
- Since:
- 0.3
- Version:
- 1.0
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.sis.metadata.ModifiableMetadata
ModifiableMetadata.State
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate org.opengis.util.InternationalString
Description of the axis.private org.opengis.metadata.spatial.DimensionNameType
Name of the axis.private Integer
Number of elements along the axis.private org.opengis.util.InternationalString
Enhancement/ modifier of the dimension name.private Double
Degree of detail in the grid dataset.private static final long
Serial number for inter-operability with different versions.Fields inherited from class org.apache.sis.metadata.iso.ISOMetadata
identifiers
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs an initially empty dimension.DefaultDimension
(org.opengis.metadata.spatial.Dimension object) Constructs a new instance initialized with the values from the specified metadata object.DefaultDimension
(org.opengis.metadata.spatial.DimensionNameType dimensionName, int dimensionSize) Creates a dimension initialized to the given type and size. -
Method Summary
Modifier and TypeMethodDescriptionstatic DefaultDimension
castOrCopy
(org.opengis.metadata.spatial.Dimension object) Returns a SIS metadata implementation with the values of the given arbitrary implementation.org.opengis.util.InternationalString
Return the axis dimension description.org.opengis.metadata.spatial.DimensionNameType
Returns the name of the axis.Returns the number of elements along the axis.org.opengis.util.InternationalString
Returns the enhancement / modifier of the dimension name.Returns the degree of detail in the grid dataset.void
setDimensionDescription
(org.opengis.util.InternationalString newValue) Sets the axis dimension description.void
setDimensionName
(org.opengis.metadata.spatial.DimensionNameType newValue) Sets the name of the axis.void
setDimensionSize
(Integer newValue) Sets the number of elements along the axis.void
setDimensionTitle
(org.opengis.util.InternationalString newValue) Sets the enhancement / modifier of the dimension name.void
setResolution
(Double newValue) Sets the degree of detail in the grid dataset.Methods inherited from class org.apache.sis.metadata.iso.ISOMetadata
getIdentifier, getIdentifierMap, getIdentifiers, getStandard, setIdentifier, transitionTo
Methods inherited from class org.apache.sis.metadata.ModifiableMetadata
checkWritePermission, collectionType, copyCollection, copyList, copyMap, copySet, deepCopy, nonNullCollection, nonNullList, nonNullMap, nonNullSet, singleton, state, writeCollection, writeList, writeMap, writeSet
Methods inherited from class org.apache.sis.metadata.AbstractMetadata
asMap, asTreeTable, equals, equals, getInterface, hashCode, isEmpty, prune, toString
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerial number for inter-operability with different versions.- See Also:
-
dimensionName
private org.opengis.metadata.spatial.DimensionNameType dimensionNameName of the axis. -
dimensionSize
Number of elements along the axis. -
resolution
Degree of detail in the grid dataset. -
dimensionTitle
private org.opengis.util.InternationalString dimensionTitleEnhancement/ modifier of the dimension name. Example: dimensionName = "column", dimensionTitle = "longitude" -
dimensionDescription
private org.opengis.util.InternationalString dimensionDescriptionDescription of the axis.
-
-
Constructor Details
-
DefaultDimension
public DefaultDimension()Constructs an initially empty dimension. -
DefaultDimension
public DefaultDimension(org.opengis.metadata.spatial.DimensionNameType dimensionName, int dimensionSize) Creates a dimension initialized to the given type and size.- Parameters:
dimensionName
- the name of the axis, ornull
if none, ornull
if none.dimensionSize
- the number of elements along the axis, ornull
if none.- Throws:
IllegalArgumentException
- ifdimensionSize
is negative.
-
DefaultDimension
public DefaultDimension(org.opengis.metadata.spatial.Dimension object) Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, because the other metadata contained in the given object are not recursively copied.Note on properties validation: This constructor does not verify the property values of the given metadata (e.g. whether it contains unexpected negative values). This is because invalid metadata exist in practice, and verifying their validity in this copy constructor is often too late. Note that this is not the only hole, as invalid metadata instances can also be obtained by unmarshalling an invalid XML document.- Parameters:
object
- the metadata to copy values from, ornull
if none.- See Also:
-
-
Method Details
-
castOrCopy
Returns a SIS metadata implementation with the values of the given arbitrary implementation. This method performs the first applicable action in the following choices:- If the given object is
null
, then this method returnsnull
. - Otherwise if the given object is already an instance of
DefaultDimension
, then it is returned unchanged. - Otherwise a new
DefaultDimension
instance is created using the copy constructor and returned. Note that this is a shallow copy operation, because the other metadata contained in the given object are not recursively copied.
- Parameters:
object
- the object to get as a SIS implementation, ornull
if none.- Returns:
- a SIS implementation containing the values of the given object (may be the
given object itself), or
null
if the argument was null.
- If the given object is
-
getDimensionName
public org.opengis.metadata.spatial.DimensionNameType getDimensionName()Returns the name of the axis.- Specified by:
getDimensionName
in interfaceorg.opengis.metadata.spatial.Dimension
- Returns:
- name of the axis, or
null
.
-
setDimensionName
public void setDimensionName(org.opengis.metadata.spatial.DimensionNameType newValue) Sets the name of the axis.- Parameters:
newValue
- the new dimension name.
-
getDimensionSize
Returns the number of elements along the axis.- Specified by:
getDimensionSize
in interfaceorg.opengis.metadata.spatial.Dimension
- Returns:
- number of elements along the axis, or
null
.
-
setDimensionSize
Sets the number of elements along the axis.- Parameters:
newValue
- the new dimension size, ornull
.- Throws:
IllegalArgumentException
- if the given value is negative.
-
getResolution
Returns the degree of detail in the grid dataset.- Specified by:
getResolution
in interfaceorg.opengis.metadata.spatial.Dimension
- Returns:
- degree of detail in the grid dataset, or
null
.
-
setResolution
Sets the degree of detail in the grid dataset.- Parameters:
newValue
- the new resolution, ornull
.- Throws:
IllegalArgumentException
- if the given value is NaN, zero or negative.
-
getDimensionTitle
@UML(identifier="dimensionTitle", obligation=OPTIONAL, specification=ISO_19115) public org.opengis.util.InternationalString getDimensionTitle()Returns the enhancement / modifier of the dimension name.Example: dimensionName = "column", dimensionTitle = "longitude"- Returns:
- the enhancement / modifier of the dimension name.
- Since:
- 0.5
-
setDimensionTitle
public void setDimensionTitle(org.opengis.util.InternationalString newValue) Sets the enhancement / modifier of the dimension name.- Parameters:
newValue
- the new enhancement / modifier of the dimension name.- Since:
- 0.5
-
getDimensionDescription
@UML(identifier="dimensionDescription", obligation=OPTIONAL, specification=ISO_19115) public org.opengis.util.InternationalString getDimensionDescription()Return the axis dimension description.- Returns:
- the axis dimension description.
- Since:
- 0.5
-
setDimensionDescription
public void setDimensionDescription(org.opengis.util.InternationalString newValue) Sets the axis dimension description.- Parameters:
newValue
- the new axis dimension description.- Since:
- 0.5
-