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:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Customer()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description Customer
addAttribute(String key, Object value)
Convenience method to add an ann attribute.protected boolean
canEqual(Object other)
boolean
equals(Object o)
List<AdditionalPhone>
getAdditionalPhones()
Additional phone numbers associated with the customer.<T> T
getAttribute(String key)
Map<String,Object>
getAttributes()
Dynamic attributes that are a part of the customer.com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState
getContextState()
A subset ofTracking
information to expose the context state for this object.String
getDefaultAccountId()
The default account for the customer.String
getDefaultPaymentAccountId()
Deprecated.since 1.7.2, in favor of usingSavedPaymentMethod
in PaymentTransactionServices to manage saved payment methods.String
getEmail()
The email address of the customer.String
getExternalId()
The id that associates this user with an external system.String
getFirstName()
The first name of the customer, if the fullName is not being used for the customer.String
getFullName()
The full name of the customer, if the component parts firstName, middleName, and lastName are not being used to comprise the full name.String
getId()
The context ID of the customer.String
getLastName()
The last name of the customer, if the fullName is not being used for the customer.String
getMiddleName()
The middle name of the customer, if the fullName is not being used for the customer.String
getName()
Get the name of the customer.String
getOwnerIdentifier()
Phone
getPhone()
The main phone number of the customer.String
getSpecialType()
The type of the customer, if it's in a special circumstance.String
getTaxId()
The tax id for this customerString
getUsername()
The username of the customer, used to log in.int
hashCode()
boolean
isActive()
Is this customer active? Inactive customers can be thought of as "disabled" and will not be able to login.boolean
isLocked()
Is this user locked? A user may be locked due to too many failed login attempts.void
setActive(boolean active)
Is this customer active? Inactive customers can be thought of as "disabled" and will not be able to login.void
setAdditionalPhones(List<AdditionalPhone> additionalPhones)
Additional phone numbers associated with the customer.void
setAttributes(Map<String,Object> attributes)
Dynamic attributes that are a part of the customer.void
setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState)
A subset ofTracking
information to expose the context state for this object.void
setDefaultAccountId(String defaultAccountId)
The default account for the customer.void
setDefaultPaymentAccountId(String defaultPaymentAccountId)
Deprecated.since 1.7.2, in favor of usingSavedPaymentMethod
in PaymentTransactionServices to manage saved payment methods.void
setEmail(String email)
The email address of the customer.void
setExternalId(String externalId)
The id that associates this user with an external system.void
setFirstName(String firstName)
The first name of the customer, if the fullName is not being used for the customer.void
setFullName(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.void
setId(String id)
The context ID of the customer.void
setLastName(String lastName)
The last name of the customer, if the fullName is not being used for the customer.void
setLocked(boolean locked)
Is this user locked? A user may be locked due to too many failed login attempts.void
setMiddleName(String middleName)
The middle name of the customer, if the fullName is not being used for the customer.void
setPhone(Phone phone)
The main phone number of the customer.void
setSpecialType(String specialType)
The type of the customer, if it's in a special circumstance.void
setTaxId(String taxId)
The tax id for this customervoid
setUsername(String username)
The username of the customer, used to log in.String
toString()
-
-
-
Method Detail
-
getName
public String getName()
Get the name of the customer. This will provide either the full name, or the combined first, middle, and last names.fullName
takes priority. Whether a single name or multiple name fields are used is a client implementation detail.- Returns:
- The name of the customer.
-
addAttribute
public Customer addAttribute(String key, Object value)
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(String)
,getAttributes()
-
getAttribute
public <T> T getAttribute(String key)
-
getOwnerIdentifier
public String getOwnerIdentifier()
- Specified by:
getOwnerIdentifier
in interfacecom.broadleafcommerce.data.tracking.core.policy.Owned
-
getId
public String getId()
The context ID of the customer.- Returns:
- the context ID of the customer
-
getFirstName
public String 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
public String 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
public String 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
public String 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
public String getUsername()
The username of the customer, used to log in.- Returns:
- the username of the customer
-
getEmail
public String getEmail()
The email address of the customer.- Returns:
- the email address of the customer
-
getExternalId
public String getExternalId()
The id that associates this user with an external system.- Returns:
- The customer's external ID
-
getPhone
public Phone getPhone()
The main phone number of the customer.- Returns:
- the main phone number of the customer
-
getAdditionalPhones
public List<AdditionalPhone> getAdditionalPhones()
Additional phone numbers associated with the customer.- Returns:
- additional phone numbers associated with the customer
-
getDefaultPaymentAccountId
@Deprecated public String getDefaultPaymentAccountId()
Deprecated.since 1.7.2, in favor of usingSavedPaymentMethod
in PaymentTransactionServices to manage saved payment methods.The id of the default payment account.- Returns:
- defaultAccountId the default payment account of the customer
-
getAttributes
public Map<String,Object> 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
public String 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:
CustomerSpecialType
-
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
public String getTaxId()
The tax id for this customer
-
getContextState
public com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState getContextState()
A subset ofTracking
information to expose the context state for this object.- Specified by:
getContextState
in interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware
- Returns:
- a subset of
Tracking
information 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, theactive
flag should be used instead.- Returns:
- is this customer locked?
-
getDefaultAccountId
public String 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
public void setId(String id)
The context ID of the customer.- Parameters:
id
- the context ID of the customer
-
setFirstName
public void setFirstName(String firstName)
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
public void setMiddleName(String middleName)
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
public void setLastName(String lastName)
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
public void setFullName(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.- Parameters:
fullName
- the full name of the customer
-
setUsername
public void setUsername(String username)
The username of the customer, used to log in.- Parameters:
username
- the username of the customer
-
setEmail
public void setEmail(String email)
The email address of the customer.- Parameters:
email
- the email address of the customer
-
setExternalId
public void setExternalId(String externalId)
The id that associates this user with an external system.- Parameters:
externalId
- The customer's external ID
-
setPhone
public void setPhone(Phone phone)
The main phone number of the customer.- Parameters:
phone
- the main phone number of the customer
-
setAdditionalPhones
public void setAdditionalPhones(List<AdditionalPhone> additionalPhones)
Additional phone numbers associated with the customer.- Parameters:
additionalPhones
- additional phone numbers associated with the customer
-
setDefaultPaymentAccountId
@Deprecated public void setDefaultPaymentAccountId(String defaultPaymentAccountId)
Deprecated.since 1.7.2, in favor of usingSavedPaymentMethod
in PaymentTransactionServices to manage saved payment methods.The id of the default payment account.- Parameters:
defaultAccountId
- the default payment account of the customer
-
setAttributes
public void setAttributes(Map<String,Object> attributes)
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
public void setSpecialType(String specialType)
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:
CustomerSpecialType
-
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
public void setTaxId(String taxId)
The tax id for this customer
-
setContextState
public void setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState)
A subset ofTracking
information to expose the context state for this object.- Specified by:
setContextState
in interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware
- Parameters:
contextState
- a subset ofTracking
information 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, theactive
flag should be used instead.- Parameters:
locked
- is this customer locked?
-
setDefaultAccountId
public void setDefaultAccountId(String defaultAccountId)
The default account for the customer. If set, the customer will automatically have this account selected on login.- Parameters:
defaultAccountId
- The default account id.
-
canEqual
protected boolean canEqual(Object other)
-
-