@Service(value="blStructuredContentService") public class StructuredContentServiceImpl extends AbstractContentService implements StructuredContentService
| Modifier and Type | Field and Description |
|---|---|
protected static String |
AND |
protected List<ArchivedStructuredContentPublisher> |
archivedStructuredContentListeners |
protected boolean |
automaticallyApproveAndPromoteStructuredContent |
protected List<StructuredContentRuleProcessor> |
contentRuleProcessors |
protected org.broadleafcommerce.common.locale.service.LocaleService |
localeService |
protected static org.apache.commons.logging.Log |
LOG |
protected org.broadleafcommerce.common.sandbox.dao.SandBoxDao |
sandBoxDao |
protected SandBoxItemDao |
sandBoxItemDao |
protected StaticAssetService |
staticAssetService |
protected net.sf.ehcache.Cache |
structuredContentCache |
protected StructuredContentDao |
structuredContentDao |
| Constructor and Description |
|---|
StructuredContentServiceImpl() |
| Modifier and Type | Method and Description |
|---|---|
StructuredContent |
addStructuredContent(StructuredContent content,
org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandbox)
This method is intended to be called from within the CMS
admin only.
|
protected void |
addStructuredContentListToCache(String key,
List<StructuredContentDTO> scDTOList) |
protected void |
buildFieldValues(StructuredContent sc,
StructuredContentDTO scDTO,
boolean secure) |
protected List<ItemCriteriaDTO> |
buildItemCriteriaDTOList(StructuredContent sc) |
protected String |
buildNameKey(org.broadleafcommerce.common.sandbox.domain.SandBox currentSandbox,
org.broadleafcommerce.common.locale.domain.Locale locale,
String contentType,
String contentName) |
protected String |
buildNameKey(StructuredContent sc) |
protected String |
buildRuleExpression(StructuredContent sc) |
protected StructuredContentDTO |
buildStructuredContentDTO(StructuredContent sc,
boolean secure)
Converts a StructuredContent into a StructuredContentDTO.
|
protected List<StructuredContentDTO> |
buildStructuredContentDTOList(List<StructuredContent> structuredContentList,
boolean secure)
Converts a list of structured content items to a list of structured content DTOs.
Internally calls buildStructuredContentDTO(...). |
protected String |
buildTypeKey(org.broadleafcommerce.common.sandbox.domain.SandBox currentSandbox,
org.broadleafcommerce.common.locale.domain.Locale locale,
String contentType) |
protected String |
buildTypeKey(StructuredContent sc) |
protected boolean |
checkForProductionSandbox(org.broadleafcommerce.common.sandbox.domain.SandBox dest) |
protected boolean |
checkForSandboxMatch(org.broadleafcommerce.common.sandbox.domain.SandBox src,
org.broadleafcommerce.common.sandbox.domain.SandBox dest) |
Long |
countContentItems(org.broadleafcommerce.common.sandbox.domain.SandBox sandbox,
org.hibernate.Criteria c)
Follows the same rules as
findContentItems. |
void |
deleteStructuredContent(StructuredContent content,
org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandbox)
If deleting and item where content.originalItemId != null
then the item is deleted from the database.
|
protected List<StructuredContentDTO> |
evaluateAndPriortizeContent(List<StructuredContentDTO> structuredContentList,
int count,
Map<String,Object> ruleDTOs) |
List<StructuredContent> |
findAllContentItems()
Finds all content items regardless of the
Sandbox they are a member of |
List<StructuredContent> |
findContentItems(org.broadleafcommerce.common.sandbox.domain.SandBox sandbox,
org.hibernate.Criteria c)
This method is intended to be called solely from the CMS admin.
|
Map<String,StructuredContentField> |
findFieldsByContentId(Long contentId)
Returns the fields associated with the passed in contentId.
|
protected org.broadleafcommerce.common.locale.domain.Locale |
findLanguageOnlyLocale(org.broadleafcommerce.common.locale.domain.Locale locale) |
StructuredContent |
findStructuredContentById(Long contentId)
Returns the StructuredContent item associated with the passed in id.
|
StructuredContentType |
findStructuredContentTypeById(Long id)
Returns the
StructuredContentType associated with the passed in id. |
StructuredContentType |
findStructuredContentTypeByName(String name)
Returns the
StructuredContentType associated with the passed in
String value. |
List<ArchivedStructuredContentPublisher> |
getArchivedStructuredContentListeners() |
List<StructuredContentRuleProcessor> |
getContentRuleProcessors() |
protected org.broadleafcommerce.common.sandbox.domain.SandBox |
getProductionSandBox(org.broadleafcommerce.common.sandbox.domain.SandBox currentSandBox) |
protected net.sf.ehcache.Cache |
getStructuredContentCache() |
protected List<StructuredContentDTO> |
getStructuredContentListFromCache(String key) |
boolean |
isAutomaticallyApproveAndPromoteStructuredContent() |
protected boolean |
isProductionSandBox(org.broadleafcommerce.common.sandbox.domain.SandBox dest) |
void |
itemPromoted(SandBoxItem sandBoxItem,
org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandBox) |
void |
itemRejected(SandBoxItem sandBoxItem,
org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandBox) |
void |
itemReverted(SandBoxItem sandBoxItem) |
List<StructuredContentDTO> |
lookupStructuredContentItemsByName(org.broadleafcommerce.common.sandbox.domain.SandBox sandBox,
String contentName,
org.broadleafcommerce.common.locale.domain.Locale locale,
Integer count,
Map<String,Object> ruleDTOs,
boolean secure)
This method returns content by name only.
|
List<StructuredContentDTO> |
lookupStructuredContentItemsByName(org.broadleafcommerce.common.sandbox.domain.SandBox sandBox,
StructuredContentType contentType,
String contentName,
org.broadleafcommerce.common.locale.domain.Locale locale,
Integer count,
Map<String,Object> ruleDTOs,
boolean secure)
This method returns content by name and type.
|
List<StructuredContentDTO> |
lookupStructuredContentItemsByType(org.broadleafcommerce.common.sandbox.domain.SandBox sandBox,
StructuredContentType contentType,
org.broadleafcommerce.common.locale.domain.Locale locale,
Integer count,
Map<String,Object> ruleDTOs,
boolean secure)
This method returns content
Returns active content items for the passed in sandbox that match the passed in type. |
protected List<StructuredContentDTO> |
mergeContent(List<StructuredContentDTO> productionList,
List<StructuredContent> sandboxList,
boolean secure) |
protected boolean |
processContentRules(StructuredContentDTO sc,
Map<String,Object> ruleDTOs) |
protected void |
productionItemArchived(StructuredContent sc) |
void |
removeItemFromCache(String nameKey,
String typeKey)
Call to evict both secure and non-secure SC items matching
the passed in key.
|
void |
removeStructuredContentFromCache(StructuredContent sc)
Call to evict an item from the cache.
|
List<StructuredContentType> |
retrieveAllStructuredContentTypes() |
StructuredContentType |
saveStructuredContentType(StructuredContentType type)
Saves the given type and returns the merged instance
|
void |
setArchivedStructuredContentListeners(List<ArchivedStructuredContentPublisher> archivedStructuredContentListeners) |
void |
setAutomaticallyApproveAndPromoteStructuredContent(boolean automaticallyApproveAndPromoteStructuredContent) |
void |
setContentRuleProcessors(List<StructuredContentRuleProcessor> contentRuleProcessors) |
StructuredContent |
updateStructuredContent(StructuredContent content,
org.broadleafcommerce.common.sandbox.domain.SandBox destSandbox)
This method is intended to be called from within the CMS
admin only.
|
countItems, findItemsprotected static final org.apache.commons.logging.Log LOG
protected static String AND
protected StructuredContentDao structuredContentDao
protected SandBoxItemDao sandBoxItemDao
protected org.broadleafcommerce.common.sandbox.dao.SandBoxDao sandBoxDao
protected StaticAssetService staticAssetService
protected org.broadleafcommerce.common.locale.service.LocaleService localeService
protected List<StructuredContentRuleProcessor> contentRuleProcessors
@Value(value="${automatically.approve.structured.content}")
protected boolean automaticallyApproveAndPromoteStructuredContent
protected net.sf.ehcache.Cache structuredContentCache
protected List<ArchivedStructuredContentPublisher> archivedStructuredContentListeners
public StructuredContent findStructuredContentById(Long contentId)
StructuredContentServicefindStructuredContentById in interface StructuredContentServicecontentId - - The id of the content item.public StructuredContentType findStructuredContentTypeById(Long id)
StructuredContentServiceStructuredContentType associated with the passed in id.findStructuredContentTypeById in interface StructuredContentServiceid - - The id of the content type.StructuredContentType.public StructuredContentType findStructuredContentTypeByName(String name)
StructuredContentServiceStructuredContentType associated with the passed in
String value.findStructuredContentTypeByName in interface StructuredContentServicename - - The name of the content type.StructuredContentType.public List<StructuredContentType> retrieveAllStructuredContentTypes()
retrieveAllStructuredContentTypes in interface StructuredContentServiceStructuredContentTypespublic Map<String,StructuredContentField> findFieldsByContentId(Long contentId)
StructuredContentServicefindFieldsByContentId in interface StructuredContentServicecontentId - - The id of the content.public List<StructuredContent> findContentItems(org.broadleafcommerce.common.sandbox.domain.SandBox sandbox, org.hibernate.Criteria c)
StructuredContentServiceSandBoxType of
production is passed in, only those items in that SandBox are returned.
findContentItems in interface StructuredContentServicesandbox - - the sandbox to find structured content items (null indicates items that are in production for
sites that are single tenant.c - - the criteria used to search for contentpublic List<StructuredContent> findAllContentItems()
StructuredContentServiceSandbox they are a member offindAllContentItems in interface StructuredContentServicepublic Long countContentItems(org.broadleafcommerce.common.sandbox.domain.SandBox sandbox, org.hibernate.Criteria c)
StructuredContentServicefindContentItems.countContentItems in interface StructuredContentServicepublic StructuredContent addStructuredContent(StructuredContent content, org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandbox)
StructuredContentServiceaddStructuredContent in interface StructuredContentServicepublic StructuredContent updateStructuredContent(StructuredContent content, org.broadleafcommerce.common.sandbox.domain.SandBox destSandbox)
StructuredContentServiceupdateStructuredContent in interface StructuredContentServicepublic StructuredContentType saveStructuredContentType(StructuredContentType type)
saveStructuredContentType in interface StructuredContentServiceprotected boolean checkForSandboxMatch(org.broadleafcommerce.common.sandbox.domain.SandBox src,
org.broadleafcommerce.common.sandbox.domain.SandBox dest)
protected boolean checkForProductionSandbox(org.broadleafcommerce.common.sandbox.domain.SandBox dest)
public void deleteStructuredContent(StructuredContent content, org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandbox)
StructuredContentServicedeleteStructuredContent in interface StructuredContentServiceprotected String buildRuleExpression(StructuredContent sc)
protected List<ItemCriteriaDTO> buildItemCriteriaDTOList(StructuredContent sc)
protected void buildFieldValues(StructuredContent sc, StructuredContentDTO scDTO, boolean secure)
protected List<StructuredContentDTO> buildStructuredContentDTOList(List<StructuredContent> structuredContentList, boolean secure)
structuredContentList - secure - protected StructuredContentDTO buildStructuredContentDTO(StructuredContent sc, boolean secure)
sc - secure - protected List<StructuredContentDTO> mergeContent(List<StructuredContentDTO> productionList, List<StructuredContent> sandboxList, boolean secure)
protected List<StructuredContentDTO> evaluateAndPriortizeContent(List<StructuredContentDTO> structuredContentList, int count, Map<String,Object> ruleDTOs)
protected boolean processContentRules(StructuredContentDTO sc, Map<String,Object> ruleDTOs)
public List<StructuredContentDTO> lookupStructuredContentItemsByType(org.broadleafcommerce.common.sandbox.domain.SandBox sandBox, StructuredContentType contentType, org.broadleafcommerce.common.locale.domain.Locale locale, Integer count, Map<String,Object> ruleDTOs, boolean secure)
StructuredContentServiceSandBoxType of
production is passed in, only those items in that SandBox are returned.
lookupStructuredContentItemsByType in interface StructuredContentServicesandBox - - the sandbox to find structured content items (null indicates items that are in production for
sites that are single tenant.contentType - - the type of content to returncount - - the max number of content items to returnruleDTOs - - a Map of objects that will be used in MVEL processing.secure - - set to true if the request is being served over httpsDisplayContentTagpublic List<StructuredContentDTO> lookupStructuredContentItemsByName(org.broadleafcommerce.common.sandbox.domain.SandBox sandBox, StructuredContentType contentType, String contentName, org.broadleafcommerce.common.locale.domain.Locale locale, Integer count, Map<String,Object> ruleDTOs, boolean secure)
StructuredContentServiceSandBoxType of
production is passed in, only those items in that SandBox are returned.
lookupStructuredContentItemsByName in interface StructuredContentServicesandBox - - the sandbox to find structured content items (null indicates items that are in production for
sites that are single tenant.contentType - - the type of content to returncontentName - - the name of content to returncount - - the max number of content items to returnruleDTOs - - a Map of objects that will be used in MVEL processing.secure - - set to true if the request is being served over httpsDisplayContentTagpublic List<StructuredContentDTO> lookupStructuredContentItemsByName(org.broadleafcommerce.common.sandbox.domain.SandBox sandBox, String contentName, org.broadleafcommerce.common.locale.domain.Locale locale, Integer count, Map<String,Object> ruleDTOs, boolean secure)
StructuredContentServiceSandBoxType of
production is passed in, only those items in that SandBox are returned.
lookupStructuredContentItemsByName in interface StructuredContentServicesandBox - - the sandbox to find structured content items (null indicates items that are in production for
sites that are single tenant.contentName - - the name of content to returncount - - the max number of content items to returnruleDTOs - - a Map of objects that will be used in MVEL processing.secure - - set to true if the request is being served over httpsDisplayContentTagprotected org.broadleafcommerce.common.sandbox.domain.SandBox getProductionSandBox(org.broadleafcommerce.common.sandbox.domain.SandBox currentSandBox)
protected boolean isProductionSandBox(org.broadleafcommerce.common.sandbox.domain.SandBox dest)
protected void productionItemArchived(StructuredContent sc)
public void itemPromoted(SandBoxItem sandBoxItem, org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandBox)
itemPromoted in interface SandBoxItemListenerpublic void itemRejected(SandBoxItem sandBoxItem, org.broadleafcommerce.common.sandbox.domain.SandBox destinationSandBox)
itemRejected in interface SandBoxItemListenerpublic void itemReverted(SandBoxItem sandBoxItem)
itemReverted in interface SandBoxItemListenerpublic List<StructuredContentRuleProcessor> getContentRuleProcessors()
public void setContentRuleProcessors(List<StructuredContentRuleProcessor> contentRuleProcessors)
protected net.sf.ehcache.Cache getStructuredContentCache()
protected String buildNameKey(StructuredContent sc)
protected String buildTypeKey(StructuredContent sc)
protected String buildNameKey(org.broadleafcommerce.common.sandbox.domain.SandBox currentSandbox, org.broadleafcommerce.common.locale.domain.Locale locale, String contentType, String contentName)
protected String buildTypeKey(org.broadleafcommerce.common.sandbox.domain.SandBox currentSandbox, org.broadleafcommerce.common.locale.domain.Locale locale, String contentType)
protected void addStructuredContentListToCache(String key, List<StructuredContentDTO> scDTOList)
protected List<StructuredContentDTO> getStructuredContentListFromCache(String key)
public void removeStructuredContentFromCache(StructuredContent sc)
sc - public void removeItemFromCache(String nameKey, String typeKey)
removeItemFromCache in interface StructuredContentServicenameKey - typeKey - - key for a type of content itempublic List<ArchivedStructuredContentPublisher> getArchivedStructuredContentListeners()
public void setArchivedStructuredContentListeners(List<ArchivedStructuredContentPublisher> archivedStructuredContentListeners)
public boolean isAutomaticallyApproveAndPromoteStructuredContent()
isAutomaticallyApproveAndPromoteStructuredContent in interface StructuredContentServicepublic void setAutomaticallyApproveAndPromoteStructuredContent(boolean automaticallyApproveAndPromoteStructuredContent)
setAutomaticallyApproveAndPromoteStructuredContent in interface StructuredContentServiceprotected org.broadleafcommerce.common.locale.domain.Locale findLanguageOnlyLocale(org.broadleafcommerce.common.locale.domain.Locale locale)
Copyright © 2019. All rights reserved.