Class DefaultSiteBuilderService

java.lang.Object
com.easydesk.sitebuilder.DefaultSiteBuilderService
All Implemented Interfaces:
SiteBuilderService

@Service("defaultSiteBuilderService") public class DefaultSiteBuilderService extends Object implements SiteBuilderService
DOCUMENT ME! 예전: Avalon 의 AbstractLogEnabled 를 상속하고 Configurable(db-settings.xml/app-settings.xml 경로), Initializable(경로 존재 확인), Contextualizable(urn:avalon:home 으로 applicationRoot 를 받음) 을 구현하여 Avalon/Merlin 컨테이너가 조립했음. 언마샬/마샬 시에도 Avalon 의 LogEnabled 를 구현한 모델 객체에 로거를 꽂아주는 Listener 를 썼다. 이후: 이 클래스 자체가 @Service 로 Spring 빈이 되므로, Configurable/Contextualizable 이 하던 일(설정값/컨텍스트 경로 주입)은 생성자의 @Value 파라미터로, Initializable#initialize() 는
Version:
$id: DefaultSiteBuilderService.java $Revision$, 07-06-17 8:08:07 PM KST
Author:
Youngho Cho
  • Constructor Details

    • DefaultSiteBuilderService

      public DefaultSiteBuilderService(@Value("${easydesk.sitebuilder.application-root}") String applicationRoot, @Value("${easydesk.sitebuilder.db-settings:easydesk-db-settings.xml}") String importDatabasePath, @Value("${easydesk.sitebuilder.app-settings:easydesk-app-settings.xml}") String importApplicationPath)
      Constructs a new service.
      Parameters:
      applicationRoot - 예전 Avalon 의 urn:avalon:home 에 해당하는 배포 루트 디렉터리
      importDatabasePath - applicationRoot 기준 db 설정 xml 상대 경로
      importApplicationPath - applicationRoot 기준 app 설정 xml 상대 경로
  • Method Details

    • getImportDatabase

      public ImportDatabase getImportDatabase() throws jakarta.xml.bind.JAXBException, IOException
      DOCUMENT ME!
      Specified by:
      getImportDatabase in interface SiteBuilderService
      Returns:
      DOCUMENT ME!
      Throws:
      jakarta.xml.bind.JAXBException
      IOException
    • getExportDatabase

      public String getExportDatabase() throws jakarta.xml.bind.JAXBException
      DOCUMENT ME!
      Specified by:
      getExportDatabase in interface SiteBuilderService
      Returns:
      DOCUMENT ME!
      Throws:
      jakarta.xml.bind.JAXBException
    • getImportApplication

      public ImportApplication getImportApplication() throws jakarta.xml.bind.JAXBException, IOException
      DOCUMENT ME!
      Specified by:
      getImportApplication in interface SiteBuilderService
      Returns:
      DOCUMENT ME!
      Throws:
      jakarta.xml.bind.JAXBException
      IOException
    • getExportApplication

      public String getExportApplication() throws jakarta.xml.bind.JAXBException
      DOCUMENT ME!
      Specified by:
      getExportApplication in interface SiteBuilderService
      Returns:
      DOCUMENT ME!
      Throws:
      jakarta.xml.bind.JAXBException
    • unmarshal

      protected void unmarshal(Class<?> clazz, InputStream inputStream) throws jakarta.xml.bind.JAXBException
      DOCUMENT ME!
      Parameters:
      inputStream - DOCUMENT ME!
      Throws:
      jakarta.xml.bind.JAXBException
    • marshal

      protected String marshal(Class<?> clazz) throws jakarta.xml.bind.JAXBException
      DOCUMENT ME!
      Returns:
      DOCUMENT ME!
      Throws:
      jakarta.xml.bind.JAXBException
    • initialize

      @PostConstruct public void initialize() throws IOException
      Spring bean lifecycle method. 예전 Avalon 의 Initializable#initialize() 를 대체한다.
      Throws:
      IOException