/** * */ package org.activiti.designer.eclipse.extension.validation; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.graphiti.mm.pictograms.Diagram; /** * @author Tiese Barrell * @since 0.6.1 * @version 1 * */ public interface ProcessValidator { /** * The identifier for problems created by the Activiti Designer for * {@link ProcessValidator}s. */ public static final String MARKER_ID = "org.activiti.designer.eclipse.activitiValidatorMarker"; /** * Gets an identifier for the validator. * * @return the validator's id */ String getValidatorId(); /** * Gets a descriptive name for the validator. * * @return the validator's name */ String getValidatorName(); /** * Gets a descriptive name for the format the validator validates. * * @return the format's name */ String getFormatName(); /** * Validates the contents of the diagram. * * <p> * The {@link IProgressMonitor} provided should be used to indicate progress * made in the validator and will be reported to the user. * * @param diagram * the diagram to be validated * @param monitor * the monitor used to indicate progress of this validator * @return true if validation was successful, false otherwise */ boolean validateDiagram(Diagram diagram, IProgressMonitor monitor); }