Class ValidationServiceImpl
- java.lang.Object
-
- org.eclipse.emf.ecp.view.internal.validation.ValidationServiceImpl
-
- All Implemented Interfaces:
GlobalViewModelService
,ViewModelService
,IncrementalValidationService
,ValidationService
public class ValidationServiceImpl extends java.lang.Object implements ValidationService, IncrementalValidationService
Validation service that, once instantiated, synchronizes the validation result of a model element with its Renderable.- Author:
- Eugen Neufeld
-
-
Constructor Summary
Constructors Constructor Description ValidationServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addValidationProvider(ValidationProvider validationProvider)
Adds a validation provider to the list of known validation providers.void
addValidationProvider(ValidationProvider validationProvider, boolean revalidate)
Adds a validation provider to the list of known validation providers.void
childViewModelContextAdded(ViewModelContext childContext)
This method is called whenever a newViewModelContext
is added as a child context to the rootViewModelContext
thisGlobalViewModelService
belongs to.void
deregisterValidationListener(ViewValidationListener listener)
Deregisters the given listener.void
deregisterValidationUpdateListener(ValidationUpdateListener listener)
De-register a listener for incremental validation updates.void
dispose()
Dispose.int
getPriority()
Returns the priority for this view service.protected ViewSubstitutionLabelProviderFactory
getSubstitutionLabelProviderFactory()
Returns aViewSubstitutionLabelProviderFactory
, if any is registered.void
instantiate(ViewModelContext context)
Instantiate the view service.void
notifyListeners()
Notifies all listeners.void
registerValidationListener(ViewValidationListener listener)
Registers a listener that will receiveDiagnostic
s with severity higher thanDiagnostic#OK
.void
registerValidationUpdateListener(ValidationUpdateListener listener)
Register a listener for incremental validation updates.void
removeValidationProvider(ValidationProvider validationProvider)
Removes a validation provider from the list of known validation providers.void
removeValidationProvider(ValidationProvider validationProvider, boolean revalidate)
Removes a validation provider from the list of known validation providers.void
validate(java.lang.Iterable<? extends org.eclipse.emf.ecore.EObject> objects)
Validate theobjects
provided by an iterable.void
validate(java.util.Collection<org.eclipse.emf.ecore.EObject> eObjects)
Validates all given eObjects.void
validate(org.eclipse.emf.ecore.EObject eObject)
Validate the given eObject.protected void
warn(java.lang.String messageKey, java.lang.Object... arguments)
Issue a warning composed of the indicated localized string with positionalarguments
.
-
-
-
Method Detail
-
instantiate
public void instantiate(ViewModelContext context)
Description copied from interface:ViewModelService
Instantiate the view service.- Specified by:
instantiate
in interfaceViewModelService
- Parameters:
context
- theViewModelContext
-
dispose
public void dispose()
Description copied from interface:ViewModelService
Dispose.- Specified by:
dispose
in interfaceViewModelService
-
getPriority
public int getPriority()
Description copied from interface:ViewModelService
Returns the priority for this view service.- Specified by:
getPriority
in interfaceViewModelService
- Returns:
- the priority
-
validate
public void validate(java.lang.Iterable<? extends org.eclipse.emf.ecore.EObject> objects)
Description copied from interface:ValidationService
Validate theobjects
provided by an iterable.- Specified by:
validate
in interfaceValidationService
- Parameters:
objects
- the iterable from which to obtain objects to validate
-
validate
public void validate(java.util.Collection<org.eclipse.emf.ecore.EObject> eObjects)
Description copied from interface:ValidationService
Validates all given eObjects.- Specified by:
validate
in interfaceValidationService
- Parameters:
eObjects
- the eObjects to validate
-
validate
public void validate(org.eclipse.emf.ecore.EObject eObject)
Validate the given eObject.- Parameters:
eObject
- the eObject to validate
-
notifyListeners
public void notifyListeners()
Notifies all listeners.
-
addValidationProvider
public void addValidationProvider(ValidationProvider validationProvider)
Description copied from interface:ValidationService
Adds a validation provider to the list of known validation providers. The domain model will be revalidated after the provider has been added.- Specified by:
addValidationProvider
in interfaceValidationService
- Parameters:
validationProvider
- theValidationProvider
to add
-
addValidationProvider
public void addValidationProvider(ValidationProvider validationProvider, boolean revalidate)
Description copied from interface:ValidationService
Adds a validation provider to the list of known validation providers.- Specified by:
addValidationProvider
in interfaceValidationService
- Parameters:
validationProvider
- theValidationProvider
to addrevalidate
- whether to revalidate the domain model after the provider has been added
-
removeValidationProvider
public void removeValidationProvider(ValidationProvider validationProvider)
Description copied from interface:ValidationService
Removes a validation provider from the list of known validation providers.- Specified by:
removeValidationProvider
in interfaceValidationService
- Parameters:
validationProvider
- theValidationProvider
to remove
-
removeValidationProvider
public void removeValidationProvider(ValidationProvider validationProvider, boolean revalidate)
Description copied from interface:ValidationService
Removes a validation provider from the list of known validation providers. The domain model will be revalidated after the provider has been removed- Specified by:
removeValidationProvider
in interfaceValidationService
- Parameters:
validationProvider
- theValidationProvider
to removerevalidate
- whether to revalidate the domain model after the provider has been removed
-
registerValidationListener
public void registerValidationListener(ViewValidationListener listener)
Description copied from interface:ValidationService
Registers a listener that will receiveDiagnostic
s with severity higher thanDiagnostic#OK
. After registration the listener'sViewValidationListener.onNewValidation(java.util.Set)
will be called with current results.- Specified by:
registerValidationListener
in interfaceValidationService
- Parameters:
listener
- the listener to register
-
deregisterValidationListener
public void deregisterValidationListener(ViewValidationListener listener)
Description copied from interface:ValidationService
Deregisters the given listener.- Specified by:
deregisterValidationListener
in interfaceValidationService
- Parameters:
listener
- the listener to deregister
-
childViewModelContextAdded
public void childViewModelContextAdded(ViewModelContext childContext)
Description copied from interface:GlobalViewModelService
This method is called whenever a newViewModelContext
is added as a child context to the rootViewModelContext
thisGlobalViewModelService
belongs to.- Specified by:
childViewModelContextAdded
in interfaceGlobalViewModelService
- Parameters:
childContext
- TheViewModelContext
that was added.
-
getSubstitutionLabelProviderFactory
protected ViewSubstitutionLabelProviderFactory getSubstitutionLabelProviderFactory()
Returns aViewSubstitutionLabelProviderFactory
, if any is registered.- Returns:
- an instance of a
ViewSubstitutionLabelProviderFactory
, if any is available,null
otherwise
-
warn
protected void warn(java.lang.String messageKey, java.lang.Object... arguments)
Issue a warning composed of the indicated localized string with positionalarguments
.- Parameters:
messageKey
- key to look up in the host bundle's localizationsarguments
- zero-indexed arguments to substitute, if any, in the string
-
registerValidationUpdateListener
public void registerValidationUpdateListener(ValidationUpdateListener listener)
Description copied from interface:IncrementalValidationService
Register a listener for incremental validation updates.- Specified by:
registerValidationUpdateListener
in interfaceIncrementalValidationService
- Parameters:
listener
- the incremental validation listener- Since:
- 1.22
-
deregisterValidationUpdateListener
public void deregisterValidationUpdateListener(ValidationUpdateListener listener)
Description copied from interface:IncrementalValidationService
De-register a listener for incremental validation updates.- Specified by:
deregisterValidationUpdateListener
in interfaceIncrementalValidationService
- Parameters:
listener
- the incremental validation listener- Since:
- 1.22
-
-