Class DefaultSource

All Implemented Interfaces:
Serializable, Emptiable, LenientComparable, IdentifiedObject, org.opengis.metadata.lineage.Source
Direct Known Subclasses:
LE_Source

@TitleProperty(name="description") public class DefaultSource extends ISOMetadata implements org.opengis.metadata.lineage.Source
Information about the source data used in creating the data specified by the scope. The following properties are mandatory or conditional (i.e. mandatory under some circumstances) in a well-formed metadata according ISO 19115:
LI_Source   ├─description…………………………………………… Detailed description of the level of the source data.   └─scope…………………………………………………………… Type and / or extent of the source.       ├─level………………………………………………… Hierarchical level of the data specified by the scope.       └─levelDescription…………………… Detailed description about the level of the data specified by the scope.           ├─attributeInstances…… Attribute instances to which the information applies.           ├─attributes………………………… Attributes to which the information applies.           ├─dataset………………………………… Dataset to which the information applies.           ├─featureInstances………… Feature instances to which the information applies.           ├─features……………………………… Features to which the information applies.           └─other……………………………………… Class of information that does not fall into the other categories to which the information applies.
According ISO 19115, at least one of description and source extents shall be provided.

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:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serial number for inter-operability with different versions.
      See Also:
    • description

      private org.opengis.util.InternationalString description
      Detailed description of the level of the source data.
    • sourceSpatialResolution

      private org.opengis.metadata.identification.Resolution sourceSpatialResolution
      Spatial resolution expressed as a scale factor, an angle or a level of detail.
    • sourceReferenceSystem

      private org.opengis.referencing.ReferenceSystem sourceReferenceSystem
      Spatial reference system used by the source data.
    • sourceCitation

      private org.opengis.metadata.citation.Citation sourceCitation
      Recommended reference to be used for the source data.
    • sourceMetadata

      private Collection<org.opengis.metadata.citation.Citation> sourceMetadata
      Reference to metadata for the source.
    • scope

      private org.opengis.metadata.quality.Scope scope
      Type and / or extent of the source.
    • sourceSteps

      private Collection<org.opengis.metadata.lineage.ProcessStep> sourceSteps
      Information about an event in the creation process for the source data.
    • processedLevel

      private org.opengis.metadata.Identifier processedLevel
      Processing level of the source data.
    • resolution

      private org.opengis.metadata.lineage.NominalResolution resolution
      Distance between consistent parts (centre, left side, right side) of two adjacent pixels.
  • Constructor Details

    • DefaultSource

      public DefaultSource()
      Creates an initially empty source.
    • DefaultSource

      public DefaultSource(CharSequence description)
      Creates a source initialized with the given description.
      Parameters:
      description - a detailed description of the level of the source data, or null.
    • DefaultSource

      public DefaultSource(org.opengis.metadata.lineage.Source 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.
      Parameters:
      object - the metadata to copy values from, or null if none.
      See Also:
  • Method Details

    • castOrCopy

      public static DefaultSource castOrCopy(org.opengis.metadata.lineage.Source object)
      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 returns null.
      • Otherwise if the given object is already an instance of DefaultSource, then it is returned unchanged.
      • Otherwise a new DefaultSource 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, or null 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.
    • getDescription

      public org.opengis.util.InternationalString getDescription()
      Returns a detailed description of the level of the source data.
      Specified by:
      getDescription in interface org.opengis.metadata.lineage.Source
      Returns:
      description of the level of the source data, or null.
    • setDescription

      public void setDescription(org.opengis.util.InternationalString newValue)
      Sets a detailed description of the level of the source data.
      Parameters:
      newValue - the new description.
    • getSourceSpatialResolution

      @UML(identifier="sourceSpatialResolution", obligation=OPTIONAL, specification=ISO_19115) public org.opengis.metadata.identification.Resolution getSourceSpatialResolution()
      Returns the spatial resolution expressed as a scale factor, an angle or a level of detail.
      Returns:
      spatial resolution expressed as a scale factor, an angle or a level of detail, or null if none.
      Since:
      0.5
    • setSourceSpatialResolution

      public void setSourceSpatialResolution(org.opengis.metadata.identification.Resolution newValue)
      Sets the spatial resolution expressed as a scale factor, an angle or a level of detail.
      Parameters:
      newValue - the new spatial resolution.
      Since:
      0.5
    • getScaleDenominator

      @Deprecated public org.opengis.metadata.identification.RepresentativeFraction getScaleDenominator()
      Deprecated.
      As of ISO 19115:2014, moved to DefaultResolution.getEquivalentScale().
      Returns the denominator of the representative fraction on a source map. This method fetches the value from the source spatial resolution.
      Specified by:
      getScaleDenominator in interface org.opengis.metadata.lineage.Source
      Returns:
      representative fraction on a source map, or null.
    • setScaleDenominator

      @Deprecated public void setScaleDenominator(org.opengis.metadata.identification.RepresentativeFraction newValue)
      Deprecated.
      Sets the denominator of the representative fraction on a source map. This method stores the value in the source spatial resolution.
      Parameters:
      newValue - the new scale denominator.
    • getSourceReferenceSystem

      public org.opengis.referencing.ReferenceSystem getSourceReferenceSystem()
      Returns the spatial reference system used by the source data.
      Specified by:
      getSourceReferenceSystem in interface org.opengis.metadata.lineage.Source
      Returns:
      spatial reference system used by the source data, or null.
    • setSourceReferenceSystem

      public void setSourceReferenceSystem(org.opengis.referencing.ReferenceSystem newValue)
      Sets the spatial reference system used by the source data.
      Parameters:
      newValue - the new reference system.
    • getSourceCitation

      public org.opengis.metadata.citation.Citation getSourceCitation()
      Returns the recommended reference to be used for the source data.
      Specified by:
      getSourceCitation in interface org.opengis.metadata.lineage.Source
      Returns:
      recommended reference to be used for the source data, or null.
    • setSourceCitation

      public void setSourceCitation(org.opengis.metadata.citation.Citation newValue)
      Sets the recommended reference to be used for the source data.
      Parameters:
      newValue - the new source citation.
    • getSourceMetadata

      @UML(identifier="sourceMetadata", obligation=OPTIONAL, specification=ISO_19115) public Collection<org.opengis.metadata.citation.Citation> getSourceMetadata()
      Returns the references to metadata for the source.
      Returns:
      references to metadata for the source.
      Since:
      0.5
    • setSourceMetadata

      public void setSourceMetadata(Collection<? extends org.opengis.metadata.citation.Citation> newValues)
      Sets the references to metadata for the source.
      Parameters:
      newValues - the new references.
      Since:
      0.5
    • getScope

      @UML(identifier="scope", obligation=CONDITIONAL, specification=ISO_19115) public org.opengis.metadata.quality.Scope getScope()
      Return the type and / or extent of the source. This information should be provided if the description is not provided.
      Returns:
      type and / or extent of the source, or null if none.
      Since:
      0.5
    • setScope

      public void setScope(org.opengis.metadata.quality.Scope newValue)
      Sets the type and / or extent of the source.
      Parameters:
      newValue - the new type and / or extent of the source.
      Since:
      0.5
    • getSourceExtents

      @Deprecated public Collection<org.opengis.metadata.extent.Extent> getSourceExtents()
      Deprecated.
      As of ISO 19115:2014, moved to DefaultScope.getExtents().
      Returns the information about the spatial, vertical and temporal extent of the source data. This method fetches the values from the scope.
      Specified by:
      getSourceExtents in interface org.opengis.metadata.lineage.Source
      Returns:
      information about the extent of the source data.
    • setSourceExtents

      @Deprecated public void setSourceExtents(Collection<? extends org.opengis.metadata.extent.Extent> newValues)
      Deprecated.
      As of ISO 19115:2014, moved to DefaultScope.setExtents(Collection).
      Information about the spatial, vertical and temporal extent of the source data. This method stores the values in the scope.
      Parameters:
      newValues - the new source extents.
    • getSourceSteps

      public Collection<org.opengis.metadata.lineage.ProcessStep> getSourceSteps()
      Returns information about process steps in which this source was used.
      Specified by:
      getSourceSteps in interface org.opengis.metadata.lineage.Source
      Returns:
      information about process steps in which this source was used.
    • setSourceSteps

      public void setSourceSteps(Collection<? extends org.opengis.metadata.lineage.ProcessStep> newValues)
      Sets information about process steps in which this source was used.
      Parameters:
      newValues - the new process steps.
    • getProcessedLevel

      public org.opengis.metadata.Identifier getProcessedLevel()
      Returns the processing level of the source data. null if unspecified.
      Specified by:
      getProcessedLevel in interface org.opengis.metadata.lineage.Source
      Returns:
      processing level of the source data, or null.
    • setProcessedLevel

      public void setProcessedLevel(org.opengis.metadata.Identifier newValue)
      Sets the processing level of the source data.
      Parameters:
      newValue - the new processed level value.
    • getResolution

      public org.opengis.metadata.lineage.NominalResolution getResolution()
      Returns the distance between consistent parts (centre, left side, right side) of two adjacent pixels.
      Specified by:
      getResolution in interface org.opengis.metadata.lineage.Source
      Returns:
      distance between consistent parts of two adjacent pixels, or null.
    • setResolution

      public void setResolution(org.opengis.metadata.lineage.NominalResolution newValue)
      Sets the distance between consistent parts (centre, left side, right side) of two adjacent pixels.
      Parameters:
      newValue - the new nominal resolution value.
    • getSources

      private Collection<org.opengis.metadata.citation.Citation> getSources()
      Invoked by JAXB at both marshalling and unmarshalling time. This attribute has been added by ISO 19115:2014 standard. If (and only if) marshalling an older standard version, we omit this attribute.