com.atlassian.confluence.user
Class DefaultSignupManager

java.lang.Object
  extended by com.atlassian.confluence.user.DefaultSignupManager
All Implemented Interfaces:
SignupManager

public class DefaultSignupManager
extends java.lang.Object
implements SignupManager

Handles easy-user creation in its myriad forms.

Since:
v4.1

Field Summary
static java.lang.String NOTIFY_ON_SIGNUP_TOKEN
           
static java.lang.String PREVIOUS_SIGNUP_TOKEN
           
static java.lang.String SIGNUP_TOKEN
           
 
Constructor Summary
DefaultSignupManager(com.atlassian.bandana.BandanaManager bandanaManager, com.atlassian.security.random.SecureTokenGenerator secureTokenGenerator, UserAccessor userAccessor, UserVerificationTokenManager userVerificationTokenManager, com.atlassian.crowd.embedded.api.CrowdService crowdService, SettingsManager settingsManager, com.atlassian.renderer.WikiStyleRenderer wikiStyleRenderer, EmailService notificationsService, NotificationsSender notificationsSender, com.atlassian.event.api.EventPublisher eventPublisher, UserChecker userChecker, PersonalInformationManager personalInformationManager, com.atlassian.core.task.MultiQueueTaskManager taskManager, I18NBeanFactory i18NBeanFactory, DataSourceFactory dataSourceFactory)
           
 
Method Summary
 boolean canSignUpWith(java.lang.String token)
          Return true if the given token is valid for a user to self-sign-up.
 java.lang.String createUserPendingConfirmation(com.atlassian.user.User user, java.lang.String password)
          Creates a new user and marks her disabled pending her email confirmation?
 boolean doesUserHaveOutdatedSignupToken(com.atlassian.user.User user)
           
 void enableConfirmedUser(com.atlassian.user.User user)
          Enable previously disabled user who signed up and confirmed her email.
 java.lang.String getRelativeSignupURL()
           
 java.lang.String getRestrictedDomains()
          Returns comma separated list of domains.
 java.lang.String getSignUpToken()
          Gets the current sign-up token, or creates a new one and returns it.
 java.lang.String getSignupURL()
           
 boolean isDomainRestrictedSignupEnabled()
           
 boolean isEmailOnRestrictedDomain(java.lang.String email)
          Checks if the given email address is on one of the configured restricted domains.
 boolean isEmailSentOnInviteSignUp()
           
 boolean isPendingConfirmation(com.atlassian.user.User user)
          Is given user tried to sign up but hasn't confirmed her email yet?
 boolean isPublicSignupPermitted()
          Returns true if users can sign themselves for this instance.
 boolean isTokenForUserValid(com.atlassian.user.User user, java.lang.String token)
           
 java.lang.String refreshAndGetToken()
          Creates a new sign-up token and returns it.
 java.lang.String restorePreviousToken()
          Restore the previous private-signup token and returns it.
 void sendConfirmationEmail(java.lang.String token, com.atlassian.user.User user)
          Sends a confirmation email to the given new user.
 NotificationSendResult sendInvites(SendUserInviteEvent event)
          Send invitation emails with a message to a list of email addresses.
 void sendWelcomeEmail(ConfluenceUser user)
          Sends a welcome email to the given new user.
 void setDomainRestrictedSignupMode(java.lang.String allowedDomains)
          Set the domains that user's email address should belong to to be able to sign up.
 void setEmailSentOnInviteSignUp(boolean notify)
           
 void setPrivateSignupMode()
           
 void setPublicSignupMode()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SIGNUP_TOKEN

public static final java.lang.String SIGNUP_TOKEN
See Also:
Constant Field Values

PREVIOUS_SIGNUP_TOKEN

public static final java.lang.String PREVIOUS_SIGNUP_TOKEN
See Also:
Constant Field Values

NOTIFY_ON_SIGNUP_TOKEN

public static final java.lang.String NOTIFY_ON_SIGNUP_TOKEN
See Also:
Constant Field Values
Constructor Detail

DefaultSignupManager

public DefaultSignupManager(com.atlassian.bandana.BandanaManager bandanaManager,
                            com.atlassian.security.random.SecureTokenGenerator secureTokenGenerator,
                            UserAccessor userAccessor,
                            UserVerificationTokenManager userVerificationTokenManager,
                            com.atlassian.crowd.embedded.api.CrowdService crowdService,
                            SettingsManager settingsManager,
                            com.atlassian.renderer.WikiStyleRenderer wikiStyleRenderer,
                            EmailService notificationsService,
                            NotificationsSender notificationsSender,
                            com.atlassian.event.api.EventPublisher eventPublisher,
                            UserChecker userChecker,
                            PersonalInformationManager personalInformationManager,
                            com.atlassian.core.task.MultiQueueTaskManager taskManager,
                            I18NBeanFactory i18NBeanFactory,
                            DataSourceFactory dataSourceFactory)
Method Detail

refreshAndGetToken

public java.lang.String refreshAndGetToken()
Description copied from interface: SignupManager
Creates a new sign-up token and returns it. This invalidates the previous token.

Specified by:
refreshAndGetToken in interface SignupManager
Returns:
a random sign-up token

canSignUpWith

public boolean canSignUpWith(java.lang.String token)
Description copied from interface: SignupManager
Return true if the given token is valid for a user to self-sign-up.

Specified by:
canSignUpWith in interface SignupManager
Parameters:
token - a sign-up token from a URL given to an invited user

isEmailSentOnInviteSignUp

public boolean isEmailSentOnInviteSignUp()
Specified by:
isEmailSentOnInviteSignUp in interface SignupManager
Returns:
true if notification emails should be sent to admins when a user signs themselves up.

isPublicSignupPermitted

public boolean isPublicSignupPermitted()
Description copied from interface: SignupManager
Returns true if users can sign themselves for this instance.

Specified by:
isPublicSignupPermitted in interface SignupManager

getRelativeSignupURL

public java.lang.String getRelativeSignupURL()
Specified by:
getRelativeSignupURL in interface SignupManager

getSignupURL

public java.lang.String getSignupURL()
Specified by:
getSignupURL in interface SignupManager

setEmailSentOnInviteSignUp

public void setEmailSentOnInviteSignUp(boolean notify)
Specified by:
setEmailSentOnInviteSignUp in interface SignupManager
Parameters:
notify - true if notification emails should be sent to admins when a user signs themselves up, false if not

restorePreviousToken

public java.lang.String restorePreviousToken()
Description copied from interface: SignupManager
Restore the previous private-signup token and returns it.

Specified by:
restorePreviousToken in interface SignupManager

getSignUpToken

public java.lang.String getSignUpToken()
Description copied from interface: SignupManager
Gets the current sign-up token, or creates a new one and returns it.

Specified by:
getSignUpToken in interface SignupManager
Returns:
a random sign-up token

sendInvites

public NotificationSendResult sendInvites(SendUserInviteEvent event)
Description copied from interface: SignupManager
Send invitation emails with a message to a list of email addresses.

Specified by:
sendInvites in interface SignupManager
Returns:
the number of emails sent

sendConfirmationEmail

public void sendConfirmationEmail(java.lang.String token,
                                  com.atlassian.user.User user)
Description copied from interface: SignupManager
Sends a confirmation email to the given new user.

Specified by:
sendConfirmationEmail in interface SignupManager
Parameters:
token - the token that the user must validate against
user - the new user

sendWelcomeEmail

public void sendWelcomeEmail(ConfluenceUser user)
Description copied from interface: SignupManager
Sends a welcome email to the given new user.

Specified by:
sendWelcomeEmail in interface SignupManager
Parameters:
user - the new user

setPublicSignupMode

public void setPublicSignupMode()
Specified by:
setPublicSignupMode in interface SignupManager

setPrivateSignupMode

public void setPrivateSignupMode()
Specified by:
setPrivateSignupMode in interface SignupManager

setDomainRestrictedSignupMode

public void setDomainRestrictedSignupMode(java.lang.String allowedDomains)
Description copied from interface: SignupManager
Set the domains that user's email address should belong to to be able to sign up.

Specified by:
setDomainRestrictedSignupMode in interface SignupManager
Parameters:
allowedDomains - comma separated list of domains

getRestrictedDomains

public java.lang.String getRestrictedDomains()
Description copied from interface: SignupManager
Returns comma separated list of domains. Users with email in those domains are allowed to sign up. Provided domain restricted sign up is enabled.

Specified by:
getRestrictedDomains in interface SignupManager
Returns:
comma separated list of domains

isEmailOnRestrictedDomain

public boolean isEmailOnRestrictedDomain(java.lang.String email)
Description copied from interface: SignupManager
Checks if the given email address is on one of the configured restricted domains.

Specified by:
isEmailOnRestrictedDomain in interface SignupManager
Parameters:
email - the email address. Can be null.
Returns:
true, if the domain name of the email matches one of the restricted domains.

isPendingConfirmation

public boolean isPendingConfirmation(com.atlassian.user.User user)
Description copied from interface: SignupManager
Is given user tried to sign up but hasn't confirmed her email yet?

Specified by:
isPendingConfirmation in interface SignupManager
Returns:
true if the given user tried to sign up but hasn't confirmed her email yet.

isTokenForUserValid

public boolean isTokenForUserValid(com.atlassian.user.User user,
                                   java.lang.String token)
Specified by:
isTokenForUserValid in interface SignupManager
Returns:
true if given token a valid token that was issued when the given user tried to signup

doesUserHaveOutdatedSignupToken

public boolean doesUserHaveOutdatedSignupToken(com.atlassian.user.User user)
Specified by:
doesUserHaveOutdatedSignupToken in interface SignupManager
Returns:
true if a given user has tried to sign up but hasn't confirmed her email within a reasonable time (1 month)

enableConfirmedUser

public void enableConfirmedUser(com.atlassian.user.User user)
                         throws com.atlassian.crowd.exception.runtime.UserNotFoundException,
                                com.atlassian.crowd.exception.runtime.OperationFailedException,
                                com.atlassian.crowd.exception.InvalidUserException,
                                com.atlassian.crowd.exception.OperationNotPermittedException
Description copied from interface: SignupManager
Enable previously disabled user who signed up and confirmed her email.

Specified by:
enableConfirmedUser in interface SignupManager
Throws:
com.atlassian.crowd.exception.runtime.UserNotFoundException
com.atlassian.crowd.exception.runtime.OperationFailedException
com.atlassian.crowd.exception.InvalidUserException
com.atlassian.crowd.exception.OperationNotPermittedException

createUserPendingConfirmation

public java.lang.String createUserPendingConfirmation(com.atlassian.user.User user,
                                                      java.lang.String password)
                                               throws com.atlassian.crowd.exception.runtime.OperationFailedException,
                                                      com.atlassian.crowd.exception.InvalidUserException,
                                                      com.atlassian.crowd.exception.InvalidCredentialException,
                                                      com.atlassian.crowd.exception.OperationNotPermittedException
Description copied from interface: SignupManager
Creates a new user and marks her disabled pending her email confirmation?

Specified by:
createUserPendingConfirmation in interface SignupManager
Parameters:
user - the new user
password - the password for the new user
Returns:
the token that the user must validate against in order to confirm her email
Throws:
com.atlassian.crowd.exception.runtime.OperationFailedException
com.atlassian.crowd.exception.InvalidUserException
com.atlassian.crowd.exception.InvalidCredentialException
com.atlassian.crowd.exception.OperationNotPermittedException

isDomainRestrictedSignupEnabled

public boolean isDomainRestrictedSignupEnabled()
Specified by:
isDomainRestrictedSignupEnabled in interface SignupManager
Returns:
true if sign up is enabled only for some specified domains


Copyright © 2003-2014 Atlassian. All Rights Reserved.