Class AddressBook
dw.customer
Class AddressBook
Object
dw.customer.AddressBook
Represents a set of addresses associated with a specific customer. The AddressBook object gets its data from the Profile object for the customer. When scripting, this class allows AddressBook to be treated as a separate object from the Profile. However, data is only stored in the platform in the Profile object and there is no separate AddressBook object. For this reason, the AddressBook ID is always the customer profile ID.

Note: this class allows access to sensitive personal and private information. Pay attention to appropriate legal and regulatory requirements when developing.

Properties
addresses  :  List  (Read Only)
A sorted list of addresses in the address book. The addresses are sorted so that the preferred address is always sorted first. The remaining addresses are sorted alphabetically by ID.
preferredAddress  :  CustomerAddress
The address that has been defined as the customer's preferred address.
Constructor Summary
This class does not have a constructor, so you cannot create it directly.
Method Summary
createAddress(name : String) : CustomerAddress
Creates a new, empty address object with the specified name.
getAddress(id : String) : CustomerAddress
Returns the address with the given name from the address book.
getAddresses() : List
Returns a sorted list of addresses in the address book.
getPreferredAddress() : CustomerAddress
Returns the address that has been defined as the customer's preferred address.
removeAddress(address : CustomerAddress) : void
Removes the specified address from the address book.
setPreferredAddress(anAddress : CustomerAddress) : void
Sets the specified address as the customer's preferred address.
Method Detail
createAddress
createAddress(name : String) : CustomerAddress
Creates a new, empty address object with the specified name.
Parameters:
name - the ID of the address to create, must not be null.
Returns:
the new address object or null if an address with the given name already exists in the address book.
Throws:
NullArgumentException - If passed 'name' is null.
IllegalArgumentException - If passed 'name' is not null, but an empty string.

getAddress
getAddress(id : String) : CustomerAddress
Returns the address with the given name from the address book. The name is a unique identifier of the address within the address book.
Parameters:
id - An address ID, must not be null.
Returns:
The Address object or null if the address does not exist.
Throws:
NullArgumentException - If passed 'id' is null.
IllegalArgumentException - If passed 'id' is not null, but an empty string.

getAddresses
getAddresses() : List
Returns a sorted list of addresses in the address book. The addresses are sorted so that the preferred address is always sorted first. The remaining addresses are sorted alphabetically by ID.
Returns:
Sorted List of customer addresses in the address book.

getPreferredAddress
getPreferredAddress() : CustomerAddress
Returns the address that has been defined as the customer's preferred address.
Returns:
the default CustomerAddress object, or null if there is no preferred address.

removeAddress
removeAddress(address : CustomerAddress) : void
Removes the specified address from the address book. Because an address can be associated with a product list, you may want to verify if the address is being used by a product list. See ProductListMgr.findAddress().
Parameters:
address - the address to remove, must not be null.

setPreferredAddress
setPreferredAddress(anAddress : CustomerAddress) : void
Sets the specified address as the customer's preferred address. If null is passed, and there is an existing preferred address, then the address book will have no preferred address.
Parameters:
anAddress - the address to be set as preferred, or null if the goal is to unset the existing preferred address.