atg.projects.store.droplet
Class DocumentLinksDroplet

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.repository.seo.ItemLink
                              extended by atg.repository.seo.CanonicalItemLink
                                  extended by atg.projects.store.droplet.DocumentLinksDroplet
All Implemented Interfaces:
atg.naming.AbsoluteNameable, atg.naming.NameContextBindingListener, atg.naming.NameContextElement, atg.naming.NameContextParentable, atg.naming.NameResolver, atg.nucleus.AdminableService, atg.nucleus.Configured, 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 DocumentLinksDroplet
extends atg.repository.seo.CanonicalItemLink

This droplet returns next canonical links: 1) home - Homepage address 2) up - If PDP, last item from breadcrumbs; if CDP, last but one item from breadcrumbs. Rendered if producId or categoryId is set. 3) chapter - Link to top-level category (item with index=1). Rendered if producId or categoryId is set. 4) section - Link to current category (last item in breadcrumbs). Rendered if producId or categoryId is set. 5) prev - If productId is set, link to previous product (if any) returned by the ProductNeighboursDroplet 6) next - If productId is set, link to next product (if any) returned by the ProductNeighboursDroplet 7) canonical - The canonical link for product or category 8) alternate - The canonical link for the same product or category, but with different locale

This droplet takes the following input parameters

currentCategory
The currently viewed category
currentProduct
The currently viewed product
currentSiteId
The id of current site

Output parameters:

rel
link rel attribute. It can take flowing values: home, up, chapter, section, prev, next, canonical, alternate
href
Contains the link href attribute
hreflang
Rendered only for links with rel="alternate". Contains the link langhref attribute.
lang
Rendered only for links with rel="alternate". Contains the link lang attribute.

Open parameters

output
Rendered if some link was generated
empty
Rendered if no links were generated

Version:
$Id: //hosting-blueprint/B2CBlueprint/version/10.2.1/EStore/src/atg/projects/store/droplet/DocumentLinksDroplet.java#3 $$Change: 795999 $
Author:
ATG

Field Summary
static java.lang.String CLASS_VERSION
          Class version string
 
Fields inherited from class atg.repository.seo.ItemLink
mItemDescriptorToNameMap, S_EMPTY, S_ERROR, S_ERROR_MESSAGE, S_ID, S_ITEM, S_ITEM_DESCRIPTOR_NAME, S_OUTPUT, S_REPOSITORY, S_REPOSITORY_NAME, S_SITE_ID, S_URL
 
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
DocumentLinksDroplet()
           
 
Method Summary
 atg.commerce.catalog.CatalogNavHistory getCatalogNavHistory()
           
 DocumentLinksService getDocumentLinksService()
           
 atg.servlet.RequestLocale getRequestLocale()
           
 atg.multisite.Site getSite()
           
 atg.multisite.SiteURLManager getSiteURLManager()
          Gets the SiteURLManager
 atg.service.collections.validator.CollectionObjectValidator[] getValidators()
           
 void service(atg.servlet.DynamoHttpServletRequest pRequest, atg.servlet.DynamoHttpServletResponse pResponse)
          This method provides the implementation of service Parameters: pRequest the request to be processed pResponse the response object for this request Throws: ServletException - an application specific error occurred processing this request IOException - an error occurred reading data from the request or writing data to the response.
 void setCatalogNavHistory(atg.commerce.catalog.CatalogNavHistory pCatalogNavHistory)
           
 void setDocumentLinksService(DocumentLinksService pDocumentLinksService)
           
 void setRequestLocale(atg.servlet.RequestLocale pRequestLocale)
           
 void setSite(atg.multisite.Site pSite)
           
 void setSiteURLManager(atg.multisite.SiteURLManager pSiteURLManager)
          Sets the SiteURLManager
 void setValidators(atg.service.collections.validator.CollectionObjectValidator[] pValidators)
           
 
Methods inherited from class atg.repository.seo.CanonicalItemLink
doStartService, getItemDescriptorNameToUrlTemplateMap, getTemplate, getTemplateMapper, setItemDescriptorNameToUrlTemplateMap
 
Methods inherited from class atg.repository.seo.ItemLink
getBestFitTemplateMapper, getDefaultItemDescriptorName, getDefaultRepository, getDefaultWebApp, getItemDescriptorName, getItemDescriptorNameToMapperMap, getItemLookup, getRepositoryName, getSiteLookup, getSiteManager, getSpaceMapping, populateParams, populateParams, setDefaultItemDescriptorName, setDefaultRepository, setDefaultWebApp, setItemDescriptorNameToMapperMap, setSiteManager, setSpaceMapping
 
Methods inherited from class atg.servlet.DynamoServlet
doDelete, doGet, doPost, doPut, getParameter, getParameters, getServletContext, init, service, service, setParameter
 
Methods inherited from class atg.nucleus.servlet.ServletService
destroy, getServletConfig, getServletInfo, 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, 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
 
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, 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

DocumentLinksDroplet

public DocumentLinksDroplet()
Method Detail

getCatalogNavHistory

public atg.commerce.catalog.CatalogNavHistory getCatalogNavHistory()
Returns:
the catalogNavHistory

setCatalogNavHistory

public void setCatalogNavHistory(atg.commerce.catalog.CatalogNavHistory pCatalogNavHistory)
Parameters:
pCatalogNavHistory - the catalogNavHistory to set

getSite

public atg.multisite.Site getSite()
Returns:
the site

setSite

public void setSite(atg.multisite.Site pSite)
Parameters:
pSite - the site to set

setRequestLocale

public void setRequestLocale(atg.servlet.RequestLocale pRequestLocale)
Parameters:
pRequestLocale - - request locale.

getRequestLocale

public atg.servlet.RequestLocale getRequestLocale()
Returns:
the request locale.

getDocumentLinksService

public DocumentLinksService getDocumentLinksService()
Returns:
the documentLinksService

setDocumentLinksService

public void setDocumentLinksService(DocumentLinksService pDocumentLinksService)
Parameters:
pDocumentLinksService - the documentLinksService to set

getSiteURLManager

public atg.multisite.SiteURLManager getSiteURLManager()
Gets the SiteURLManager

Returns:
the siteURLManager

setSiteURLManager

public void setSiteURLManager(atg.multisite.SiteURLManager pSiteURLManager)
Sets the SiteURLManager

Parameters:
pSiteURLManager - the siteURLManager to set

getValidators

public atg.service.collections.validator.CollectionObjectValidator[] getValidators()
Returns:
the validators

setValidators

public void setValidators(atg.service.collections.validator.CollectionObjectValidator[] pValidators)
Parameters:
validators - the validators to set

service

public void service(atg.servlet.DynamoHttpServletRequest pRequest,
                    atg.servlet.DynamoHttpServletResponse pResponse)
             throws javax.servlet.ServletException,
                    java.io.IOException
This method provides the implementation of service Parameters: pRequest the request to be processed pResponse the response object for this request Throws: ServletException - an application specific error occurred processing this request IOException - an error occurred reading data from the request or writing data to the response.

Overrides:
service in class atg.repository.seo.ItemLink
Throws:
javax.servlet.ServletException
java.io.IOException