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
Modifier and TypeFieldDescriptionprotected Context
The avalon contextprotected GroupManager
Group managerprotected I18nUtils
The i18n utilsprotected String
The name of current pluginprotected PopulationContextHelper
Population context helperprotected ProjectManager
Project managerprotected ProjectMemberManager
The project member managerprotected RenderingContextHandler
The rendering contextprotected AmetysObjectResolver
The Ametys Object resolverprotected SiteManager
Site managerprotected SourceResolver
Source Resolverprotected UserManager
User managerFields inherited from interface org.ametys.core.observation.Observer
MAX_PRIORITY, MIN_PRIORITY
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
contextualize
(Context context) protected abstract I18nizableText
getI18nSubject
(Event event, Project project) Get theI18nizableText
for mail subjectprotected String
getMailBodyURI
(Event event, Project project) Returns the URI for HTML mail bodyint
getPriority
(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 recipientsvoid
Observes an event.void
service
(ServiceManager manager) void
setPluginInfo
(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, setLogger
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods 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:PluginAware
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.- Specified by:
setPluginInfo
in 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:
contextualize
in interfaceContextualizable
- Throws:
ContextException
-
service
- Specified by:
service
in interfaceServiceable
- Throws:
ServiceException
-
getPriority
Description copied from interface:Observer
Retrieves the priority to observe this event.
This can be used to process a supported event before others observers.- Specified by:
getPriority
in 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:Observer
Observes an event.- Specified by:
observe
in 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 theI18nizableText
for mail subject- Parameters:
event
- the eventproject
- the project- Returns:
- the
I18nizableText
for subject
-