Class AbstractMemberMailNotifierObserver
java.lang.Object
org.ametys.runtime.plugin.component.AbstractLogEnabled
org.ametys.plugins.workspaces.project.notification.AbstractMemberMailNotifierObserver
- All Implemented Interfaces:
AsyncObserver,Observer,LogEnabled,PluginAware,Contextualizable,Serviceable
- Direct Known Subclasses:
RemoveMemberMailManagersNotifierObserver,RemoveMemberMailNotifierObserver,WelcomeMemberMailNotifierObserver
public abstract class AbstractMemberMailNotifierObserver
extends AbstractLogEnabled
implements AsyncObserver, PluginAware, Serviceable, Contextualizable
Abstract observer for sending mail to members
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ContextThe avalon contextprotected GroupManagerGroup managerprotected I18nUtilsThe i18n utilsprotected StringThe name of current pluginprotected PopulationContextHelperPopulation context helperprotected ProjectManagerProject managerprotected ProjectMemberManagerThe project member managerprotected RenderingContextHandlerThe rendering contextprotected AmetysObjectResolverThe Ametys Object resolverprotected SiteManagerSite managerprotected SourceResolverSource Resolverprotected UserManagerUser managerFields inherited from interface org.ametys.core.observation.Observer
MAX_PRIORITY, MIN_PRIORITY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcontextualize(Context context) protected abstract I18nizableTextgetI18nSubject(Event event, Project project) Get theI18nizableTextfor mail subjectprotected StringgetMailBodyURI(Event event, Project project) Returns the URI for HTML mail bodyintgetPriority(Event event) Retrieves the priority to observe this event.
This can be used to process a supported event before others observers.getUsersEmail(List<User> users) Get the list of emails from users, filtering out users with no emailsgetUserToNotify(Event event, Project project) Get email's recipientsvoidObserves an event.voidservice(ServiceManager manager) voidsetPluginInfo(String pluginName, String featureName, String id) Sets the plugin info relative to the current component.
Note : The feature name may be null if the targeted component in declared at plugin level.Methods inherited from class org.ametys.runtime.plugin.component.AbstractLogEnabled
getLogger, setLoggerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.ametys.core.observation.AsyncObserver
parallelizable
-
Field Details
-
_context
The avalon context -
_pluginName
The name of current plugin -
_resolver
The Ametys Object resolver -
_i18nUtils
The i18n utils -
_projectMemberManager
The project member manager -
_projectManager
Project manager -
_siteManager
Site manager -
_populationContextHelper
Population context helper -
_srcResolver
Source Resolver -
_userManager
User manager -
_groupManager
Group manager -
_renderingContextHandler
The rendering context
-
-
Constructor Details
-
AbstractMemberMailNotifierObserver
public AbstractMemberMailNotifierObserver()
-
-
Method Details
-
setPluginInfo
Description copied from interface:PluginAwareSets the plugin info relative to the current component.
Note : The feature name may be null if the targeted component in declared at plugin level.- Specified by:
setPluginInfoin interfacePluginAware- Parameters:
pluginName- Unique identifier for the plugin hosting the extensionfeatureName- Unique feature identifier (unique for a given pluginName)id- Unique identifier of this component
-
contextualize
- Specified by:
contextualizein interfaceContextualizable- Throws:
ContextException
-
service
- Specified by:
servicein interfaceServiceable- Throws:
ServiceException
-
getPriority
Description copied from interface:ObserverRetrieves the priority to observe this event.
This can be used to process a supported event before others observers.- Specified by:
getPriorityin interfaceObserver- Parameters:
event- the event.- Returns:
- the priority where 0 the max priority and Integer.MAX_VALUE the min priority.
-
observe
Description copied from interface:ObserverObserves an event.- Specified by:
observein interfaceObserver- Parameters:
event- the event.transientVars- transientVars passed from one Observer to another when processing a single Event. This may allow optimizations between observers.- Throws:
Exception- if an error occurs. All exceptions will be logged but not propagated, as the observation mechanism should never fail.
-
getUserToNotify
Get email's recipients- Parameters:
event- the eventproject- the project- Returns:
- the recipients
-
getUsersEmail
Get the list of emails from users, filtering out users with no emails- Parameters:
users- The list of users- Returns:
- The list of emails
-
getMailBodyURI
Returns the URI for HTML mail body- Parameters:
event- the eventproject- the project- Returns:
- The URI for HTML mail body
-
getI18nSubject
Get theI18nizableTextfor mail subject- Parameters:
event- the eventproject- the project- Returns:
- the
I18nizableTextfor subject
-