atg.commerce.pricing.priceLists
Class PriceDroplet

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.commerce.pricing.priceLists.PriceDroplet
All Implemented Interfaces:
NameContextBindingListener, NameContextElement, NameResolver, AdminableService, ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, atg.nucleus.logging.VariableArgumentApplicationLogging, ComponentNameResolver, Service, ServiceListener, ParameterServlet, java.util.EventListener, javax.servlet.Servlet

public class PriceDroplet
extends DynamoServlet

Given a productId, a skuId, and a price list, returns the given price. This droplet should not be confused with the PriceItemDroplet in atg.commerce.pricing, which uses the PricingEngine to actually calculate the item price. The following parameters are optional (note: either product or sku is necessary):

product
The product whose price we are interested in. This parameter is optional. The value may be either the product repository item itself or the product id as a string.
sku
The sku whose price we are interested in. This parameter is optional. The value may be either the sku repository item itself or the sku id as a string. However, if a value for product is also supplied, then product and sku must either both be repository items or both be strings. Providing one as a product and the other as a string is an error.
parentSku
If the sku to be priced is an option of a configurable sku, this is the base sku item within whose context the configurable option sku should be priced. This parameter is optional. The value may be either the sku repository item itself or the sku id as a string. However, it must be of the same type (repository item or string) as the "sku" parameter. Providing one as a repository item and the other as a string is an error.
priceList
The priceList that we should retrieve the price from. This parameter is optional.

There are three oparam's that may be rendered.

output
This is the normal case. The price parameter will contain the price repository item.
empty
This is rendered if there is no price for the provided information.
error
This is rendered if there is an error. The parameter error will contain the error.

For example:

 <droplet bean="/atg/commerce/pricing/priceLists/PriceDroplet">
 <param name="product" value="param:product">
 <param name="sku" value="param:sku">
 <oparam name="output"> 
    <DROPLET bean=switch>
        <param name="value  value="price.pricingScheme">
        <oparam name="listPrice">
            <valueof param="price.listPrice" currency>no price</valueof>
        </oparam>
     </droplet>
 </oparam>
 </droplet>
 
Created: Mon Jan 29 10:55:54 2001

See Also:
PriceItemDroplet

Field Summary
static java.lang.String CLASS_VERSION
          Class version string
 
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
PriceDroplet()
          Constructs an instanceof PriceDroplet
 
Method Summary
 java.util.Locale getDefaultLocale()
          Returns property DefaultLocale.
 PriceListManager getPriceListManager()
          The PriceListManager used to obtain the price
 java.lang.String getProfilePriceListPropertyName()
          The name of the property in the profile that has the price list we should look in.
 boolean isUseDefaultPriceList()
          If the price list we need is null, this specifies whether or not to use the default price list.
 void service(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse)
          This method provides the default implementation of service, by dispatching to conventionally named methods which begin with "do".
 void setDefaultLocale(java.util.Locale pDefaultLocale)
          Sets property DefaultLocale
 void setPriceListManager(PriceListManager pPriceListManager)
           
 void setProfilePriceListPropertyName(java.lang.String pProfilePriceListPropertyName)
           
 void setUseDefaultPriceList(boolean pUseDefaultPriceList)
           
 
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, 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

PriceDroplet

public PriceDroplet()
Constructs an instanceof PriceDroplet

Method Detail

setPriceListManager

public void setPriceListManager(PriceListManager pPriceListManager)

getPriceListManager

public PriceListManager getPriceListManager()
The PriceListManager used to obtain the price


setProfilePriceListPropertyName

public void setProfilePriceListPropertyName(java.lang.String pProfilePriceListPropertyName)

getProfilePriceListPropertyName

public java.lang.String getProfilePriceListPropertyName()
The name of the property in the profile that has the price list we should look in.


setUseDefaultPriceList

public void setUseDefaultPriceList(boolean pUseDefaultPriceList)

isUseDefaultPriceList

public boolean isUseDefaultPriceList()
If the price list we need is null, this specifies whether or not to use the default price list. If true, use PriceListManager.automaticallyUseDefaultPriceList to determine this. If false, do not use the default price list.


setDefaultLocale

public void setDefaultLocale(java.util.Locale pDefaultLocale)
Sets property DefaultLocale


getDefaultLocale

public java.util.Locale getDefaultLocale()
Returns property DefaultLocale. If the property value is null, then JVM's default locale is returned.


service

public void service(DynamoHttpServletRequest pRequest,
                    DynamoHttpServletResponse pResponse)
             throws javax.servlet.ServletException,
                    java.io.IOException
Description copied from class: DynamoServlet
This method provides the default implementation of service, by dispatching to conventionally named methods which begin with "do".

Overrides:
service in class DynamoServlet
Parameters:
pRequest - the request to be processed
pResponse - the response object for this request
Throws:
javax.servlet.ServletException - an application specific error occurred processing this request
java.io.IOException - an error occurred reading data from the request or writing data to the response.