Class TLcdEditableDataModelListDescriptor

All Implemented Interfaces:
ILcdDataModelDescriptor, ILcdModelDescriptor, Serializable
Direct Known Subclasses:
TLcdAIXMModelListDescriptor, TLcdARINCModelListDescriptor, TLcdDAFIFAerodromeNavaidModelListDescriptor, TLcdDAFIFAirspaceModelListDescriptor, TLcdDAFIFILSModelListDescriptor, TLcdDAFIFNavaidModelListDescriptor, TLcdDAFIFRefuelingTrackModelListDescriptor, TLcdDAFIFSpecialUseAirspaceModelListDescriptor, TLcdDAFIFVFRRouteModelListDescriptor

public class TLcdEditableDataModelListDescriptor extends TLcdEditableModelListDescriptor implements ILcdDataModelDescriptor

An extension of a TLcdEditableModelListDescriptor that implements ILcdDataModelDescriptor.

The data model of this descriptor will be the union of the data models of all descriptors in the list. The model (element) types will be the union of the model (element) types of all descriptors in the list. If one or more model (element) types of the descriptors in the list is null, the model (element) types of this descriptor will also be null. If at least one descriptor in the list does not implement ILcdDataModelDescriptor the data model of this descriptor will be TLcdUnknownDataTypes.getDataModel().

See Also:
  • Constructor Details

    • TLcdEditableDataModelListDescriptor

      public TLcdEditableDataModelListDescriptor()
      Create a TLcdEditableDataModelListDescriptor with ModelSet as source, type and display name.
    • TLcdEditableDataModelListDescriptor

      public TLcdEditableDataModelListDescriptor(String aSourceName, String aDisplayName)
      Create a TLcdEditableDataModelListDescriptor with the given source and display name.
      Parameters:
      aSourceName - an indication of the source of the model(s).
      aDisplayName - a display name for the data in the model(s).
    • TLcdEditableDataModelListDescriptor

      public TLcdEditableDataModelListDescriptor(String aSourceName, String aDisplayName, String aTypeName)
      Create a TLcdEditableDataModelListDescriptor with the given source, display name, and type name.
      Parameters:
      aSourceName - an indication of the source of the model(s).
      aDisplayName - a display name for the data in the model(s).
      aTypeName - a type name for the data in the model(s).
  • Method Details

    • addModelDescriptor

      public void addModelDescriptor(ILcdModelDescriptor aModelDescriptor)
      Description copied from class: TLcdEditableModelListDescriptor
      Add the given ILcdModelDescriptor.
      Overrides:
      addModelDescriptor in class TLcdEditableModelListDescriptor
      Parameters:
      aModelDescriptor - the ILcdModelDescriptor.
    • insertModelDescriptorAt

      public void insertModelDescriptorAt(ILcdModelDescriptor aModelDescriptor, int aIndex)
      Description copied from class: TLcdEditableModelListDescriptor
      Inserts the given ILcdModelDescriptor at the given index.
      Overrides:
      insertModelDescriptorAt in class TLcdEditableModelListDescriptor
      Parameters:
      aModelDescriptor - the ILcdModelDescriptor.
      aIndex - the index the model descriptor should have after insertion. The index should be smaller than or equal to the current number of model descriptors.
    • removeModelDescriptor

      public void removeModelDescriptor(ILcdModelDescriptor aModelDescriptor)
      Remove the given ILcdModelDescriptor.
      Overrides:
      removeModelDescriptor in class TLcdEditableModelListDescriptor
      Parameters:
      aModelDescriptor - the ILcdModelDescriptor.
    • removeAllModelDescriptors

      public void removeAllModelDescriptors()
      Remove all ILcdModelDescriptors.
      Overrides:
      removeAllModelDescriptors in class TLcdEditableModelListDescriptor
    • getDataModel

      public TLcdDataModel getDataModel()
      Description copied from interface: ILcdDataModelDescriptor

      Returns the data model that describes the elements of the model. Note that not necessarily all data in the model will be of a type of this data model. Very likely, types from the dependencies of the returned data model are used as well.

      In case the model accepts objects from multiple data models, an anonymous data model that depends on all these data models should be returned (see TLcdDataModelBuilder.createAnonymousDataModel(java.util.Collection)).

      Specified by:
      getDataModel in interface ILcdDataModelDescriptor
      Returns:
      the data model that describes the elements of the model
    • getModelElementTypes

      public Set<TLcdDataType> getModelElementTypes()
      Description copied from interface: ILcdDataModelDescriptor

      Returns a set containing all the data types of which instances can be elements in the model associated with this descriptor. Implementations are free to limit the result to only include the types of which there are actually elements in the model; but they are not required to do so.

      Implementations should return null in case they don't know which element types are present in the model.

      For each element of the model associated with this model descriptor, the following holds true : getModelElementTypes().contains( element.getDataType() ).

      Specified by:
      getModelElementTypes in interface ILcdDataModelDescriptor
      Returns:
      a set containing all the data types of which instances can be elements in the model associated with this descriptor
    • getModelTypes

      public Set<TLcdDataType> getModelTypes()
      Description copied from interface: ILcdDataModelDescriptor

      Returns a set containing all the types of which instances can be used (including both top-level elements and child objects) in the model associated with this descriptor. Implementations are free to limit the result to only include the types of which there are actually instances in the model; but they are not required to do so.

      A simple and correct implementation would be to return getDataModel().getTypes(). Implementations are encouraged to return a subset of this set if they can do so without spending an unreasonable amount of resources.

      Implementations should return null in case they don't know which types are present in the model.

      Specified by:
      getModelTypes in interface ILcdDataModelDescriptor
      Returns:
      a set containing all the data types of which instances can be used in the model associated with this descriptor