@Service(value="blCustomerService") public class CustomerServiceImpl extends Object implements CustomerService
Modifier and Type | Field and Description |
---|---|
protected EmailInfo |
changePasswordEmailInfo |
protected CustomerDao |
customerDao |
protected CustomerForgotPasswordSecurityTokenDao |
customerForgotPasswordSecurityTokenDao |
protected EmailService |
emailService |
protected EmailInfo |
forgotPasswordEmailInfo |
protected EmailInfo |
forgotUsernameEmailInfo |
protected IdGenerationService |
idGenerationService |
protected List<PasswordUpdatedHandler> |
passwordChangedHandlers |
protected org.springframework.security.authentication.encoding.PasswordEncoder |
passwordEncoder |
protected List<PasswordUpdatedHandler> |
passwordResetHandlers |
protected int |
passwordTokenLength |
protected List<PostRegistrationObserver> |
postRegisterListeners |
protected EmailInfo |
registrationEmailInfo |
protected RoleDao |
roleDao |
protected String |
salt
Optional password salt to be used with the passwordEncoder
|
protected int |
tokenExpiredMinutes |
Constructor and Description |
---|
CustomerServiceImpl() |
Modifier and Type | Method and Description |
---|---|
void |
addPostRegisterListener(PostRegistrationObserver postRegisterListeners) |
Customer |
changePassword(PasswordChange passwordChange) |
protected void |
checkCustomer(Customer customer,
GenericResponse response) |
protected void |
checkPassword(String password,
String confirmPassword,
GenericResponse response) |
GenericResponse |
checkPasswordResetToken(String token)
Verifies that the passed in token is valid.
|
Customer |
createCustomer() |
Customer |
createCustomerFromId(Long customerId)
Returns a
Customer by first looking in the database, otherwise creating a new non-persisted Customer |
Customer |
createNewCustomer()
Returns a non-persisted
Customer . |
protected void |
createRegisteredCustomerRoles(Customer customer)
Subclassed implementations can assign unique roles for various customer types
|
Long |
findNextCustomerId()
Allow customers to call from subclassed service.
|
EmailInfo |
getChangePasswordEmailInfo() |
EmailInfo |
getForgotPasswordEmailInfo() |
EmailInfo |
getForgotUsernameEmailInfo() |
List<PasswordUpdatedHandler> |
getPasswordChangedHandlers() |
List<PasswordUpdatedHandler> |
getPasswordResetHandlers() |
int |
getPasswordTokenLength() |
EmailInfo |
getRegistrationEmailInfo() |
String |
getSalt() |
String |
getSalt(Customer customer)
Optionally provide a salt based on a customer.
|
int |
getTokenExpiredMinutes() |
protected boolean |
isTokenExpired(CustomerForgotPasswordSecurityToken fpst) |
protected void |
notifyPostRegisterListeners(Customer customer) |
Customer |
readCustomerByEmail(String emailAddress) |
Customer |
readCustomerById(Long id) |
Customer |
readCustomerByUsername(String username) |
Customer |
registerCustomer(Customer customer,
String password,
String passwordConfirm) |
void |
removePostRegisterListener(PostRegistrationObserver postRegisterListeners) |
Customer |
resetPassword(PasswordReset passwordReset) |
GenericResponse |
resetPasswordUsingToken(String username,
String token,
String password,
String confirmPassword)
Updates the password for the passed in customer only if the passed
in token is valid for that customer.
|
Customer |
saveCustomer(Customer customer) |
Customer |
saveCustomer(Customer customer,
boolean register) |
GenericResponse |
sendForgotPasswordNotification(String username,
String resetPasswordUrl)
Generates an access token and then emails the user.
|
GenericResponse |
sendForgotUsernameNotification(String emailAddress)
Looks up the corresponding Customer and emails the address on file with
the associated username.
|
void |
setChangePasswordEmailInfo(EmailInfo changePasswordEmailInfo) |
void |
setCustomerDao(CustomerDao customerDao) |
void |
setForgotPasswordEmailInfo(EmailInfo forgotPasswordEmailInfo) |
void |
setForgotUsernameEmailInfo(EmailInfo forgotUsernameEmailInfo) |
void |
setPasswordChangedHandlers(List<PasswordUpdatedHandler> passwordChangedHandlers) |
void |
setPasswordEncoder(org.springframework.security.authentication.encoding.PasswordEncoder passwordEncoder) |
void |
setPasswordResetHandlers(List<PasswordUpdatedHandler> passwordResetHandlers) |
void |
setPasswordTokenLength(int passwordTokenLength) |
void |
setRegistrationEmailInfo(EmailInfo registrationEmailInfo) |
void |
setSalt(String salt) |
void |
setTokenExpiredMinutes(int tokenExpiredMinutes) |
protected CustomerDao customerDao
protected IdGenerationService idGenerationService
protected CustomerForgotPasswordSecurityTokenDao customerForgotPasswordSecurityTokenDao
protected org.springframework.security.authentication.encoding.PasswordEncoder passwordEncoder
protected String salt
protected RoleDao roleDao
protected EmailService emailService
protected EmailInfo forgotPasswordEmailInfo
protected EmailInfo forgotUsernameEmailInfo
protected EmailInfo registrationEmailInfo
protected EmailInfo changePasswordEmailInfo
protected int tokenExpiredMinutes
protected int passwordTokenLength
protected final List<PostRegistrationObserver> postRegisterListeners
protected List<PasswordUpdatedHandler> passwordResetHandlers
protected List<PasswordUpdatedHandler> passwordChangedHandlers
public Customer saveCustomer(Customer customer)
saveCustomer
in interface CustomerService
public Customer saveCustomer(Customer customer, boolean register)
saveCustomer
in interface CustomerService
public Customer registerCustomer(Customer customer, String password, String passwordConfirm)
registerCustomer
in interface CustomerService
protected void createRegisteredCustomerRoles(Customer customer)
customer
- public Customer readCustomerByEmail(String emailAddress)
readCustomerByEmail
in interface CustomerService
public Customer changePassword(PasswordChange passwordChange)
changePassword
in interface CustomerService
public Customer resetPassword(PasswordReset passwordReset)
resetPassword
in interface CustomerService
public void addPostRegisterListener(PostRegistrationObserver postRegisterListeners)
addPostRegisterListener
in interface CustomerService
public void removePostRegisterListener(PostRegistrationObserver postRegisterListeners)
removePostRegisterListener
in interface CustomerService
protected void notifyPostRegisterListeners(Customer customer)
public Customer createCustomer()
createCustomer
in interface CustomerService
public Customer createCustomerFromId(Long customerId)
CustomerService
Customer
by first looking in the database, otherwise creating a new non-persisted Customer
createCustomerFromId
in interface CustomerService
customerId
- the id of the customer to lookupCustomer
from the database if it exists, or a new non-persisted Customer
public Long findNextCustomerId()
findNextCustomerId
in interface CustomerService
public Customer createNewCustomer()
CustomerService
Customer
. Typically used with registering a new customer.createNewCustomer
in interface CustomerService
public Customer readCustomerByUsername(String username)
readCustomerByUsername
in interface CustomerService
public Customer readCustomerById(Long id)
readCustomerById
in interface CustomerService
public void setCustomerDao(CustomerDao customerDao)
public void setPasswordEncoder(org.springframework.security.authentication.encoding.PasswordEncoder passwordEncoder)
public String getSalt(Customer customer)
customer
- CustomerServiceImpl#getSalt()}
public String getSalt()
public void setSalt(String salt)
public List<PasswordUpdatedHandler> getPasswordResetHandlers()
getPasswordResetHandlers
in interface CustomerService
public void setPasswordResetHandlers(List<PasswordUpdatedHandler> passwordResetHandlers)
setPasswordResetHandlers
in interface CustomerService
public List<PasswordUpdatedHandler> getPasswordChangedHandlers()
getPasswordChangedHandlers
in interface CustomerService
public void setPasswordChangedHandlers(List<PasswordUpdatedHandler> passwordChangedHandlers)
setPasswordChangedHandlers
in interface CustomerService
public GenericResponse sendForgotUsernameNotification(String emailAddress)
CustomerService
sendForgotUsernameNotification
in interface CustomerService
public GenericResponse sendForgotPasswordNotification(String username, String resetPasswordUrl)
CustomerService
sendForgotPasswordNotification
in interface CustomerService
username
- - the user to send a reset password email to.resetPasswordUrl
- - Base url to include in the email.public GenericResponse checkPasswordResetToken(String token)
CustomerService
checkPasswordResetToken
in interface CustomerService
public GenericResponse resetPasswordUsingToken(String username, String token, String password, String confirmPassword)
CustomerService
resetPasswordUsingToken
in interface CustomerService
username
- Username of the customertoken
- Valid reset tokenpassword
- new passwordprotected void checkCustomer(Customer customer, GenericResponse response)
protected void checkPassword(String password, String confirmPassword, GenericResponse response)
protected boolean isTokenExpired(CustomerForgotPasswordSecurityToken fpst)
public int getTokenExpiredMinutes()
public void setTokenExpiredMinutes(int tokenExpiredMinutes)
public int getPasswordTokenLength()
public void setPasswordTokenLength(int passwordTokenLength)
public EmailInfo getForgotPasswordEmailInfo()
public void setForgotPasswordEmailInfo(EmailInfo forgotPasswordEmailInfo)
public EmailInfo getForgotUsernameEmailInfo()
public void setForgotUsernameEmailInfo(EmailInfo forgotUsernameEmailInfo)
public EmailInfo getRegistrationEmailInfo()
public void setRegistrationEmailInfo(EmailInfo registrationEmailInfo)
public EmailInfo getChangePasswordEmailInfo()
public void setChangePasswordEmailInfo(EmailInfo changePasswordEmailInfo)
Copyright © 2013. All rights reserved.