/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.vertical.adminweb.handlers.preview; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import com.enonic.esl.containers.ExtendedMap; import com.enonic.cms.core.portal.rendering.PageRendererFactory; import com.enonic.cms.core.portal.ticket.TicketGenerator; import com.enonic.cms.core.preview.PreviewService; import com.enonic.cms.core.resolver.deviceclass.DeviceClassResolverService; import com.enonic.cms.core.resolver.locale.LocaleResolverService; import com.enonic.cms.core.security.SecurityService; import com.enonic.cms.core.time.TimeService; import com.enonic.cms.store.dao.ContentDao; import com.enonic.cms.store.dao.LanguageDao; import com.enonic.cms.store.dao.MenuItemDao; import com.enonic.cms.store.dao.PageTemplateDao; import com.enonic.cms.store.dao.PortletDao; import com.enonic.cms.store.dao.SiteDao; @Component public class PreviewPageHandlerFactory { @Autowired private ContentDao contentDao; @Autowired private MenuItemDao menuItemDao; @Autowired private PageTemplateDao pageTemplateDao; @Autowired private PortletDao portletDao; @Autowired private SiteDao siteDao; @Autowired private LanguageDao languageDao; @Autowired private TimeService timeService; @Autowired private SecurityService securityService; @Autowired private PageRendererFactory pageRendererFactory; @Autowired private LocaleResolverService localeResolverService; @Autowired private DeviceClassResolverService deviceClassResolverService; @Value("${cms.name.transliterate}") private boolean transliterate; @Autowired private PreviewService previewService; public PreviewPageHandler create( final HttpServletRequest httpRequest, final ExtendedMap formItems ) { PreviewPageHandler previewPageHandler = new PreviewPageHandler(); previewPageHandler.setPreviewService( previewService ); previewPageHandler.setTicketId( TicketGenerator.getOrGenerate( httpRequest ) ); previewPageHandler.setTransliterate( transliterate ); previewPageHandler.setHttpRequest( httpRequest ); previewPageHandler.setContentDao( contentDao ); previewPageHandler.setLanguageDao( languageDao ); previewPageHandler.setMenuItemDao( menuItemDao ); previewPageHandler.setPageTemplateDao( pageTemplateDao ); previewPageHandler.setPortletDao( portletDao ); previewPageHandler.setSiteDao( siteDao ); previewPageHandler.setTimeService( timeService ); previewPageHandler.setPreviewer( securityService.getLoggedInAdminConsoleUserAsEntity() ); previewPageHandler.setLocaleResolverService( localeResolverService ); previewPageHandler.setDeviceClassResolverService( deviceClassResolverService ); previewPageHandler.setPageRendererFactory( pageRendererFactory ); previewPageHandler.setFormItems( formItems ); return previewPageHandler; } }