Interface InvitationService
-
- All Known Implementing Classes:
InvitationServiceImpl
public interface InvitationServiceThe 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
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description Invitationaccept(java.lang.String invitationId, java.lang.String ticket)For a Nominated Invitation invitee accepts this invitationvoidacceptNominatedInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String role, java.lang.String inviter)Moderator approves this invitationInvitationapprove(java.lang.String invitationId, java.lang.String reason)Moderator approves this invitationvoidapproveModeratedInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String role, java.lang.String reviewer)Moderator approves this invitationInvitationcancel(java.lang.String invitationId)cancel this requestvoidcancelInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String inviteId, java.lang.String currentInviteId)Inviter cancels this invitationvoiddeleteAuthenticationIfUnused(java.lang.String invitee, java.lang.String currentInviteId)Clean up invitee user account and person node when no longer in use.InvitationgetInvitation(java.lang.String invitationId)get an invitation from its invitation idjava.util.List<java.lang.String>getInvitationServiceWorkflowNames()Get the names of the workflows managed by the invitation service.ModeratedInvitationinviteModerated(java.lang.String inviteeComments, java.lang.String inviteeUserName, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole)Start the invitation process for a ModeratedInvitationNominatedInvitationinviteNominated(java.lang.String inviteeFirstName, java.lang.String inviteeLastName, java.lang.String inviteeEmail, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String acceptUrl, java.lang.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.NominatedInvitationinviteNominated(java.lang.String inviteeFirstName, java.lang.String inviteeLastName, java.lang.String inviteeEmail, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String serverPath, java.lang.String acceptUrl, java.lang.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.NominatedInvitationinviteNominated(java.lang.String inviteeUserName, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String acceptUrl, java.lang.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 parametersNominatedInvitationinviteNominated(java.lang.String inviteeUserName, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String serverPath, java.lang.String acceptUrl, java.lang.String rejectUrl)Start the invitation process for a NominatedInvitation for a user who does not yet have an Alfresco User NamebooleanisSendEmails()java.util.List<Invitation>listPendingInvitationsForInvitee(java.lang.String invitee)list Invitations for a specific personjava.util.List<Invitation>listPendingInvitationsForInvitee(java.lang.String invitee, Invitation.ResourceType resourceType)java.util.List<Invitation>listPendingInvitationsForResource(Invitation.ResourceType resourceType, java.lang.String resourceName)list Invitations for a specific resourceInvitationreject(java.lang.String invitationId, java.lang.String reason)User or moderator rejects this requestvoidrejectModeratedInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String role, java.lang.String reviewer, java.lang.String resourceType, java.lang.String reviewComments)Moderator rejects this invitationjava.util.List<Invitation>searchInvitation(InvitationSearchCriteria criteria)Deprecated.java.util.List<Invitation>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(java.lang.String invitationId, java.lang.String emailTemplateXpath, java.lang.String emailSubjectKey, java.util.Map<java.lang.String,java.lang.Object> variables)Sends the site join request notification email using the given template, subject localization key, and variables.voidsendNominatedInvitation(java.lang.String inviteId, java.lang.String emailTemplateXpath, java.lang.String emailSubjectKey, java.util.Map<java.lang.String,java.lang.Object> executionVariables)Sends the invite email using the given template, subject localization key, and variables.voidsendNominatedInvitation(java.lang.String inviteId, java.util.Map<java.lang.String,java.lang.Object> executionVariables)Deprecated.ModeratedInvitationupdateModeratedInvitation(java.lang.String inviteeId, java.lang.String siteShortName, java.lang.String inviteeComments)Update the invitee comments for an existing moderated invitation
-
-
-
Method Detail
-
getInvitationServiceWorkflowNames
@NotAuditable java.util.List<java.lang.String> 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(java.lang.String inviteeUserName, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String acceptUrl, java.lang.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(java.lang.String inviteeFirstName, java.lang.String inviteeLastName, java.lang.String inviteeEmail, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String acceptUrl, java.lang.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(java.lang.String inviteeUserName, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String serverPath, java.lang.String acceptUrl, java.lang.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(java.lang.String inviteeFirstName, java.lang.String inviteeLastName, java.lang.String inviteeEmail, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.String inviteeRole, java.lang.String serverPath, java.lang.String acceptUrl, java.lang.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(java.lang.String inviteeComments, java.lang.String inviteeUserName, Invitation.ResourceType resourceType, java.lang.String resourceName, java.lang.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 ?
-
updateModeratedInvitation
@Auditable(parameters={"inviteeId","siteShortName","inviteeComments"}) ModeratedInvitation updateModeratedInvitation(java.lang.String inviteeId, java.lang.String siteShortName, java.lang.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(java.lang.String invitationId, java.lang.String ticket)For a Nominated Invitation invitee accepts this invitation- Parameters:
request-ticket-- Returns:
- the invitation
-
approve
@Auditable(parameters={"invitationId","reason"}) Invitation approve(java.lang.String invitationId, java.lang.String reason)Moderator approves this invitation- Parameters:
invitationId- the request to approvereason- - comments about the acceptance
-
reject
@Auditable(parameters={"invitationId","reason"}) Invitation reject(java.lang.String invitationId, java.lang.String reason)User or moderator rejects this request- Parameters:
invitationId-reason-
-
acceptNominatedInvitation
@Auditable(parameters={"siteName","Invitee","role","inviter"}) void acceptNominatedInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String role, java.lang.String inviter)Moderator approves this invitation- Parameters:
siteName-invitee-role-inviter-
-
approveModeratedInvitation
@Auditable(parameters={"siteName","Invitee","role","reviewer"}) void approveModeratedInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String role, java.lang.String reviewer)Moderator approves this invitation- Parameters:
siteName-invitee-role-reviewer-
-
rejectModeratedInvitation
@Auditable(parameters={"siteName","Invitee","role","reviewer","resourceType","reviewComments"}) void rejectModeratedInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String role, java.lang.String reviewer, java.lang.String resourceType, java.lang.String reviewComments)Moderator rejects this invitation- Parameters:
siteName-invitee-role-reviewer-resourceType-reviewComments-
-
cancelInvitation
@Auditable(parameters={"siteName","Invitee","inviteId","currentInviteId"}) void cancelInvitation(java.lang.String siteName, java.lang.String invitee, java.lang.String inviteId, java.lang.String currentInviteId)Inviter cancels this invitation- Parameters:
siteName-invitee-inviteId-currentInviteId-
-
cancel
@Auditable(parameters="invitationId") Invitation cancel(java.lang.String invitationId)
cancel this request
-
deleteAuthenticationIfUnused
@Auditable(parameters={"Invitee","currentInviteId"}) void deleteAuthenticationIfUnused(java.lang.String invitee, java.lang.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(java.lang.String inviteId, java.util.Map<java.lang.String,java.lang.Object> executionVariables)Deprecated.Implemented for backwards compatibility- Parameters:
inviteId-executionVariables-
-
sendNominatedInvitation
@Auditable(parameters="inviteId") void sendNominatedInvitation(java.lang.String inviteId, java.lang.String emailTemplateXpath, java.lang.String emailSubjectKey, java.util.Map<java.lang.String,java.lang.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
@NotAuditable Invitation getInvitation(java.lang.String invitationId)
get an invitation from its invitation id- Parameters:
invitationId- ;
-
listPendingInvitationsForInvitee
@NotAuditable java.util.List<Invitation> listPendingInvitationsForInvitee(java.lang.String invitee)
list Invitations for a specific person
-
listPendingInvitationsForInvitee
@NotAuditable java.util.List<Invitation> listPendingInvitationsForInvitee(java.lang.String invitee, Invitation.ResourceType resourceType)
-
listPendingInvitationsForResource
@NotAuditable java.util.List<Invitation> listPendingInvitationsForResource(Invitation.ResourceType resourceType, java.lang.String resourceName)
list Invitations for a specific resource- Parameters:
resourceType-resourceName-
-
searchInvitation
@NotAuditable java.util.List<Invitation> searchInvitation(InvitationSearchCriteria criteria)
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
@NotAuditable java.util.List<Invitation> 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 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
@NotAuditable boolean isSendEmails()
- Returns:
- true if emails are sent on invite.
-
sendModeratedInvitation
@Auditable(parameters="inviteId") void sendModeratedInvitation(java.lang.String invitationId, java.lang.String emailTemplateXpath, java.lang.String emailSubjectKey, java.util.Map<java.lang.String,java.lang.Object> variables)Sends the site join request notification email using the given template, subject localization key, and variables.- Parameters:
invitationId-emailTemplateXpath-emailSubjectKey-variables-
-
-