Class DefaultSource

  • All Implemented Interfaces:
    Serializable, Emptiable, Lenient­Comparable, Identified­Object, Source

    @TitleProperty(name="description")
    public class DefaultSource
    extends ISOMetadata
    implements 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.       └─level­Description…………………… Detailed description about the level of the data specified by the scope.           ├─attribute­Instances…… Attribute instances to which the information applies.           ├─attributes………………………… Attributes to which the information applies.           ├─dataset………………………………… Dataset to which the information applies.           ├─feature­Instances………… 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
    See Also:
    Serialized Form

    Defined in the sis-metadata module

    • Constructor Detail

      • 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​(Source object)
        Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, since 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:
        cast­Or­Copy(Source)
    • Method Detail

      • castOrCopy

        public static DefaultSource castOrCopy​(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 Default­Source, then it is returned unchanged.
        • Otherwise a new Default­Source instance is created using the copy constructor and returned. Note that this is a shallow copy operation, since 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 InternationalString getDescription()
        Returns a detailed description of the level of the source data.
        Specified by:
        get­Description in interface Source
        Returns:
        description of the level of the source data, or null.
      • setDescription

        public void setDescription​(InternationalString newValue)
        Sets a detailed description of the level of the source data.
        Parameters:
        new­Value - the new description.
      • getSourceSpatialResolution

        @UML(identifier="sourceSpatialResolution",
             obligation=OPTIONAL,
             specification=ISO_19115)
        public 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​(Resolution newValue)
        Sets the spatial resolution expressed as a scale factor, an angle or a level of detail.
        Parameters:
        new­Value - the new spatial resolution.
        Since:
        0.5
      • getSourceReferenceSystem

        public ReferenceSystem getSourceReferenceSystem()
        Returns the spatial reference system used by the source data.
        Specified by:
        get­Source­Reference­System in interface Source
        Returns:
        spatial reference system used by the source data, or null.
      • setSourceReferenceSystem

        public void setSourceReferenceSystem​(ReferenceSystem newValue)
        Sets the spatial reference system used by the source data.
        Parameters:
        new­Value - the new reference system.
      • getSourceCitation

        public Citation getSourceCitation()
        Returns the recommended reference to be used for the source data.
        Specified by:
        get­Source­Citation in interface Source
        Returns:
        recommended reference to be used for the source data, or null.
      • setSourceCitation

        public void setSourceCitation​(Citation newValue)
        Sets the recommended reference to be used for the source data.
        Parameters:
        new­Value - the new source citation.
      • setSourceMetadata

        public void setSourceMetadata​(Collection<? extends Citation> newValues)
        Sets the references to metadata for the source.
        Parameters:
        new­Values - the new references.
        Since:
        0.5
      • setScope

        public void setScope​(Scope newValue)
        Sets the type and / or extent of the source.
        Parameters:
        new­Value - the new type and / or extent of the source.
        Since:
        0.5
      • getSourceSteps

        public Collection<ProcessStep> getSourceSteps()
        Returns information about process steps in which this source was used.
        Specified by:
        get­Source­Steps in interface Source
        Returns:
        information about process steps in which this source was used.
      • setSourceSteps

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

        public Identifier getProcessedLevel()
        Returns the processing level of the source data. null if unspecified.
        Specified by:
        get­Processed­Level in interface Source
        Returns:
        processing level of the source data, or null.
      • setProcessedLevel

        public void setProcessedLevel​(Identifier newValue)
        Sets the processing level of the source data.
        Parameters:
        new­Value - the new processed level value.
      • getResolution

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

        public void setResolution​(NominalResolution newValue)
        Sets the distance between consistent parts (centre, left side, right side) of two adjacent pixels.
        Parameters:
        new­Value - the new nominal resolution value.