Class TLfnData

java.lang.Object
com.luciad.fusion.platform.model.TLfnData
Direct Known Subclasses:
TLfnEditableData

public class TLfnData extends Object
Represents a geospatial data set.

Since a single data represents a geospatial data set, it can represent multiple files. The type of the data describes what format the data is, whereas the categories gives the general categories that the data belongs to.

Use the TLfnDataRepository to query the data available in LuciadFusion Studio.

Use getDataSource() and pass it to the appropriate ILcdModelDecoder.decodeSource(ILcdDataSource) to obtain the decoded model for this data.

Since:
2021.0
  • Method Details

    • getId

      public String getId()
      Returns the identifier of the data. The id is unique among all data.
      Returns:
      the identifier of the data.
    • getTitle

      public String getTitle()
      Returns the human-readable title of the data.
      Returns:
      the title of the data
    • getType

      public String getType()
      Returns the type of this data. For example, SHP for a shp data set. This corresponds to ILcdModelDescriptor.getTypeName() or TLcdModelMetadata.getFormat() when the data has been decoded.
      Returns:
      the type of this data
    • getCategories

      public Set<TLcdModelMetadata.DataCategory> getCategories()
      Returns the data categories that the data belongs to.
      Returns:
      the data categories belonging to the data
    • getMeasureTypeCodes

      public Set<TLcdISO19103MeasureTypeCode> getMeasureTypeCodes()
      Returns the measure type codes for the data. It indicates the type of the unit of measure of the data. For weather data this can be TLcdISO19103MeasureTypeCodeExtension.TEMPERATURE or TLcdISO19103MeasureTypeCodeExtension.PRESSURE for example. If the set contains TLcdISO19103MeasureTypeCodeExtension.TERRAIN_HEIGHT or TLcdISO19103MeasureTypeCodeExtension.ALTITUDE, this indicates that the data item contains elevation data.
      Returns:
      the measure type codes for the data
      Since:
      2023.1
    • getMimeType

      public String getMimeType()
      Returns the mime type of the data. Some examples are application/json, application/xml, image/tiff.
      Returns:
      the mime type
    • getCreationTime

      public ZonedDateTime getCreationTime()
      Returns the date and time when the data was created. This is time when the data was added to LuciadFusion Studio, by either crawling, uploading or adding it.
      Returns:
      the creation time of the data
    • getUpdateTime

      public ZonedDateTime getUpdateTime()
      Returns the date and time when the data was last updated.
      Returns:
      the date and time when the data was last updated
    • getUpdatedBy

      public TLfnUser getUpdatedBy()
      Returns the user that did the last update to the data.
      Returns:
      the user that did the last update to the data
      Since:
      2022.1
    • getWGS84Bounds

      public ILcdBounds getWGS84Bounds()
      Returns the bounds of the data in the WGS84 reference system. If the bounds of the data cannot be transformed to the WGS84 reference system then this will return null.
      Returns:
      the bounds of the data
    • getAbstractText

      public String getAbstractText()
      Returns the abstract text describing the data.
      Returns:
      the abstract text describing the data
    • getKeywords

      public Set<String> getKeywords()
      Returns the set of keywords associated with the data.
      Returns:
      the keywords associated with the product
    • getDataSource

      public ILcdDataSource getDataSource()
      Returns the data source for the data.

      Pass the data source to the appropriate ILcdModelDecoder.decodeSource(ILcdDataSource) to obtain the decoded model for this data.

      Returns:
      the data source for the data
    • getModelReference

      public Optional<ILcdModelReference> getModelReference()
      Returns the model reference corresponding to the coordinate reference system of the data, Optional.empty() is returned if the reference could not be determined.
      Returns:
      the model reference belonging to the data, Optional.empty() if the reference could not be determined
    • getMultiDimensional

      public Optional<ILcdMultiDimensional> getMultiDimensional()
      Returns the multi-dimensional of the data. This returns Optional.empty() if the data is not multi-dimensional.
      Returns:
      the multi-dimensional of the data, Optional.empty() if the data is not multi-dimensional
    • getCustomProperties

      public Set<TLfnCustomProperty> getCustomProperties()
      Returns the custom properties of the data. An empty set is returned if the data doesn't have custom properties.

      For performance reasons, it's possible that the custom properties are not prefetched in this object. In that case, calling this method results in an additional query to fetch the custom properties. Note that the custom properties might have been changed in the database between fetching the data object and calling this method.

      Returns:
      the custom properties of the data
      Since:
      2022.1
    • getCustomProperty

      public Optional<TLfnCustomProperty> getCustomProperty(String aCustomPropertyName)
      Returns the TLfnCustomProperty with the given aCustomPropertyName associated with this TLfnData. An empty Optional is returned if the data doesn't have a custom property with the given aCustomPropertyName.

      For performance reasons, it's possible that the custom properties are not prefetched in this object. In that case, calling this method results in an additional query to fetch the custom property.

      Parameters:
      aCustomPropertyName - The name of the TLfnCustomProperty
      Returns:
      an Optional containing the TLfnCustomProperty
      Throws:
      TLfnIdentifiableResourceNotFoundException - if there was no TLfnData found with this TLfnDatas id in the TLfnDataRepository
      Since:
      2024.1
    • getVersion

      public Long getVersion()
      Returns the version of the data.

      The version is increased every time the data is updated, such as re-crawling the data after changes. The version can be used to determine if cache information related to the data needs to be invalidated. Store the version when the cache is created and check if the version has increased when accessing the cache.

      Returns:
      the version of the data
    • cloneAsEditableData

      public TLfnEditableData cloneAsEditableData()
      Returns a TLfnEditableData created based on the current TLfnData.
      Returns:
      a TLfnEditableData
      Throws:
      org.springframework.security.access.AccessDeniedException - if access control is enabled and the current thread's authenticated user does not have UPDATE permissions for this TLfnData
      Since:
      2024.1
    • equals

      public boolean equals(Object aO)
      Indicates whether some other object is "equal to" this TLfnData. If the other object is also an TLfnData, the data ids will be compared, false is returned otherwise.
      Overrides:
      equals in class Object
      Returns:
      {true} is the other object is equal to this job, false otherwise.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object