Class Customer
java.lang.Object
com.broadleafcommerce.customer.domain.Customer
- All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.ContextStateAware,com.broadleafcommerce.data.tracking.core.policy.Owned,Serializable
public class Customer
extends Object
implements com.broadleafcommerce.data.tracking.core.ContextStateAware, com.broadleafcommerce.data.tracking.core.policy.Owned, Serializable
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAttribute(String key, Object value) Convenience method to add an ann attribute.protected booleanbooleanAdditional phone numbers associated with the customer.<T> TgetAttribute(String key) Dynamic attributes that are a part of the customer.com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextStateA subset ofTrackinginformation to expose the context state for this object.The default account for the customer.The default communication preference of the customer.Deprecated.getEmail()The email address of the customer.The id that associates this user with an external system.The first name of the customer, if the fullName is not being used for the customer.The full name of the customer, if the component parts firstName, middleName, and lastName are not being used to comprise the full name.getId()The context ID of the customer.The last name of the customer, if the fullName is not being used for the customer.The middle name of the customer, if the fullName is not being used for the customer.getName()Get the name of the customer.getPhone()The main phone number of the customer.The type of the customer, if it's in a special circumstance.getTaxId()The tax id for this customerThe username of the customer, used to log in.Optional VAT registration ID.inthashCode()booleanisActive()Is this customer active? Inactive customers can be thought of as "disabled" and will not be able to login.booleanisLocked()Is this user locked? A user may be locked due to too many failed login attempts.voidsetActive(boolean active) Is this customer active? Inactive customers can be thought of as "disabled" and will not be able to login.voidsetAdditionalPhones(List<AdditionalPhone> additionalPhones) Additional phone numbers associated with the customer.voidsetAttributes(Map<String, Object> attributes) Dynamic attributes that are a part of the customer.voidsetContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState) A subset ofTrackinginformation to expose the context state for this object.voidsetDefaultAccountId(String defaultAccountId) The default account for the customer.voidsetDefaultCommunicationPreference(String defaultCommunicationPreference) The default communication preference of the customer.voidsetDefaultPaymentAccountId(String defaultPaymentAccountId) Deprecated.since 1.7.2, in favor of usingSavedPaymentMethodin PaymentTransactionServices to manage saved payment methods.voidThe email address of the customer.voidsetExternalId(String externalId) The id that associates this user with an external system.voidsetFirstName(String firstName) The first name of the customer, if the fullName is not being used for the customer.voidsetFullName(String fullName) The full name of the customer, if the component parts firstName, middleName, and lastName are not being used to comprise the full name.voidThe context ID of the customer.voidsetLastName(String lastName) The last name of the customer, if the fullName is not being used for the customer.voidsetLocked(boolean locked) Is this user locked? A user may be locked due to too many failed login attempts.voidsetMiddleName(String middleName) The middle name of the customer, if the fullName is not being used for the customer.voidThe main phone number of the customer.voidsetSpecialType(String specialType) The type of the customer, if it's in a special circumstance.voidThe tax id for this customervoidsetUsername(String username) The username of the customer, used to log in.voidsetVatRegistrationId(String vatRegistrationId) Optional VAT registration ID.toString()
-
Constructor Details
-
Customer
public Customer()
-
-
Method Details
-
getName
Get the name of the customer. This will provide either the full name, or the combined first, middle, and last names.fullNametakes priority. Whether a single name or multiple name fields are used is a client implementation detail.- Returns:
- The name of the customer.
-
addAttribute
Convenience method to add an ann attribute.If the attribute already exists, the existing attribute is overwritten.
- Parameters:
key- The key used to store/retrieve the attribute.value- The value to store.- Returns:
- The customer instance
- See Also:
-
getAttribute
-
getOwnerIdentifier
- Specified by:
getOwnerIdentifierin interfacecom.broadleafcommerce.data.tracking.core.policy.Owned
-
getId
The context ID of the customer.- Returns:
- the context ID of the customer
-
getFirstName
The first name of the customer, if the fullName is not being used for the customer.- Returns:
- the first name of the customer
-
getMiddleName
The middle name of the customer, if the fullName is not being used for the customer.- Returns:
- the middle name of the customer
-
getLastName
The last name of the customer, if the fullName is not being used for the customer.- Returns:
- the last name of the customer
-
getFullName
The full name of the customer, if the component parts firstName, middleName, and lastName are not being used to comprise the full name.- Returns:
- the full name of the customer
-
getUsername
The username of the customer, used to log in.- Returns:
- the username of the customer
-
getEmail
The email address of the customer.- Returns:
- the email address of the customer
-
getExternalId
The id that associates this user with an external system.- Returns:
- The customer's external ID
-
getPhone
The main phone number of the customer.- Returns:
- the main phone number of the customer
-
getAdditionalPhones
Additional phone numbers associated with the customer.- Returns:
- additional phone numbers associated with the customer
-
getDefaultCommunicationPreference
The default communication preference of the customer.- Returns:
- the default communication preference of the customer
-
getDefaultPaymentAccountId
Deprecated.since 1.7.2, in favor of usingSavedPaymentMethodin PaymentTransactionServices to manage saved payment methods.The id of the default payment account.- Returns:
- defaultAccountId the default payment account of the customer
-
getAttributes
Dynamic attributes that are a part of the customer. This is an admin-entered field.- Returns:
- dynamic attributes that are a part of the customer
-
getSpecialType
The type of the customer, if it's in a special circumstance.- Returns:
- The type of the customer, if it's in a special circumstance.
- See Also:
-
isActive
public boolean isActive()Is this customer active? Inactive customers can be thought of as "disabled" and will not be able to login. A customer set to inactive must be manually re-activated.Note: If manually setting this to false (e.g. via a direct database update), the auth user record (JpaUser#active in the auth database) must also be set to false.
See also
locked- Returns:
- Is this customer active?
-
getTaxId
The tax id for this customer -
getVatRegistrationId
Optional VAT registration ID.- See Also:
-
getContextState
public com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState getContextState()A subset ofTrackinginformation to expose the context state for this object.- Specified by:
getContextStatein interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware- Returns:
- a subset of
Trackinginformation to expose the context state for this object.
-
isLocked
public boolean isLocked()Is this user locked? A user may be locked due to too many failed login attempts. Note that, depending on user lock configuration, this may have no effect. If permanently disabling a customer is desired, theactiveflag should be used instead.- Returns:
- is this customer locked?
-
getDefaultAccountId
The default account for the customer. If set, the customer will automatically have this account selected on login.- Returns:
- The default account id.
-
setId
The context ID of the customer.- Parameters:
id- the context ID of the customer
-
setFirstName
The first name of the customer, if the fullName is not being used for the customer.- Parameters:
firstName- the first name of the customer
-
setMiddleName
The middle name of the customer, if the fullName is not being used for the customer.- Parameters:
middleName- the middle name of the customer
-
setLastName
The last name of the customer, if the fullName is not being used for the customer.- Parameters:
lastName- the last name of the customer
-
setFullName
The full name of the customer, if the component parts firstName, middleName, and lastName are not being used to comprise the full name.- Parameters:
fullName- the full name of the customer
-
setUsername
The username of the customer, used to log in.- Parameters:
username- the username of the customer
-
setEmail
The email address of the customer.- Parameters:
email- the email address of the customer
-
setExternalId
The id that associates this user with an external system.- Parameters:
externalId- The customer's external ID
-
setPhone
The main phone number of the customer.- Parameters:
phone- the main phone number of the customer
-
setAdditionalPhones
Additional phone numbers associated with the customer.- Parameters:
additionalPhones- additional phone numbers associated with the customer
-
setDefaultCommunicationPreference
The default communication preference of the customer.- Parameters:
communicationPreference- the default communication preference of the customer
-
setDefaultPaymentAccountId
Deprecated.since 1.7.2, in favor of usingSavedPaymentMethodin PaymentTransactionServices to manage saved payment methods.The id of the default payment account.- Parameters:
defaultAccountId- the default payment account of the customer
-
setAttributes
Dynamic attributes that are a part of the customer. This is an admin-entered field.- Parameters:
attributes- dynamic attributes that are a part of the customer
-
setSpecialType
The type of the customer, if it's in a special circumstance.- Parameters:
type- The type of the customer, if it's in a special circumstance.- See Also:
-
setActive
public void setActive(boolean active) Is this customer active? Inactive customers can be thought of as "disabled" and will not be able to login. A customer set to inactive must be manually re-activated.Note: If manually setting this to false (e.g. via a direct database update), the auth user record (JpaUser#active in the auth database) must also be set to false.
See also
locked- Parameters:
active- Is this customer active?
-
setTaxId
The tax id for this customer -
setVatRegistrationId
Optional VAT registration ID.- See Also:
-
setContextState
public void setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState) A subset ofTrackinginformation to expose the context state for this object.- Specified by:
setContextStatein interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware- Parameters:
contextState- a subset ofTrackinginformation to expose the context state for this object
-
setLocked
public void setLocked(boolean locked) Is this user locked? A user may be locked due to too many failed login attempts. Note that, depending on user lock configuration, this may have no effect. If permanently disabling a customer is desired, theactiveflag should be used instead.- Parameters:
locked- is this customer locked?
-
setDefaultAccountId
The default account for the customer. If set, the customer will automatically have this account selected on login.- Parameters:
defaultAccountId- The default account id.
-
toString
-
equals
-
canEqual
-
hashCode
public int hashCode()
-
SavedPaymentMethodin PaymentTransactionServices to manage saved payment methods.