Files
alfresco-community-repo/source/java/org/alfresco/repo/dictionary/ModelValidator.java
Raluca Munteanu dc6b2852d0 Merged 5.1.N (5.1.2) to 5.2.N (5.2.1)
125605 rmunteanu: Merged 5.1.1 (5.1.1) to 5.1.N (5.1.2)
      125498 slanglois: MNT-16155 Update source headers - remove svn:eol-style property on Java and JSP source files


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@125783 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2016-04-26 13:03:25 +00:00

37 lines
1.1 KiB
Java

package org.alfresco.repo.dictionary;
import org.alfresco.service.namespace.QName;
/**
* Validates model changes and deletes against the repository.
*
* @author sglover
*
*/
public interface ModelValidator
{
/**
* 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
*/
void validateModel(CompiledModel compiledModel);
/**
* Can the model be deleted (validate against repository contents / workflows)?
*
* @return true only if the model is not being used or if the model does not
* exist
*/
boolean canDeleteModel(QName modelName);
}