Interface IModelManagementRepository<M extends IModel>

Type Parameters:
M - the specific type of model
All Known Implementing Classes:
ModelRepository

public interface IModelManagementRepository<M extends IModel>
Defines the internal interface of a model management repository. This is subject to change!
Author:
Holger Eichelberger
  • Method Details

    • updateModelInformation

      void updateModelInformation(File file, ProgressObserver observer) throws ModelManagementException
      Updates the model information in file.
      Parameters:
      file - the location folder to search
      observer - an optional progress observer (use ProgressObserver.NO_OBSERVER but not null in case that no observation is intended)
      Throws:
      ModelManagementException - in case that the available information may be come inconsistent due to this update
    • loaders

      ModelLoaders<M> loaders()
      Returns the loaders.
      Returns:
      the loaders
    • updateForLoader

      void updateForLoader(IModelLoader<M> loader, ProgressObserver observer) throws ModelManagementException
      Registers a model loader and updates the model information provided by the loader.
      Parameters:
      loader - the model loader (must not be null)
      observer - an optional progress observer (use ProgressObserver.NO_OBSERVER but not null in case that no observation is intended)
      Throws:
      ModelManagementException - in case that the loader aims at loading inconsistent information
    • clearLocation

      void clearLocation(File file, ProgressObserver observer)
      Clears the location related information from the repository.
      Parameters:
      file - the location
      observer - an optional progress observer (use ProgressObserver.NO_OBSERVER but not null in case that no observation is intended)
    • getResolvedModelInfo

      ModelInfo<M> getResolvedModelInfo(M model)
      Returns the model information object for the given model by considering resolved models.
      Parameters:
      model - the model to search an information object for which resolves model
      Returns:
      the related model information object or null if there is none