Class DefaultSignupManager

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

public class DefaultSignupManager extends Object implements SignupManager
Handles easy-user creation in its myriad forms.
Since:
4.1
  • Field Details

  • Constructor Details

    • DefaultSignupManager

      public DefaultSignupManager(com.atlassian.bandana.BandanaManager bandanaManager, com.atlassian.security.random.SecureTokenGenerator secureTokenGenerator, 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)
      Since:
      7.17
  • Method Details

    • refreshAndGetToken

      public 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(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 String getRelativeSignupURL()
      Specified by:
      getRelativeSignupURL in interface SignupManager
    • getSignupURL

      public 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 String restorePreviousToken()
      Description copied from interface: SignupManager
      Restore the previous private-signup token and returns it.
      Specified by:
      restorePreviousToken in interface SignupManager
    • getSignUpToken

      public 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(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(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 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(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 their email yet?
      Specified by:
      isPendingConfirmation in interface SignupManager
      Returns:
      true if the given user tried to sign up but hasn't confirmed their email yet.
    • isTokenForUserValid

      public boolean isTokenForUserValid(com.atlassian.user.User user, 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 their 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 their 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 String createUserPendingConfirmation(com.atlassian.user.User user, 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 them disabled pending their 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 their 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