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 Constructor Description DefaultEmailContextFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AbstractEmailContext<BusinessProcessModel>create(BusinessProcessModel businessProcessModel, EmailPageModel emailPageModel, RendererTemplateModel renderTemplate)Create the velocity context for rendering an email.protected org.springframework.context.ApplicationContextgetApplicationContext()protected java.util.Map<java.lang.String,java.lang.String>getEmailContextVariables()protected EmailTemplateTranslationStrategygetEmailTemplateTranslationStrategy()protected java.util.LocalegetLocaleFromLanguageIsoCode(java.lang.String languageIso)protected voidparseVariablesIntoEmailContext(AbstractEmailContext<BusinessProcessModel> emailContext)protected voidprocessProperties(AbstractCMSComponentModel component, java.util.Map<java.lang.String,java.lang.Object> componentContext)protected voidprocessProperties(java.util.Locale locale, AbstractCMSComponentModel component, java.util.Map<java.lang.String,java.lang.Object> componentContext)protected voidrenderCMSSlotsIntoEmailContext(AbstractEmailContext<BusinessProcessModel> _emailContext, EmailPageModel emailPageModel, BusinessProcessModel businessProcessModel)protected java.lang.StringrenderComponents(java.util.Locale locale, ContentSlotModel contentSlotModel, AbstractEmailContext<BusinessProcessModel> emailContext, BusinessProcessModel businessProcessModel)protected voidrenderTemplate(java.util.Locale locale, AbstractEmailContext<BusinessProcessModel> emailContext, java.io.StringWriter text, AbstractCMSComponentModel component, java.lang.String renderTemplateCode, RendererTemplateModel renderTemplate, BaseSiteModel site)protected <T extends AbstractEmailContext<BusinessProcessModel>>
TresolveEmailContext(RendererTemplateModel renderTemplate)protected java.lang.StringresolveRendererTemplateForComponent(AbstractCMSComponentModel component, BusinessProcessModel businessProcessModel)voidsetEmailContextVariables(java.util.Map<java.lang.String,java.lang.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
-
-
-
-
Method Detail
-
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 java.lang.String renderComponents(java.util.Locale locale, ContentSlotModel contentSlotModel, AbstractEmailContext<BusinessProcessModel> emailContext, BusinessProcessModel businessProcessModel)
-
renderTemplate
protected void renderTemplate(java.util.Locale locale, AbstractEmailContext<BusinessProcessModel> emailContext, java.io.StringWriter text, AbstractCMSComponentModel component, java.lang.String renderTemplateCode, RendererTemplateModel renderTemplate, BaseSiteModel site)
-
processProperties
protected void processProperties(java.util.Locale locale, AbstractCMSComponentModel component, java.util.Map<java.lang.String,java.lang.Object> componentContext)- Overrides:
processPropertiesin classAbstractHybrisVelocityContextFactory
-
processProperties
protected void processProperties(AbstractCMSComponentModel component, java.util.Map<java.lang.String,java.lang.Object> componentContext)
-
getLocaleFromLanguageIsoCode
protected java.util.Locale getLocaleFromLanguageIsoCode(java.lang.String languageIso)
-
resolveRendererTemplateForComponent
protected java.lang.String resolveRendererTemplateForComponent(AbstractCMSComponentModel component, BusinessProcessModel businessProcessModel)
- Overrides:
resolveRendererTemplateForComponentin classAbstractHybrisVelocityContextFactory
-
parseVariablesIntoEmailContext
protected void parseVariablesIntoEmailContext(AbstractEmailContext<BusinessProcessModel> emailContext)
-
getEmailContextVariables
protected java.util.Map<java.lang.String,java.lang.String> getEmailContextVariables()
-
setEmailContextVariables
public void setEmailContextVariables(java.util.Map<java.lang.String,java.lang.String> emailContextVariables)
-
getEmailTemplateTranslationStrategy
protected EmailTemplateTranslationStrategy getEmailTemplateTranslationStrategy()
- Overrides:
getEmailTemplateTranslationStrategyin classAbstractHybrisVelocityContextFactory
-
setEmailTemplateTranslationStrategy
public void setEmailTemplateTranslationStrategy(EmailTemplateTranslationStrategy emailTemplateTranslationStrategy)
- Overrides:
setEmailTemplateTranslationStrategyin classAbstractHybrisVelocityContextFactory
-
-