Interface ModelValidator

All Known Implementing Classes:
ModelValidatorImpl

public interface ModelValidator
Validates model changes and deletes against the repository.
Author:
sglover
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    canDeleteModel(QName modelName)
    Can the model be deleted (validate against repository contents / workflows)?
    void
    validate against dictionary if new model then nothing to validate else if an existing model then could be updated (or unchanged) so validate to currently only allow incremental updates - addition of new types, aspects (except default aspects), properties, associations - no deletion of types, aspects or properties or associations - no addition, update or deletion of default/mandatory aspects
    void
    validate the namespace prefix
  • Method Details

    • validateModel

      void validateModel(CompiledModel compiledModel)
      validate against dictionary if new model then nothing to validate else if an existing model then could be updated (or unchanged) so validate to currently only allow incremental updates - addition of new types, aspects (except default aspects), properties, associations - no deletion of types, aspects or properties or associations - no addition, update or deletion of default/mandatory aspects
      Throws:
      ModelInUseException - if the model is being used by nodes or properties
    • canDeleteModel

      boolean canDeleteModel(QName modelName)
      Can the model be deleted (validate against repository contents / workflows)?
      Returns:
      true only if the model is not being used or if the model does not exist
    • validateModelNamespacePrefix

      void validateModelNamespacePrefix(NodeRef modelNodeRef)
      validate the namespace prefix
      Throws:
      CustomModelException - if the prefix already exists in another model