atg.projects.store.order.purchase
Class StoreElectronicShippingGroupInitializer

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.commerce.order.purchase.ElectronicShippingGroupInitializer
              extended by atg.projects.store.order.purchase.StoreElectronicShippingGroupInitializer
All Implemented Interfaces:
atg.commerce.order.purchase.ShippingGroupInitializer, atg.commerce.order.purchase.ShippingGroupMatcher, atg.naming.NameContextBindingListener, atg.naming.NameContextElement, atg.naming.NameResolver, atg.nucleus.AdminableService, atg.nucleus.logging.ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, atg.nucleus.logging.VariableArgumentApplicationLogging, atg.nucleus.naming.ComponentNameResolver, atg.nucleus.Service, atg.nucleus.ServiceListener, java.util.EventListener

public class StoreElectronicShippingGroupInitializer
extends atg.commerce.order.purchase.ElectronicShippingGroupInitializer

StoreElectronicShippingGroupInitializer extends ElectronicShippingGroupInitializer to generate unique shipping group names based on more than one recipient email address.


Field Summary
static java.lang.String CLASS_VERSION
          Class version string.
 
Fields inherited from class atg.nucleus.GenericService
SERVICE_INFO_KEY
 
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging
DEFAULT_LOG_TRACE_STATUS
 
Fields inherited from interface atg.nucleus.logging.ApplicationLogging
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
 
Constructor Summary
StoreElectronicShippingGroupInitializer()
          Creates a new StoreElectronicShippingGroupInitializer instance.
 
Method Summary
protected  java.lang.String createShippingGroupName(StoreElectronicShippingGroup pShippingGroup)
          Create a unique name for the shipping group by concatenating the shipping group ID to the To email address.
 java.lang.String getEmailAddressPropertyName()
          Returns the Profile property in which the email address is located.
 java.lang.String getNewShippingGroupName(atg.commerce.order.ShippingGroup pShippingGroup)
          The getNewShippingGroupName method is used to obtain a descriptive identifier for the shipping group for use as the shipping group's key in the ShippingGroupMapContainer.
 java.lang.String matchShippingGroup(atg.commerce.order.ShippingGroup pShippingGroup, atg.commerce.order.purchase.ShippingGroupMapContainer pShippingGroupMapContainer)
          The matchShippingGroup method is used to match a ShippingGroup with an entry in a ShippingGroupMapContainer, based on criteria dictated by the specific type of ShippingGroup.
 void setEmailAddressPropertyName(java.lang.String pEmailAddressPropertyName)
          Specifies the Profile property in which the email address is located.
 
Methods inherited from class atg.commerce.order.purchase.ElectronicShippingGroupInitializer
copyConfiguration, doStartService, getConfiguration, getDefaultShippingGroupName, getElectronicShippingGroupType, getShippingGroupManager, getUserLocale, initializeElectronic, initializeShippingGroups, nameDefaultShippingGroup, setConfiguration, setDefaultShippingGroupName, setElectronicShippingGroupType, setShippingGroupManager
 
Methods inherited from class atg.nucleus.GenericService
addLogListener, createAdminServlet, doStopService, getAbsoluteName, getAdminServlet, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
 
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_VERSION

public static java.lang.String CLASS_VERSION
Class version string.

Constructor Detail

StoreElectronicShippingGroupInitializer

public StoreElectronicShippingGroupInitializer()
Creates a new StoreElectronicShippingGroupInitializer instance.

Method Detail

setEmailAddressPropertyName

public void setEmailAddressPropertyName(java.lang.String pEmailAddressPropertyName)
Specifies the Profile property in which the email address is located.

Overrides:
setEmailAddressPropertyName in class atg.commerce.order.purchase.ElectronicShippingGroupInitializer
Parameters:
pEmailAddressPropertyName - a String value.

getEmailAddressPropertyName

public java.lang.String getEmailAddressPropertyName()
Returns the Profile property in which the email address is located.

Overrides:
getEmailAddressPropertyName in class atg.commerce.order.purchase.ElectronicShippingGroupInitializer
Returns:
a String value

matchShippingGroup

public java.lang.String matchShippingGroup(atg.commerce.order.ShippingGroup pShippingGroup,
                                           atg.commerce.order.purchase.ShippingGroupMapContainer pShippingGroupMapContainer)
The matchShippingGroup method is used to match a ShippingGroup with an entry in a ShippingGroupMapContainer, based on criteria dictated by the specific type of ShippingGroup.

Specified by:
matchShippingGroup in interface atg.commerce.order.purchase.ShippingGroupMatcher
Overrides:
matchShippingGroup in class atg.commerce.order.purchase.ElectronicShippingGroupInitializer
Parameters:
pShippingGroup - a ShippingGroup value
pShippingGroupMapContainer - a ShippingGroupMapContainer value
Returns:
String the name of the entry in the ShippingGroupMapContainer that matches the shipping group

getNewShippingGroupName

public java.lang.String getNewShippingGroupName(atg.commerce.order.ShippingGroup pShippingGroup)
The getNewShippingGroupName method is used to obtain a descriptive identifier for the shipping group for use as the shipping group's key in the ShippingGroupMapContainer.

This implementation concatenates the shipping group ID to the To email address to form a unique name. The assumption is that electronic shipping group names are never shown to shoppers.

Specified by:
getNewShippingGroupName in interface atg.commerce.order.purchase.ShippingGroupMatcher
Overrides:
getNewShippingGroupName in class atg.commerce.order.purchase.ElectronicShippingGroupInitializer
Parameters:
pShippingGroup - a ShippingGroup value
Returns:
String that will be used as the key for this shipping group in the ShippingGroupMapContainer

createShippingGroupName

protected java.lang.String createShippingGroupName(StoreElectronicShippingGroup pShippingGroup)
Create a unique name for the shipping group by concatenating the shipping group ID to the To email address. The assumption is that electronic shipping group names are never shown to shoppers.

Parameters:
pShippingGroup - a ShippingGroup value
Returns:
String that will be used as the key for this shipping group in the ShippingGroupMapContainer