atg.projects.store.droplet
Class EnsureCreditCardPaymentGroup

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.nucleus.TimedOperationService
              extended by atg.nucleus.servlet.ServletService
                  extended by atg.nucleus.servlet.HttpServletService
                      extended by atg.servlet.DynamoServlet
                          extended by atg.projects.store.droplet.EnsureCreditCardPaymentGroup
All Implemented Interfaces:
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, atg.servlet.ParameterServlet, java.util.EventListener, javax.servlet.Servlet

public class EnsureCreditCardPaymentGroup
extends atg.servlet.DynamoServlet

This droplet will create a credit card payment group and add it to the order if it doesn't already exist. The need for this arose because we are removing the credit card payment group if the online credits are sufficient to pay for the order. Otherwise, CyberSource will throw errors because the credit card payment group will exist, and will be validated automatically. However, if the user decides not to place the order, and later comes back to the billing page, we will need a credit card so the form doesn't blow up trying to set properties on a credit card that doesn't exist.


Field Summary
static java.lang.String CLASS_VERSION
          Class version string.
protected  StorePaymentGroupManager mStorePaymentGroupManager
          Store payment group manager.
static atg.nucleus.naming.ParameterName ORDER
          Input parameter name profile.
 
Fields inherited from class atg.servlet.DynamoServlet
mAllowCleanupRequest, mParameters
 
Fields inherited from class atg.nucleus.servlet.ServletService
SERVLET_INFO_KEY
 
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
EnsureCreditCardPaymentGroup()
           
 
Method Summary
 StoreOrderTools getStoreOrderTools()
           
 StorePaymentGroupManager getStorePaymentGroupManager()
           
 javax.transaction.TransactionManager getTransactionManager()
           
 void service(atg.servlet.DynamoHttpServletRequest pRequest, atg.servlet.DynamoHttpServletResponse pResponse)
           If the credit card payment group is empty, this droplet will create one and add it to the order.
 void setStoreOrderTools(StoreOrderTools pStoreOrderTools)
           
 void setStorePaymentGroupManager(StorePaymentGroupManager pStorePaymentGroupManager)
           
 void setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
           
 
Methods inherited from class atg.servlet.DynamoServlet
doDelete, doGet, doPost, doPut, getParameter, getParameters, getServletContext, service, service, setParameter
 
Methods inherited from class atg.nucleus.servlet.ServletService
destroy, getServletConfig, getServletInfo, init, setServletInfo
 
Methods inherited from class atg.nucleus.TimedOperationService
getAverageRequestHandlingTime, getHandledRequestCount, getRequestStartTime, getTotalRequestHandlingTime, isKeepingStatistics, notifyHandledRequest, resetStatistics, setKeepingStatistics
 
Methods inherited from class atg.nucleus.GenericService
addLogListener, createAdminServlet, doStartService, 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, reResolveThis, 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.


ORDER

public static final atg.nucleus.naming.ParameterName ORDER
Input parameter name profile.


mStorePaymentGroupManager

protected StorePaymentGroupManager mStorePaymentGroupManager
Store payment group manager.

Constructor Detail

EnsureCreditCardPaymentGroup

public EnsureCreditCardPaymentGroup()
Method Detail

getStoreOrderTools

public StoreOrderTools getStoreOrderTools()
Returns:
the mStoreOrderTools.

setStoreOrderTools

public void setStoreOrderTools(StoreOrderTools pStoreOrderTools)
Parameters:
pStoreOrderTools - - the Store order tools to set.

getStorePaymentGroupManager

public StorePaymentGroupManager getStorePaymentGroupManager()
Returns:
the Store payment group manager.

setStorePaymentGroupManager

public void setStorePaymentGroupManager(StorePaymentGroupManager pStorePaymentGroupManager)
Parameters:
pStorePaymentGroupManager - - the Store payment group manager.

getTransactionManager

public javax.transaction.TransactionManager getTransactionManager()
Returns:
the transaction manager.

setTransactionManager

public void setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
Parameters:
pTransactionManager - - the transactional manager.

service

public void service(atg.servlet.DynamoHttpServletRequest pRequest,
                    atg.servlet.DynamoHttpServletResponse pResponse)
             throws javax.servlet.ServletException,
                    java.io.IOException

If the credit card payment group is empty, this droplet will create one and add it to the order. Wrapped in a transaction since we're making order modifications.

Overrides:
service in class atg.servlet.DynamoServlet
Parameters:
pRequest - a DynamoHttpServletRequest value
pResponse - a DynamoHttpServletResponse value
Throws:
javax.servlet.ServletException - if an error occurs
java.io.IOException - if an error occurs