mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-08 14:51:49 +00:00
108044: Merged 5.0.N (5.0.3) to HEAD-BUG-FIX (5.1/Cloud) 107731: Merged 5.0.2 (5.0.2) to 5.0.N (5.0.3) 107679: MNT-13820 "Model can be deactivated with a node referencing the model is in trashcan" Use the database to check if model is in use, rather than Search Fix up existing tests in light of these changes git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@108075 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
37 lines
1.1 KiB
Java
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);
|
|
}
|