atg.commerce.collections.filter
Class ItemSiteFilter

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.service.collections.filter.CachedCollectionFilter
              extended by atg.commerce.collections.filter.ItemSiteFilter
All Implemented Interfaces:
atg.naming.AbsoluteNameable, NameContextBindingListener, NameContextElement, atg.naming.NameContextParentable, NameResolver, AdminableService, atg.nucleus.Configured, ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, VariableArgumentApplicationLogging, ComponentNameResolver, Service, ServiceListener, java.util.EventListener

public class ItemSiteFilter
extends CachedCollectionFilter

Implementation of CachedCollectionFilter which filters input products collection by their site IDs. This filter will return only products whose site IDs intersect with site IDs from the current sharing group defined by the shareableTypeId property. This filter can also be provided with a sites or siteScope parameter to filter based on the inputted sites rather than a shareableTypeId


Field Summary
static java.lang.String CLASS_VERSION
          Class version
protected  boolean mIncludeDisabledSites
           
protected  boolean mIncludeInactiveSites
           
protected  boolean mIncludeUnsitedItems
           
protected  java.lang.String mShareableTypeId
           
protected  SiteGroupManager mSiteGroupManager
           
protected  java.lang.String mSiteGroupsPropertyName
           
protected  SiteManager mSiteManager
           
protected  java.lang.String mSitesPropertyName
           
 
Fields inherited from class atg.service.collections.filter.CachedCollectionFilter
FILTER_CACHE_COMPONENT, mCache, mCacheEnabled
 
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
ItemSiteFilter()
           
 
Method Summary
 java.util.Collection generateFilteredCollection(java.util.Collection pUnfilteredCollection, java.lang.String pCollectionIdentifierKey, RepositoryItem pProfile)
          This method filters the passed in collection by the current site.
 java.util.Collection generateFilteredCollection(java.util.Collection pUnfilteredCollection, java.lang.String pCollectionIdentifierKey, RepositoryItem pProfile, java.util.Map pExtraParameters)
          This method filters the passed in collection by the current or passed in site.
 java.lang.String getShareableTypeId()
          This property contains a shareable ID to be used when determining sharing sites.
protected  SiteGroupManager getSiteGroupManager()
          Returns the SiteGroupManager instance
 java.lang.String getSiteGroupsPropertyName()
          Get the site group property name
 SiteManager getSiteManager()
          This property contains a reference to SiteManager to be used when determining active and disabled sites.
 java.lang.String getSitesPropertyName()
          This property contains the name of the property that holds references to an item's sites.
 boolean isIncludeDisabledSites()
          Returns the includeDisabledSites property.
 boolean isIncludeInactiveSites()
          Returns the includeInactiveSites property.
 boolean isIncludeUnsitedItems()
          Whether or not items without any site membership should be included in the results
 void setIncludeDisabledSites(boolean pIncludeDisabledSites)
          Sets the includeDisabledSites property.
 void setIncludeInactiveSites(boolean pIncludeInactiveSites)
          Sets the includeInactiveSites property.
 void setIncludeUnsitedItems(boolean pIncludeUnsitedItems)
          Set the IncludeUnsitedItems property
 void setShareableTypeId(java.lang.String pShareableTypeId)
           
 void setSiteGroupManager(SiteGroupManager pSiteGroupManager)
          Sets the SiteGroupManager instance
 void setSiteGroupsPropertyName(java.lang.String pSiteGroupsPropertyName)
          Sets the SiteGroupPropertyName
 void setSiteManager(SiteManager pSiteManager)
          Sets the SiteManager instance
 void setSitesPropertyName(java.lang.String pSitesPropertyName)
          Sets the sites property name
 
Methods inherited from class atg.service.collections.filter.CachedCollectionFilter
dumpCache, filterCollection, filterCollection, filterCollection, filterCollection, flushCache, generateCacheKey, generateCacheKey, generateContextKey, generateContextKey, generateNewCollectionObject, getCache, getDefaultProfile, isCacheEnabled, setCache, setCacheEnabled, shouldApplyFilter, shouldApplyFilter, stringIt
 
Methods inherited from class atg.nucleus.GenericService
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
 
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


mShareableTypeId

protected java.lang.String mShareableTypeId

mSitesPropertyName

protected java.lang.String mSitesPropertyName

mSiteGroupsPropertyName

protected java.lang.String mSiteGroupsPropertyName

mIncludeUnsitedItems

protected boolean mIncludeUnsitedItems

mIncludeDisabledSites

protected boolean mIncludeDisabledSites

mIncludeInactiveSites

protected boolean mIncludeInactiveSites

mSiteGroupManager

protected SiteGroupManager mSiteGroupManager

mSiteManager

protected SiteManager mSiteManager
Constructor Detail

ItemSiteFilter

public ItemSiteFilter()
Method Detail

getShareableTypeId

public java.lang.String getShareableTypeId()
This property contains a shareable ID to be used when determining sharing sites.

Returns:
current shareable type ID

setShareableTypeId

public void setShareableTypeId(java.lang.String pShareableTypeId)

setSitesPropertyName

public void setSitesPropertyName(java.lang.String pSitesPropertyName)
Sets the sites property name

Parameters:
pSitesPropertyName - the sites property name to set

getSitesPropertyName

public java.lang.String getSitesPropertyName()
This property contains the name of the property that holds references to an item's sites.

Returns:
'siteIds' property name

setSiteGroupsPropertyName

public void setSiteGroupsPropertyName(java.lang.String pSiteGroupsPropertyName)
Sets the SiteGroupPropertyName

Parameters:
pSiteGroupsPropertyName - the siteGroupsPropertyName to set

getSiteGroupsPropertyName

public java.lang.String getSiteGroupsPropertyName()
Get the site group property name

Returns:
the siteGroup property name

setIncludeUnsitedItems

public void setIncludeUnsitedItems(boolean pIncludeUnsitedItems)
Set the IncludeUnsitedItems property

Parameters:
pIncludeUnsitedItems - the includeUnsitedItems to set

isIncludeUnsitedItems

public boolean isIncludeUnsitedItems()
Whether or not items without any site membership should be included in the results

Returns:
true if items with no site memebership should be included

isIncludeDisabledSites

public boolean isIncludeDisabledSites()
Returns the includeDisabledSites property.

Returns:
the includeDisabledSites property.

setIncludeDisabledSites

public void setIncludeDisabledSites(boolean pIncludeDisabledSites)
Sets the includeDisabledSites property.

Parameters:
pIncludeDisabledSites - whether or not to filter out items that exist only on disabled sites. A value of true indicates that items should be retained in the collection even if all their sites are disabled.

isIncludeInactiveSites

public boolean isIncludeInactiveSites()
Returns the includeInactiveSites property.

Returns:
the includeInactiveSites property.

setIncludeInactiveSites

public void setIncludeInactiveSites(boolean pIncludeInactiveSites)
Sets the includeInactiveSites property.

Parameters:
pIncludeInactiveSites - whether or not to filter out items that exist only on inactive sites. A value of true indicates that items should be retained in the collection even if all their sites are inactive.

getSiteGroupManager

protected SiteGroupManager getSiteGroupManager()
Returns the SiteGroupManager instance

Returns:
the SiteGroupManager

setSiteGroupManager

public void setSiteGroupManager(SiteGroupManager pSiteGroupManager)
Sets the SiteGroupManager instance

Parameters:
pSiteGroupManager - the siteGroupManager to set

getSiteManager

public SiteManager getSiteManager()
This property contains a reference to SiteManager to be used when determining active and disabled sites.

Returns:
SiteManager instance

setSiteManager

public void setSiteManager(SiteManager pSiteManager)
Sets the SiteManager instance

Parameters:
pSiteManager - the SiteManager to set

generateFilteredCollection

public java.util.Collection generateFilteredCollection(java.util.Collection pUnfilteredCollection,
                                                       java.lang.String pCollectionIdentifierKey,
                                                       RepositoryItem pProfile)
                                                throws FilterException
This method filters the passed in collection by the current site.

Overrides:
generateFilteredCollection in class CachedCollectionFilter
Parameters:
pUnfilteredCollection - the collection to be filtered
pCollectionIdentifierKey - unused pProfile pCollectionIdentifierKey unused
pProfile - Repository item
Returns:
a collection items that have the current site
Throws:
FilterException - if the item does not have a sites property

generateFilteredCollection

public java.util.Collection generateFilteredCollection(java.util.Collection pUnfilteredCollection,
                                                       java.lang.String pCollectionIdentifierKey,
                                                       RepositoryItem pProfile,
                                                       java.util.Map pExtraParameters)
                                                throws FilterException
This method filters the passed in collection by the current or passed in site.

Overrides:
generateFilteredCollection in class CachedCollectionFilter
Parameters:
pUnfilteredCollection - the collection to be filtered
pCollectionIdentifierKey - unused pProfile pCollectionIdentifierKey unused
pExtraParameters - map containing key-value pairs with extra parameters
Returns:
a collection items that have the current site
Throws:
FilterException - if the item does not have a sites property