Interface InvitationService
- All Known Implementing Classes:
InvitationServiceImpl
public interface InvitationService
The invitation service provides the ability to invite people to resources. For example adding a user to a shared web site. It manages the relationship between person, resource
and requestType and may also pass along information such as who is to approve or the expected role of the user.
- Author:
- mrogers
-
Method Summary
Modifier and TypeMethodDescriptionFor a Nominated Invitation invitee accepts this invitationvoidacceptNominatedInvitation(String siteName, String invitee, String role, String inviter) Moderator approves this invitationModerator approves this invitationvoidapproveModeratedInvitation(String siteName, String invitee, String role, String reviewer) Moderator approves this invitationcancel this requestvoidcancelInvitation(String siteName, String invitee, String inviteId, String currentInviteId) Inviter cancels this invitationvoiddeleteAuthenticationIfUnused(String invitee, String currentInviteId) Clean up invitee user account and person node when no longer in use.getInvitation(String invitationId) get an invitation from its invitation idGet the names of the workflows managed by the invitation service.inviteModerated(String inviteeComments, String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole) Start the invitation process for a ModeratedInvitationinviteModerated(String inviteeComments, String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String clientName) Start the invitation process for a ModeratedInvitationinviteNominated(String inviteeFirstName, String inviteeLastName, String inviteeEmail, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User NameA new user name will be generated as part of the invitation process.inviteNominated(String inviteeFirstName, String inviteeLastName, String inviteeEmail, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String serverPath, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User NameA new user name will be generated as part of the invitation process.inviteNominated(String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User Name The server path is calculated based on the sysAdmin parametersinviteNominated(String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String serverPath, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User NamebooleanlistPendingInvitationsForInvitee(String invitee) list Invitations for a specific personlistPendingInvitationsForInvitee(String invitee, Invitation.ResourceType resourceType) listPendingInvitationsForResource(Invitation.ResourceType resourceType, String resourceName) list Invitations for a specific resourceUser or moderator rejects this requestvoidrejectModeratedInvitation(String siteName, String invitee, String role, String reviewer, String resourceType, String reviewComments) Moderator rejects this invitationsearchInvitation(InvitationSearchCriteria criteria) Deprecated.searchInvitation(InvitationSearchCriteria criteria, int limit) This is the general search invitation method returningInvitationThis is the recommended method to use for searching invitations; Consider that the performance of the method will be greatly influenced by the limit specifiedvoidsendModeratedInvitation(String invitationId, String emailTemplateXpath, String emailSubjectKey, Map<String, Object> variables) Sends the site join request notification email using the given template, subject localization key, and variables.voidsendNominatedInvitation(String inviteId, String emailTemplateXpath, String emailSubjectKey, Map<String, Object> executionVariables) Sends the invite email using the given template, subject localization key, and variables.voidsendNominatedInvitation(String inviteId, Map<String, Object> executionVariables) Deprecated.updateModeratedInvitation(String inviteeId, String siteShortName, String inviteeComments) Update the invitee comments for an existing moderated invitation
-
Method Details
-
getInvitationServiceWorkflowNames
Get the names of the workflows managed by the invitation service.- Returns:
- the names of the workkflows managed by the invitation service.
-
inviteNominated
@Auditable(parameters={"inviteeUserName","resourceType","resourceName","inviteeRole","acceptUrl","rejectUrl"}) NominatedInvitation inviteNominated(String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User Name The server path is calculated based on the sysAdmin parameters- Parameters:
inviteeUserName- Alfresco user name of who should be invitedResourceType- resourceTyperesourceName-inviteeRole-acceptUrl-rejectUrl-- Returns:
- the nominated invitation which will contain the invitationId and ticket which will uniqely identify this invitation for the rest of the workflow.
- Throws:
InvitationExceptionInvitationExceptionUserErrorInvitationExceptionForbidden
-
inviteNominated
@Auditable(parameters={"inviteeFirstName","inviteeLastName","inviteeEmail","resourceType","resourceName","inviteeRole","acceptUrl","rejectUrl"}) NominatedInvitation inviteNominated(String inviteeFirstName, String inviteeLastName, String inviteeEmail, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User NameA new user name will be generated as part of the invitation process. The server path is calculated based on the sysAdmin parameters- Parameters:
inviteeFirstName-inviteeLastName-inviteeEmail-Invitation- .ResourceType resourceTyperesourceName-inviteeRole-acceptUrl-rejectUrl-- Returns:
- the nominated invitation which will contain the invitationId and ticket which will uniquely identify this invitation.
- Throws:
InvitationExceptionInvitationExceptionUserErrorInvitationExceptionForbidden
-
inviteNominated
@Auditable(parameters={"inviteeUserName","resourceType","resourceName","inviteeRole","serverPath","acceptUrl","rejectUrl"}) NominatedInvitation inviteNominated(String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String serverPath, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User Name- Parameters:
inviteeUserName- Alfresco user name of who should be invitedResourceType- resourceTyperesourceName-inviteeRole-serverPath-acceptUrl-rejectUrl-- Returns:
- the nominated invitation which will contain the invitationId and ticket which will uniqely identify this invitation for the rest of the workflow.
- Throws:
InvitationExceptionInvitationExceptionUserErrorInvitationExceptionForbidden
-
inviteNominated
@Auditable(parameters={"inviteeFirstName","inviteeLastName","inviteeEmail","resourceType","resourceName","inviteeRole","serverPath","acceptUrl","rejectUrl"}) NominatedInvitation inviteNominated(String inviteeFirstName, String inviteeLastName, String inviteeEmail, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String serverPath, String acceptUrl, String rejectUrl) Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User NameA new user name will be generated as part of the invitation process.- Parameters:
inviteeFirstName-inviteeLastName-inviteeEmail- StringresourceType- Invitation.ResourceTyperesourceName- StringinviteeRole-serverPath-acceptUrl-rejectUrl- String- Returns:
- the nominated invitation which will contain the invitationId and ticket which will uniquely identify this invitation.
- Throws:
InvitationExceptionInvitationExceptionUserErrorInvitationExceptionForbidden
-
inviteModerated
@Auditable(parameters={"inviteeComments","inviteeUserName","resourceType","resourceName","inviteeRole"}) ModeratedInvitation inviteModerated(String inviteeComments, String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole) Start the invitation process for a ModeratedInvitation- Parameters:
inviteeUserName- who is to be invitedInvitation- .ResourceType resourceType what resource type ?resourceName- which resourceinviteeRole- which role ?
-
inviteModerated
@Auditable(parameters={"inviteeComments","inviteeUserName","resourceType","resourceName","inviteeRole","clientName"}) ModeratedInvitation inviteModerated(String inviteeComments, String inviteeUserName, Invitation.ResourceType resourceType, String resourceName, String inviteeRole, String clientName) Start the invitation process for a ModeratedInvitation- Parameters:
inviteeUserName- who is to be invitedInvitation- .ResourceType resourceType what resource type ?resourceName- which resourceinviteeRole- which role ?clientName- which client
-
updateModeratedInvitation
@Auditable(parameters={"inviteeId","siteShortName","inviteeComments"}) ModeratedInvitation updateModeratedInvitation(String inviteeId, String siteShortName, String inviteeComments) Update the invitee comments for an existing moderated invitation- Parameters:
inviteeId-siteShortName-inviteeComments-- Returns:
- the invitation
-
accept
@Auditable(parameters={"invitationId","reason"}) Invitation accept(String invitationId, String ticket) For a Nominated Invitation invitee accepts this invitation- Parameters:
request-ticket-- Returns:
- the invitation
-
approve
@Auditable(parameters={"invitationId","reason"}) Invitation approve(String invitationId, String reason) Moderator approves this invitation- Parameters:
invitationId- the request to approvereason- - comments about the acceptance
-
reject
@Auditable(parameters={"invitationId","reason"}) Invitation reject(String invitationId, String reason) User or moderator rejects this request- Parameters:
invitationId-reason-
-
acceptNominatedInvitation
@Auditable(parameters={"siteName","Invitee","role","inviter"}) void acceptNominatedInvitation(String siteName, String invitee, String role, String inviter) Moderator approves this invitation- Parameters:
siteName-invitee-role-inviter-
-
approveModeratedInvitation
@Auditable(parameters={"siteName","Invitee","role","reviewer"}) void approveModeratedInvitation(String siteName, String invitee, String role, String reviewer) Moderator approves this invitation- Parameters:
siteName-invitee-role-reviewer-
-
rejectModeratedInvitation
@Auditable(parameters={"siteName","Invitee","role","reviewer","resourceType","reviewComments"}) void rejectModeratedInvitation(String siteName, String invitee, String role, String reviewer, String resourceType, String reviewComments) Moderator rejects this invitation- Parameters:
siteName-invitee-role-reviewer-resourceType-reviewComments-
-
cancelInvitation
@Auditable(parameters={"siteName","Invitee","inviteId","currentInviteId"}) void cancelInvitation(String siteName, String invitee, String inviteId, String currentInviteId) Inviter cancels this invitation- Parameters:
siteName-invitee-inviteId-currentInviteId-
-
cancel
cancel this request -
deleteAuthenticationIfUnused
@Auditable(parameters={"Invitee","currentInviteId"}) void deleteAuthenticationIfUnused(String invitee, String currentInviteId) Clean up invitee user account and person node when no longer in use. They are deemed to no longer be in use when the invitee user account is still disabled and there are no outstanding pending invites for that invitee.- Parameters:
invitee-currentInviteId-
-
sendNominatedInvitation
@Auditable(parameters="inviteId") void sendNominatedInvitation(String inviteId, Map<String, Object> executionVariables) Deprecated.Implemented for backwards compatibility- Parameters:
inviteId-executionVariables-
-
sendNominatedInvitation
@Auditable(parameters="inviteId") void sendNominatedInvitation(String inviteId, String emailTemplateXpath, String emailSubjectKey, Map<String, Object> executionVariables) Sends the invite email using the given template, subject localization key, and variables.- Parameters:
inviteId-emailTemplateXpath- the XPath to the email template in the repositoryemailSubjectKey- the subject of the emailexecutionVariables- the variables used to populate the email
-
getInvitation
get an invitation from its invitation id- Parameters:
invitationId- ;
-
listPendingInvitationsForInvitee
list Invitations for a specific person -
listPendingInvitationsForInvitee
@NotAuditable List<Invitation> listPendingInvitationsForInvitee(String invitee, Invitation.ResourceType resourceType) -
listPendingInvitationsForResource
@NotAuditable List<Invitation> listPendingInvitationsForResource(Invitation.ResourceType resourceType, String resourceName) list Invitations for a specific resource- Parameters:
resourceType-resourceName-
-
searchInvitation
Deprecated.This is the general search invitation method returningInvitationThis method has a hardcoded limit of 200 invitations to return. It has been deprecated and it is recommended to use the overloaded version for which you can specify an appropriate limit depending on the needs- Parameters:
criteria- InvitationSearchCriteria search criteria- Returns:
- the list of invitations
-
searchInvitation
This is the general search invitation method returningInvitationThis is the recommended method to use for searching invitations; Consider that the performance of the method will be greatly influenced by the limit specified- Parameters:
criteria- search criterialimit- maximum number of IDs to return. If less than 1, there is no limit.- Returns:
- the list of invitations
-
isSendEmails
- Returns:
- true if emails are sent on invite.
-
sendModeratedInvitation
@Auditable(parameters="inviteId") void sendModeratedInvitation(String invitationId, String emailTemplateXpath, String emailSubjectKey, Map<String, Object> variables) Sends the site join request notification email using the given template, subject localization key, and variables.- Parameters:
invitationId-emailTemplateXpath-emailSubjectKey-variables-
-