139         RealmModel realm = session.getContext().getRealm();
   140         UriInfo uriInfo = session.getContext().getUri();
   142         int validityInSecs = realm.getActionTokenGeneratedByUserLifespan(VerifyEmailActionToken.TOKEN_TYPE);
   143         int absoluteExpirationInSecs = Time.currentTime() + validityInSecs;
   145         String authSessionEncodedId = AuthenticationSessionCompoundId.fromAuthSession(authSession).getEncodedId();
   146         VerifyEmailActionToken token = 
new VerifyEmailActionToken(user.getId(), absoluteExpirationInSecs, authSessionEncodedId, user.getEmail(), authSession.getClient().getClientId());
   147         UriBuilder builder = Urls.actionTokenBuilder(uriInfo.getBaseUri(), token.serialize(session, realm, uriInfo),
   148                 authSession.getClient().getClientId(), authSession.getTabId());
   149         String link = builder.build(realm.getName()).toString();
   150         long expirationInMinutes = TimeUnit.SECONDS.toMinutes(validityInSecs);
   154               .getProvider(EmailTemplateProvider.class)
   155               .setAuthenticationSession(authSession)
   158               .sendVerifyEmail(link, expirationInMinutes);
   160         } 
catch (EmailException e) {
   161             logger.error(
"Failed to send verification email", e);
   162             event.error(Errors.EMAIL_SEND_FAILED);
   165         return forms.createResponse(UserModel.RequiredAction.VERIFY_EMAIL);
 static final Logger logger
Definition: VerifyEmail.java:48