Class ValidationServiceImpl
- java.lang.Object
-
- org.eclipse.emfforms.common.internal.validation.ValidationServiceImpl
-
- All Implemented Interfaces:
ValidationService
public class ValidationServiceImpl extends java.lang.Object implements ValidationService
The implementation ofValidationService.- Author:
- Mat Hansen
-
-
Constructor Summary
Constructors Constructor Description ValidationServiceImpl()Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddDiagnosticFilter(DiagnosticFilter diagnosticFilter)Adds aDiagnosticFilterto remove specificDiagnosticfrom the result of a validation.voidaddObjectFilter(ObjectFilter objectFilter)Adds anObjectFilterto skip specific EObjects during the validation.voidaddSubTreeFilter(SubTreeFilter subTreeFilter)Adds aSubTreeFilterto skip specific sub trees during the validation.voidaddValidator(Validator validator)Adds a validation provider to the list of known validators.voidcancel()Allows to cancel the current validation run (if any).protected org.eclipse.emf.common.util.DiagnosticgetDiagnosticForEObject(org.eclipse.emf.ecore.EObject object)Computes theDiagnosticfor the given eObject.protected org.eclipse.emf.ecore.EValidatorgetEValidatorForEObject(org.eclipse.emf.ecore.EObject eObject)Returns aEValidatorfor the givenEObject.protected java.util.Map<java.lang.Object,java.lang.Object>getValidationContext(org.eclipse.emf.ecore.EValidator eValidator)Obtains the shared validation context for a validation of multiple objects or a one-off context for validation of a single object.booleanisBusy()Returns true as long as a validation is in process.voidregisterValidationFilter(ValidationFilter filter)Deprecated.voidregisterValidationResultListener(ValidationResultListener listener)Registers aValidationResultListener.voidremoveDiagnosticFilter(DiagnosticFilter diagnosticFilter)Removes aDiagnosticFilter.voidremoveObjectFilter(ObjectFilter objectFilter)Removes anObjectFilter.voidremoveSubTreeFilter(SubTreeFilter subTreeFilter)Removes aSubTreeFilter.voidremoveValidator(Validator validator)Removes a validation provider from the list of known validators.voidsetSubstitutionLabelProvider(org.eclipse.emf.ecore.EValidator.SubstitutionLabelProvider substitutionLabelProvider)Set aEValidator.SubstitutionLabelProviderto be used for substituting labels inDiagnostics.voidunregisterValidationFilter(ValidationFilter filter)Deprecated.voidunregisterValidationResultListener(ValidationResultListener listener)Unregisters aValidationResultListener.java.util.Set<org.eclipse.emf.common.util.Diagnostic>validate(java.util.Iterator<org.eclipse.emf.ecore.EObject> eObjectsIterator)Uses the given iterator to validate all eObjects in a collection.org.eclipse.emf.common.util.Diagnosticvalidate(org.eclipse.emf.ecore.EObject eObject)Validates the given eObject.
-
-
-
Method Detail
-
validate
public org.eclipse.emf.common.util.Diagnostic validate(org.eclipse.emf.ecore.EObject eObject)
Description copied from interface:ValidationServiceValidates the given eObject.- Specified by:
validatein interfaceValidationService- Parameters:
eObject- the eObject to validate- Returns:
- the resulting
Diagnostic, or null if the eObject is filtered by aValidationFilter
-
validate
public java.util.Set<org.eclipse.emf.common.util.Diagnostic> validate(java.util.Iterator<org.eclipse.emf.ecore.EObject> eObjectsIterator) throws ValidationCanceledExceptionDescription copied from interface:ValidationServiceUses the given iterator to validate all eObjects in a collection.- Specified by:
validatein interfaceValidationService- Parameters:
eObjectsIterator- the list to validate- Returns:
- the resulting set of
Diagnostics - Throws:
ValidationCanceledException- in caseValidationService.cancel()has been called
-
getEValidatorForEObject
protected org.eclipse.emf.ecore.EValidator getEValidatorForEObject(org.eclipse.emf.ecore.EObject eObject)
Returns aEValidatorfor the givenEObject.- Parameters:
eObject- theEObjectto retrieve aEValidatorfor- Returns:
- the
EValidator
-
getDiagnosticForEObject
protected org.eclipse.emf.common.util.Diagnostic getDiagnosticForEObject(org.eclipse.emf.ecore.EObject object)
Computes theDiagnosticfor the given eObject.- Parameters:
object- theEObjectto validate- Returns:
- the
Diagnostic
-
getValidationContext
protected java.util.Map<java.lang.Object,java.lang.Object> getValidationContext(org.eclipse.emf.ecore.EValidator eValidator)
Obtains the shared validation context for a validation of multiple objects or a one-off context for validation of a single object. If I have asubstitution label provider, thn it will also be put into the context. Subclasses may extend this to populate the context with anything else of interest.- Parameters:
eValidator- the validator to put into the context- Returns:
- the context
-
addValidator
public void addValidator(Validator validator)
Description copied from interface:ValidationServiceAdds a validation provider to the list of known validators.- Specified by:
addValidatorin interfaceValidationService- Parameters:
validator- theValidatorto add
-
removeValidator
public void removeValidator(Validator validator)
Description copied from interface:ValidationServiceRemoves a validation provider from the list of known validators.- Specified by:
removeValidatorin interfaceValidationService- Parameters:
validator- theValidatorto remove
-
registerValidationFilter
@Deprecated public void registerValidationFilter(ValidationFilter filter)
Deprecated.Description copied from interface:ValidationServiceRegisters a validation filter.- Specified by:
registerValidationFilterin interfaceValidationService- Parameters:
filter- theValidationFilterto register
-
unregisterValidationFilter
@Deprecated public void unregisterValidationFilter(ValidationFilter filter)
Deprecated.Description copied from interface:ValidationServiceUnregisters a validation filter.- Specified by:
unregisterValidationFilterin interfaceValidationService- Parameters:
filter- theValidationFilterto unregister
-
registerValidationResultListener
public void registerValidationResultListener(ValidationResultListener listener)
Description copied from interface:ValidationServiceRegisters aValidationResultListener.- Specified by:
registerValidationResultListenerin interfaceValidationService- Parameters:
listener- theValidationResultListenerto register
-
unregisterValidationResultListener
public void unregisterValidationResultListener(ValidationResultListener listener)
Description copied from interface:ValidationServiceUnregisters aValidationResultListener.- Specified by:
unregisterValidationResultListenerin interfaceValidationService- Parameters:
listener- theValidationResultListenerto unregister
-
setSubstitutionLabelProvider
public void setSubstitutionLabelProvider(org.eclipse.emf.ecore.EValidator.SubstitutionLabelProvider substitutionLabelProvider)
Description copied from interface:ValidationServiceSet aEValidator.SubstitutionLabelProviderto be used for substituting labels inDiagnostics.- Specified by:
setSubstitutionLabelProviderin interfaceValidationService- Parameters:
substitutionLabelProvider- theEValidator.SubstitutionLabelProviderto be set for this service- See Also:
EValidator.SubstitutionLabelProvider
-
isBusy
public boolean isBusy()
Description copied from interface:ValidationServiceReturns true as long as a validation is in process. Not applicable for single validation runs withValidationService.validate(EObject). SeeValidationService.cancel()to interrupt a running validation process.- Specified by:
isBusyin interfaceValidationService- Returns:
- true as long as a validation is running, false otherwise.
-
cancel
public void cancel()
Description copied from interface:ValidationServiceAllows to cancel the current validation run (if any). Not applicable for single validation runs withValidationService.validate(EObject).- Specified by:
cancelin interfaceValidationService
-
addSubTreeFilter
public void addSubTreeFilter(SubTreeFilter subTreeFilter)
Description copied from interface:ValidationServiceAdds aSubTreeFilterto skip specific sub trees during the validation.nullis ignored.- Specified by:
addSubTreeFilterin interfaceValidationService- Parameters:
subTreeFilter-SubTreeFilter
-
addObjectFilter
public void addObjectFilter(ObjectFilter objectFilter)
Description copied from interface:ValidationServiceAdds anObjectFilterto skip specific EObjects during the validation.nullis ignored.- Specified by:
addObjectFilterin interfaceValidationService- Parameters:
objectFilter-ObjectFilter
-
addDiagnosticFilter
public void addDiagnosticFilter(DiagnosticFilter diagnosticFilter)
Description copied from interface:ValidationServiceAdds aDiagnosticFilterto remove specificDiagnosticfrom the result of a validation.nullis ignored.- Specified by:
addDiagnosticFilterin interfaceValidationService- Parameters:
diagnosticFilter-DiagnosticFilter
-
removeSubTreeFilter
public void removeSubTreeFilter(SubTreeFilter subTreeFilter)
Description copied from interface:ValidationServiceRemoves aSubTreeFilter.- Specified by:
removeSubTreeFilterin interfaceValidationService- Parameters:
subTreeFilter-SubTreeFilter
-
removeObjectFilter
public void removeObjectFilter(ObjectFilter objectFilter)
Description copied from interface:ValidationServiceRemoves anObjectFilter.- Specified by:
removeObjectFilterin interfaceValidationService- Parameters:
objectFilter-ObjectFilter
-
removeDiagnosticFilter
public void removeDiagnosticFilter(DiagnosticFilter diagnosticFilter)
Description copied from interface:ValidationServiceRemoves aDiagnosticFilter.- Specified by:
removeDiagnosticFilterin interfaceValidationService- Parameters:
diagnosticFilter-DiagnosticFilter
-
-