Class DefaultEmailContextFactory
java.lang.Object
de.hybris.platform.acceleratorservices.document.factory.impl.AbstractHybrisVelocityContextFactory
de.hybris.platform.acceleratorservices.process.email.context.impl.DefaultEmailContextFactory
- All Implemented Interfaces:
EmailContextFactory<BusinessProcessModel>
- Direct Known Subclasses:
ChineseEmailContextFactory
public class DefaultEmailContextFactory
extends AbstractHybrisVelocityContextFactory
implements EmailContextFactory<BusinessProcessModel>
Default factory used to create the velocity context for rendering emails
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreate(BusinessProcessModel businessProcessModel, EmailPageModel emailPageModel, RendererTemplateModel renderTemplate) Create the velocity context for rendering an email.protected org.springframework.context.ApplicationContextprotected EmailTemplateTranslationStrategyprotected LocalegetLocaleFromLanguageIsoCode(String languageIso) protected voidprotected voidprocessProperties(AbstractCMSComponentModel component, Map<String, Object> componentContext) protected voidprocessProperties(Locale locale, AbstractCMSComponentModel component, Map<String, Object> componentContext) protected voidrenderCMSSlotsIntoEmailContext(AbstractEmailContext<BusinessProcessModel> _emailContext, EmailPageModel emailPageModel, BusinessProcessModel businessProcessModel) protected StringrenderComponents(Locale locale, ContentSlotModel contentSlotModel, AbstractEmailContext<BusinessProcessModel> emailContext, BusinessProcessModel businessProcessModel) protected voidrenderTemplate(Locale locale, AbstractEmailContext<BusinessProcessModel> emailContext, StringWriter text, AbstractCMSComponentModel component, String renderTemplateCode, RendererTemplateModel renderTemplate, BaseSiteModel site) protected <T extends AbstractEmailContext<BusinessProcessModel>>
TresolveEmailContext(RendererTemplateModel renderTemplate) protected StringresolveRendererTemplateForComponent(AbstractCMSComponentModel component, BusinessProcessModel businessProcessModel) voidsetEmailContextVariables(Map<String, String> emailContextVariables) voidsetEmailTemplateTranslationStrategy(EmailTemplateTranslationStrategy emailTemplateTranslationStrategy) Methods inherited from class de.hybris.platform.acceleratorservices.document.factory.impl.AbstractHybrisVelocityContextFactory
appendTokensToBuffer, evaluateWithVelocity, getAttributeValue, getCmsComponentService, getCmsPageService, getContextResolutionStrategy, getModelService, getRendererService, getRendererTemplateDao, getSiteBaseUrlResolutionService, getTypeService, renderCMSSlotsIntoContext, renderCMSSlotsIntoContext, renderComponents, renderTemplate, setCmsComponentService, setCmsPageService, setContextName, setContextResolutionStrategy, setModelService, setRendererService, setRendererTemplateDao, setSiteBaseUrlResolutionService, setTypeService
-
Constructor Details
-
DefaultEmailContextFactory
public DefaultEmailContextFactory()
-
-
Method Details
-
create
public AbstractEmailContext<BusinessProcessModel> create(BusinessProcessModel businessProcessModel, EmailPageModel emailPageModel, RendererTemplateModel renderTemplate) Description copied from interface:EmailContextFactoryCreate the velocity context for rendering an email. ARendererTemplateModelis passed in that may contain the reference to one or more properties files for generating context data for the subject and body sections of the email.- Specified by:
createin interfaceEmailContextFactory<BusinessProcessModel>- Parameters:
businessProcessModel- the process modelemailPageModel- the CMS email pagerenderTemplate- the renderer template- Returns:
- the velocity context
-
resolveEmailContext
protected <T extends AbstractEmailContext<BusinessProcessModel>> T resolveEmailContext(RendererTemplateModel renderTemplate) -
getApplicationContext
protected org.springframework.context.ApplicationContext getApplicationContext()- Overrides:
getApplicationContextin classAbstractHybrisVelocityContextFactory
-
renderCMSSlotsIntoEmailContext
protected void renderCMSSlotsIntoEmailContext(AbstractEmailContext<BusinessProcessModel> _emailContext, EmailPageModel emailPageModel, BusinessProcessModel businessProcessModel) -
renderComponents
protected String renderComponents(Locale locale, ContentSlotModel contentSlotModel, AbstractEmailContext<BusinessProcessModel> emailContext, BusinessProcessModel businessProcessModel) -
renderTemplate
protected void renderTemplate(Locale locale, AbstractEmailContext<BusinessProcessModel> emailContext, StringWriter text, AbstractCMSComponentModel component, String renderTemplateCode, RendererTemplateModel renderTemplate, BaseSiteModel site) -
processProperties
protected void processProperties(Locale locale, AbstractCMSComponentModel component, Map<String, Object> componentContext) - Overrides:
processPropertiesin classAbstractHybrisVelocityContextFactory
-
processProperties
protected void processProperties(AbstractCMSComponentModel component, Map<String, Object> componentContext) -
getLocaleFromLanguageIsoCode
-
resolveRendererTemplateForComponent
protected String resolveRendererTemplateForComponent(AbstractCMSComponentModel component, BusinessProcessModel businessProcessModel) - Overrides:
resolveRendererTemplateForComponentin classAbstractHybrisVelocityContextFactory
-
parseVariablesIntoEmailContext
protected void parseVariablesIntoEmailContext(AbstractEmailContext<BusinessProcessModel> emailContext) -
getEmailContextVariables
-
setEmailContextVariables
-
getEmailTemplateTranslationStrategy
- Overrides:
getEmailTemplateTranslationStrategyin classAbstractHybrisVelocityContextFactory
-
setEmailTemplateTranslationStrategy
public void setEmailTemplateTranslationStrategy(EmailTemplateTranslationStrategy emailTemplateTranslationStrategy) - Overrides:
setEmailTemplateTranslationStrategyin classAbstractHybrisVelocityContextFactory
-