public abstract class OrderModifierFormHandler extends GenericFormHandler implements atg.commerce.util.PipelineErrorHandler
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string
|
protected static java.lang.String |
ERROR_MISSING_LOCK_MANAGER |
protected static java.lang.String |
ERROR_MISSING_LOCK_PROFILE |
protected static java.lang.String |
ERROR_MISSING_TRANSACTION_MANAGER |
protected static java.lang.String |
MSG_CONCURRENT_UPDATE_ATTEMPT |
protected static java.lang.String |
MSG_ERROR_ADDING_TO_ORDER |
protected static java.lang.String |
MSG_ERROR_REMOVING_FROM_ORDER |
protected static java.lang.String |
MSG_ERROR_REMOVING_RROM_ORDER |
protected static java.lang.String |
MSG_NO_ITEM_FOUND |
protected static java.lang.String |
MSG_NO_ITEMS_TO_ADD |
protected static java.lang.String |
MSG_NO_ORDER_TO_MODIFY |
protected static java.lang.String |
MSG_NO_SKU_WITH_ID |
protected static java.lang.String |
MSG_QUANTITY_LESSTHAN_OR_EQUALTO_ZERO |
protected static java.lang.String |
PARAM_TRANSACTION_CREATED |
protected static java.lang.String |
PARAM_VALUE_TRUE |
PARAM_DEFER_FORWARD_OR_REDIRECT, PARAM_USE_FORWARDS
SERVICE_INFO_KEY
DEFAULT_LOG_TRACE_STATUS
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
Constructor and Description |
---|
OrderModifierFormHandler()
Constructs an instanceof OrderModifierFormHandler
|
Modifier and Type | Method and Description |
---|---|
protected void |
acquireTransactionLock()
Attempt to acquire a local lock before creating a transaction
that may modify the order, but only if
useLocksAroundTransactions is set to true. |
CommerceItem |
addNewItemToOrder(Order pOrder,
java.lang.String pCatalogRefId,
java.lang.String pProductId,
long pQuantity,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Adds the designated item to the given order.
|
boolean |
afterSet(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Commit or roll back any transaction created in beforeSet,
and release any lock that was acquired at the time.
|
boolean |
beforeSet(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Create a transaction if necessary at the beginning of the form
submission process, optionally obtaining a local lock to prevent
multiple forms from creating transactions that may modify the
same order.
|
boolean |
checkFormRedirect(java.lang.String pSuccessURL,
java.lang.String pFailureURL,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
If the transaction is marked as rollback, then redirect to the FailureURL,
otherwise allow the super-class behavior to perform.
|
protected void |
commitTransaction(javax.transaction.Transaction pTransaction)
Commits the supplied transaction
|
CommerceItem |
createCommerceItem(java.lang.String pCatalogRefId,
java.lang.Object pCatalogRef,
java.lang.String pProductId,
java.lang.Object pProductRef,
long pQuantity)
With the given parameters create a new CommerceItem that will be added to the order.
|
protected ClientLockManager |
defaultLocalLockManager(boolean pSetLocalLockManager)
Get the default local lock manager to use if
localLockManager
has not been set. |
protected RepositoryItem |
defaultUserProfile(boolean pSetProfile)
Get the default user profile to use if
profile has not been
set. |
protected javax.transaction.Transaction |
ensureTransaction()
This method ensures that a transaction exists before returning.
|
CommerceItem |
findCommerceItem(Order pOrder,
java.lang.String pCatalogRefId)
Deprecated.
This method should no longer be used. Instead call
Order.findCommerceItemsByCatalogRefId(String) |
java.lang.String |
formatUserMessage(java.lang.String pKey,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Utility method to format a message with no arguments using the Locale of the user
|
java.lang.String |
formatUserMessage(java.lang.String pKey,
java.lang.Object[] pParams,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Utility method to format a message with two arguments using our resource bundle.
|
java.lang.String |
formatUserMessage(java.lang.String pKey,
java.lang.Object pParam,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Utility method to format a message with one argument using the Locale of the user
|
java.lang.String |
formatUserMessage(java.lang.String pKey,
java.lang.Object pParam1,
java.lang.Object pParam2,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Utility method to format a message with two arguments using our resource bundle.
|
java.lang.String |
generatePropertyPath(java.lang.String pPropertyName)
Returns a Nucleus property path which can be used in a DropletFormException
|
Address |
getAddress()
Returns an address bean to be used when modifying an address for a shipping or a billing group
|
java.lang.String[] |
getCatalogRefIds()
Returns property CatalogRefIds
|
CatalogTools |
getCatalogTools()
Returns property CatalogTools
|
CreditCard |
getCreditCard()
Returns credit card bean to use for modifying of billing groups
|
javax.transaction.Transaction |
getCurrentTransaction()
Returns property currentTransaction
|
java.util.Locale |
getDefaultLocale()
Returns property DefaultLocale.
|
java.lang.String |
getGeneralFailureURL()
Returns A Generic bean to store a failure URL into
|
java.lang.String |
getGeneralSuccessURL()
Returns A Geneneric bean to store a success URL into
|
GiftCertificate |
getGiftCertificate()
Returns gift certificate bean to use for modifying of billing grps
|
HardgoodShippingGroup |
getHardgoodShippingGroup()
Returns hardgood shipping group bean
|
ClientLockManager |
getLocalLockManager()
Deprecated.
Use the TransactionLockFactory instead
|
Order |
getOrder()
Returns property Order
|
SimpleOrderManager |
getOrderManager()
Returns property OrderManager
|
PaymentGroup |
getPaymentGroup()
Returns payment group bean to use for modifiing payment groups
|
PipelineManager |
getPipelineManager()
Returns property PipelineManager
|
java.lang.String |
getProductId()
Returns property ProductId
|
RepositoryItem |
getProfile()
Returns property Profile
|
long |
getQuantity()
Returns property Quantity
|
long |
getQuantity(java.lang.String pCatalogRefId,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Retrieve the quanity that should be used for the given item.
|
protected java.util.ResourceBundle |
getResourceBundle()
Returns the error message ResourceBundle
|
protected java.lang.String |
getResourceBundleName()
Returns the name of the error message ResourceBundle
|
ShippingGroup |
getShippingGroup()
Returns shipping group bean to use for modifying the shipping groups
|
TransactionLockFactory |
getTransactionLockFactory()
The transactionLockFactory is used to get the locks if
useLocksArountTransactions is true |
javax.transaction.TransactionManager |
getTransactionManager()
Returns property TransactionManager
|
java.util.Locale |
getUserLocale(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Returns the locale associated with the request.
|
boolean |
handleAddItemToOrder(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse) |
void |
handlePipelineError(java.lang.Object pError,
java.lang.String pErrorKey)
Add a pipeline error to the list of form exceptions.
|
boolean |
handleRemoveItemFromOrder(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse) |
boolean |
handleSetOrder(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse) |
boolean |
isEnsureTransaction()
Returns property EnsureTransaction
|
protected boolean |
isStringEmpty(java.lang.String pString) |
protected boolean |
isTransactionCreated(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse) |
protected boolean |
isTransactionMarkedAsRollBack()
Returns true if the transaction associated with the current thread
is marked for rollback.
|
boolean |
isUseLocksAroundTransactions()
Deprecated.
Use the TransactionLockFactory instead
|
boolean |
isUseRequestLocale()
Returns property UseRequestLocale
|
void |
processException(java.lang.Exception pException,
java.lang.String pMsgId,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Add a user error message to the form exceptions, and then display
the exception in the logs
|
protected boolean |
processPipelineErrors(PipelineResult pResult)
Examine the pipeline result looking for any error messages, creates DropletExceptions
and adds them as form exceptions
|
protected void |
releaseTransactionLock()
Attempt to release the local lock that was acquired before creating
a transaction that may have modified the order, but only if
useLocksAroundTransactions is set to true. |
boolean |
removeItemFromOrder(Order pOrder,
java.lang.String pItemId,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
This simply calls OrderManager's removeItemFromOrder method with the given order and item ID
|
protected PipelineResult |
runProcess(java.lang.String pChainId,
java.util.Map pParameters)
Executes a Pipeline Chain.
|
protected PipelineResult |
runProcess(java.lang.String pChainId,
Order pOrder,
PricingModelHolder pPricingModels,
java.util.Locale pLocale,
RepositoryItem pProfile,
java.util.Map pExtraParameters)
Executes a Pipeline Chain and places the supplies method parameters into a HashMap which
is supplied to the chain to execute.
|
protected PipelineResult |
runProcess(java.lang.String pChainId,
Order pOrder,
PricingModelHolder pPricingModels,
java.util.Locale pLocale,
RepositoryItem pProfile,
java.util.Map pParameters,
java.util.Map pExtraParameters)
Executes a Pipeline Chain and places the supplies method parameters into a HashMap which
is supplied to the chain to execute.
|
void |
setAddress(Address pAddress)
Sets an address bean to be used when modifying an address for a shipping or a billing group
|
void |
setCatalogRefIds(java.lang.String[] pCatalogRefIds)
Sets property CatalogRefIds
|
void |
setCatalogTools(CatalogTools pCatalogTools)
Sets property CatalogTools
|
void |
setCreditCard(CreditCard pCreditCard)
Sets credit card bean to use for modifying of billing groups
|
void |
setCurrentTransaction(javax.transaction.Transaction pCurrentTransaction)
Sets property currentTransaction
|
void |
setDefaultLocale(java.util.Locale pDefaultLocale)
Sets property DefaultLocale
|
void |
setEnsureTransaction(boolean pEnsureTransaction)
Sets property EnsureTransaction
|
void |
setGeneralFailureURL(java.lang.String pGeneralFailureURL)
Sets A Generic bean to store a failure URL into
|
void |
setGeneralSuccessURL(java.lang.String pGeneralSuccessURL)
Sets A Geneneric bean to store a success URL into
|
void |
setGiftCertificate(GiftCertificate pGiftCertificate)
Sets gift certificate bean to use for modifying of billing grps
|
void |
setHardgoodShippingGroup(HardgoodShippingGroup pHardgoodShippingGroup)
Sets hardgood shipping group bean
|
void |
setLocalLockManager(ClientLockManager pLocalLockManager)
Deprecated.
Use the TransactionLockFactory instead
|
void |
setOrder(Order pOrder)
Sets property Order
|
void |
setOrderManager(SimpleOrderManager pOrderManager)
Sets property OrderManager
|
void |
setPaymentGroup(PaymentGroup pPaymentGroup)
Sets payment group bean to use for modifiing payment groups
|
void |
setPipelineManager(PipelineManager pPipelineManager)
Sets property PipelineManager
|
void |
setProductId(java.lang.String pProductId)
Sets property ProductId
|
void |
setProfile(RepositoryItem pProfile)
Sets property Profile
|
void |
setQuantity(long pQuantity)
Sets property Quantity
|
void |
setShippingGroup(ShippingGroup pShippingGroup)
Sets shipping group bean to use for modifying the shipping groups
|
protected void |
setTransactionCreated(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse) |
void |
setTransactionLockFactory(TransactionLockFactory pTransactionLockFactory)
The transactionLockFactory is used to get the locks if
useLocksArountTransactions is true |
void |
setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
Sets property TransactionManager
|
protected void |
setTransactionToRollbackOnly()
Sets the transaction to rollback
|
void |
setUseLocksAroundTransactions(boolean pUseLocksAroundTransactions)
Deprecated.
Use the TransactionLockFactory instead
|
void |
setUseRequestLocale(boolean pUseRequestLocale)
Sets property UseRequestLocale
|
protected java.lang.String |
transactionLockName()
Generate the lock name to use when acquiring and releasing locks
in
acquireTransactionLock and releaseTransactionLock . |
protected void |
unsetTransactionCreated(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse) |
addFormException, addUncheckedFormException, createFormSubmissionMessage, getCancelURL, getCheckForValidSession, getFormError, getFormExceptions, getFormName, getMessagePort, getMessageSource, getMessageType, getPropertyExceptions, getSendMessages, getUncheckedFormExceptions, handleCancel, handleFormException, handleUncheckedFormException, hasUncheckedFormExceptions, isDeferForwardsAndRedirects, isRestorableForm, isUseForwards, isValidSession, redirectOrForward, resetFormExceptions, setCancelURL, setCheckForValidSession, setDeferForwardsAndRedirects, setFormName, setMessagePort, setMessageSource, setMessageType, setRestorableForm, setSendMessages, setUseForwards
afterGet, beforeGet
addLogListener, createAdminServlet, doStartService, doStopService, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, 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, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public static java.lang.String CLASS_VERSION
protected static final java.lang.String MSG_NO_ITEMS_TO_ADD
protected static final java.lang.String MSG_QUANTITY_LESSTHAN_OR_EQUALTO_ZERO
protected static final java.lang.String MSG_NO_ORDER_TO_MODIFY
protected static final java.lang.String MSG_NO_SKU_WITH_ID
protected static final java.lang.String MSG_ERROR_ADDING_TO_ORDER
protected static final java.lang.String MSG_ERROR_REMOVING_RROM_ORDER
protected static final java.lang.String MSG_CONCURRENT_UPDATE_ATTEMPT
protected static final java.lang.String MSG_ERROR_REMOVING_FROM_ORDER
protected static final java.lang.String MSG_NO_ITEM_FOUND
protected static final java.lang.String PARAM_TRANSACTION_CREATED
protected static final java.lang.String PARAM_VALUE_TRUE
protected static final java.lang.String ERROR_MISSING_LOCK_MANAGER
protected static final java.lang.String ERROR_MISSING_LOCK_PROFILE
protected static final java.lang.String ERROR_MISSING_TRANSACTION_MANAGER
public OrderModifierFormHandler()
public void setPipelineManager(PipelineManager pPipelineManager)
public PipelineManager getPipelineManager()
public void setOrderManager(SimpleOrderManager pOrderManager)
public SimpleOrderManager getOrderManager()
public void setCatalogTools(CatalogTools pCatalogTools)
public CatalogTools getCatalogTools()
public void setUseLocksAroundTransactions(boolean pUseLocksAroundTransactions)
If this property is set to true, locking will be used to prevent one
user from trying to modify orders in multiple concurrent threads.
This has a small performance impact as we obtain and release the lock,
but minimizes the possibility of concurrent update exceptions if
two threads try to modify the same order for the same user.
The default value for useLocksAroundTransactions
is true.
public boolean isUseLocksAroundTransactions()
public void setTransactionLockFactory(TransactionLockFactory pTransactionLockFactory)
useLocksArountTransactions
is truepublic TransactionLockFactory getTransactionLockFactory()
useLocksArountTransactions
is truepublic void setLocalLockManager(ClientLockManager pLocalLockManager)
useLocksAroundTransactions
is true.public ClientLockManager getLocalLockManager()
useLocksAroundTransactions
is true.protected ClientLockManager defaultLocalLockManager(boolean pSetLocalLockManager)
localLockManager
has not been set. If pSetLocalLockManager
is true, then also
set localLockManager
to the value returned so future calls to
getLocalLockManager
will succeed.public void setOrder(Order pOrder)
public Order getOrder()
public void setProfile(RepositoryItem pProfile)
public RepositoryItem getProfile()
protected RepositoryItem defaultUserProfile(boolean pSetProfile)
profile
has not been
set. If pSetProfile
is true, then also set profile
to the value returned so future calls to getProfile
will succeed.public void setCatalogRefIds(java.lang.String[] pCatalogRefIds)
public java.lang.String[] getCatalogRefIds()
public void setProductId(java.lang.String pProductId)
public java.lang.String getProductId()
public void setQuantity(long pQuantity)
public long getQuantity()
public void setAddress(Address pAddress)
public Address getAddress()
public void setPaymentGroup(PaymentGroup pPaymentGroup)
public PaymentGroup getPaymentGroup()
public void setCreditCard(CreditCard pCreditCard)
public CreditCard getCreditCard()
public void setGiftCertificate(GiftCertificate pGiftCertificate)
public GiftCertificate getGiftCertificate()
public void setHardgoodShippingGroup(HardgoodShippingGroup pHardgoodShippingGroup)
public HardgoodShippingGroup getHardgoodShippingGroup()
public void setShippingGroup(ShippingGroup pShippingGroup)
public ShippingGroup getShippingGroup()
public void setDefaultLocale(java.util.Locale pDefaultLocale)
public java.util.Locale getDefaultLocale()
public void setUseRequestLocale(boolean pUseRequestLocale)
public boolean isUseRequestLocale()
public void setGeneralSuccessURL(java.lang.String pGeneralSuccessURL)
public java.lang.String getGeneralSuccessURL()
public void setGeneralFailureURL(java.lang.String pGeneralFailureURL)
public java.lang.String getGeneralFailureURL()
public javax.transaction.Transaction getCurrentTransaction()
public void setCurrentTransaction(javax.transaction.Transaction pCurrentTransaction)
pCurrentTransaction
- the value to set for property currentTransactionpublic void setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
public javax.transaction.TransactionManager getTransactionManager()
public void setEnsureTransaction(boolean pEnsureTransaction)
public boolean isEnsureTransaction()
protected java.util.ResourceBundle getResourceBundle()
protected java.lang.String getResourceBundleName()
protected javax.transaction.Transaction ensureTransaction()
protected void commitTransaction(javax.transaction.Transaction pTransaction)
protected void setTransactionToRollbackOnly() throws javax.transaction.SystemException
javax.transaction.SystemException
protected boolean isTransactionMarkedAsRollBack()
public boolean checkFormRedirect(java.lang.String pSuccessURL, java.lang.String pFailureURL, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
checkFormRedirect
in class GenericFormHandler
pNoErrorsURL
- The URL to redirect to if there were no form errors.
If a null value is passed in, no redirect occurs.pErrorsURL
- The URL to redirect to if form errors were found.
If a null value is passed in, no redirect occurs.pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleRemoveItemFromOrder(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleAddItemToOrder(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleSetOrder(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic CommerceItem addNewItemToOrder(Order pOrder, java.lang.String pCatalogRefId, java.lang.String pProductId, long pQuantity, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException, CommerceException
pOrder
- the order to add the item topCatalogRefId
- the sku id of the commerce item to addpProductId
- the product id of the commerce item to addpQuantity
- the quantity of the itempRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioCommerceException
public boolean removeItemFromOrder(Order pOrder, java.lang.String pItemId, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException, CommerceException
pOrder
- the order the item is to be removed frompItemId
- the ID of the commerce item to removepRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioCommerceException
public long getQuantity(java.lang.String pCatalogRefId, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException, java.lang.NumberFormatException
pCatalogRefId
- the sku id of the item whose quantity we wantpRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
java.lang.NumberFormatException
public CommerceItem createCommerceItem(java.lang.String pCatalogRefId, java.lang.Object pCatalogRef, java.lang.String pProductId, java.lang.Object pProductRef, long pQuantity) throws CommerceException
pCatalogRefId
- the sku id of the commerce itempCatalogRef
- the sku repository itempProductId
- the product id of the commerce itempProductRef
- the product repository itempQuantity
- the quantity of the commerce itemCommerceException
public CommerceItem findCommerceItem(Order pOrder, java.lang.String pCatalogRefId) throws CommerceException
Order.findCommerceItemsByCatalogRefId(String)
CommerceException
public java.lang.String generatePropertyPath(java.lang.String pPropertyName)
pPropertyName
- the name of the propertypublic void processException(java.lang.Exception pException, java.lang.String pMsgId, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pException
- the exceptionpMsgId
- the ID of the message to addpRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
public java.util.Locale getUserLocale(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
locale
. This value can be
either a java.util.Locale object or a String which represents the locale.
Next if the useRequestLocale
property is true, then the locale
of the request will be returned. Finally, if the locale cannot be determined,
the the defaultLocale
property is used.pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
public java.lang.String formatUserMessage(java.lang.String pKey, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pKey
- the identifier for the message to retrieve out of the ResourceBundlepRequest
- the request object which can be used to extract the user's localepResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
OrderUserMessage
public java.lang.String formatUserMessage(java.lang.String pKey, java.lang.Object pParam, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pKey
- the identifier for the message to retrieve out of the ResourceBundlepParam
- the first (and only argument) in the messagepRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
OrderUserMessage
public java.lang.String formatUserMessage(java.lang.String pKey, java.lang.Object pParam1, java.lang.Object pParam2, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pKey
- the identifier for the message to retrieve out of the ResourceBundlepParam1
- the first parameter in the messagepParam2
- the second parameter in the messagepRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
OrderUserMessage
protected void acquireTransactionLock() throws DeadlockException
useLocksAroundTransactions
is set to true.DeadlockException
protected void releaseTransactionLock() throws LockManagerException
useLocksAroundTransactions
is set to true.LockManagerException
protected java.lang.String transactionLockName()
acquireTransactionLock
and releaseTransactionLock
.
By default this returns the repository id of the current user profile,
generating an error message and returning null if no profile is available.
Subclasses may override this behavior to choose a different locking
strategy.public boolean beforeSet(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws DropletFormException
beforeSet
in interface DropletFormHandler
beforeSet
in class GenericFormHandler
DropletFormException
afterSet(atg.servlet.DynamoHttpServletRequest, atg.servlet.DynamoHttpServletResponse)
,
ensureTransaction()
,
setUseLocksAroundTransactions(boolean)
public boolean afterSet(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws DropletFormException
afterSet
in interface DropletFormHandler
afterSet
in class GenericFormHandler
DropletFormException
beforeSet(atg.servlet.DynamoHttpServletRequest, atg.servlet.DynamoHttpServletResponse)
,
ensureTransaction()
,
setUseLocksAroundTransactions(boolean)
protected void setTransactionCreated(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse)
protected boolean isTransactionCreated(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse)
protected void unsetTransactionCreated(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse)
public java.lang.String formatUserMessage(java.lang.String pKey, java.lang.Object[] pParams, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pKey
- the identifier for the message to retrieve out of the ResourceBundlepParams
- a set of parameters to use in the formatting.pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
java.io.IOException
OrderUserMessage
protected boolean isStringEmpty(java.lang.String pString)
protected PipelineResult runProcess(java.lang.String pChainId, Order pOrder, PricingModelHolder pPricingModels, java.util.Locale pLocale, RepositoryItem pProfile, java.util.Map pExtraParameters) throws RunProcessException
pChainId
- the pipeline chain to executepOrder
- the order to repricepPricingModels
- the set of all pricing models for the user (item, order, shipping, tax)pLocale
- the locale that the order should be priced withinpProfile
- the user who owns the orderpExtraParameters
- A Map of extra parameters to be used in the pricingRunProcessException
protected PipelineResult runProcess(java.lang.String pChainId, Order pOrder, PricingModelHolder pPricingModels, java.util.Locale pLocale, RepositoryItem pProfile, java.util.Map pParameters, java.util.Map pExtraParameters) throws RunProcessException
pChainId
- the pipeline chain to executepOrder
- the order to repricepPricingModels
- the set of all pricing models for the user (item, order, shipping, tax)pLocale
- the locale that the order should be priced withinpProfile
- the user who owns the orderpParameters
- A Map of parameters to be used when calling the PipelineChainpExtraParameters
- A Map of extra parameters to be used in the pricingRunProcessException
protected PipelineResult runProcess(java.lang.String pChainId, java.util.Map pParameters) throws RunProcessException
pChainId
- the pipeline chain to executepParameters
- A Map of parameters to be passed to the chain during executionRunProcessException
protected boolean processPipelineErrors(PipelineResult pResult)
public void handlePipelineError(java.lang.Object pError, java.lang.String pErrorKey)
handlePipelineError
in interface atg.commerce.util.PipelineErrorHandler
pError
- the error reported by the pipeline.pErrorKey
- the key of the error, used for localization.