설계도구

설계도구에서 커스터마이징 할 수 있는 영역을 제공합니다.

1. 제공되는 커스터마이징 목록(11)

설계도구에서 제공되는 커스터마이징 영역 목록
기능 설명

bindDesignExcelExportProvider

설계도구의 설계서 파일을 엑셀로 내보내기할 때 필요한 기능을 제공하는 제공자를 바인딩합니다.

bindDesignExcelImportProvider

엑셀로 설계된 설계서를 설계도구의 설계서 파일로 변환할때 필요한 기능을 제공하는 제공자를 바인딩합니다.

bindDesignNewProjectExtension

설계 프로젝트 생성 마법사로 프로젝트를 생성할 때, 프로젝트 생성 전/후 처리 모듈을 제공하는 확장기능을 바인딩합니다.

bindDesignPerspectiveFactory

설계도구 퍼스펙티브 구성(뷰, 마법사 숏컷 등)을 할 수 있는 팩토리를 바인딩합니다.

bindDesignerCodeGeneratorProvider

컨트롤러, 서비스, 컴포넌트, DBIO 등의 코드를 생성하기 위한 생성기를 바인딩합니다.

bindDesignerElementLogicalNameProvider

컨트롤러, 서비스, 컴포넌트, DBIO 등의 논리 이름을 결정하는 제공자를 바인딩합니다.

bindDesignerElementPhysicalNameProvider

컨트롤러, 서비스, 컴포넌트, DBIO 등의 물리 이름을 결정하는 제공자를 바인딩합니다.

bindDesignerExportCreatorProvider

설계서 파일을 엑셀 파일로 내보내기를 위한 생성기 제공자를 바인딩합니다.

bindDesignerExtendedNodeDefinition

확장 노드의 이미지, 테두리 색, 배경색 등을 정의하는 모듈을 바인딩합니다.

bindDesignerIoFieldCreatorProvider

IO필드를 생성하기 위한 제공자를 반환합니다.

bindDesignerValidatorProvider

설계서를 검증하기 위한 검증기를 제공하는 제공자를 바인딩합니다.

2. 상세

메소드의 기능을 확인하고 필요한 부분을 커스터마이징 할 수 있습니다.

2.1. bindDesignExcelExportProvider

설계도구의 설계서 파일을 엑셀로 내보내기할 때 필요한 기능을 제공하는 제공자를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignerExcelExportProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.designer.excel.extensions.impl.BxmDesignerExcelExportProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerExcelExportProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.DesignExcelExportModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.DesignerExcelConverterOptions;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignFileReader;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignModelCalculator;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignModelToExcelConverter;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IExcelColumnSectorProvider;
                import com.bankwareglobal.ide.bxframework.se.designer.excel.extensions.impl.BxmDesignerExcelExportProvider;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDesignFileReader;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDesignModelCalculator;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDesignModelToExcelConverter;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtExcelColumnSectorProvider;

                /**
                 * 설계도구의 설계서 파일을 엑셀로 내보내기할 때 필요한 기능을 제공하는 제공자
                 */
                public class ExtDesignerExcelExportProvider extends BxmDesignerExcelExportProvider {

                    /**
                     * 설계서 파일을 읽어들이는 리더를 반환한다.
                     */
                    @Override
                    public IDesignFileReader createDesignFileReader(DesignExcelExportModel model) {
                        return new ExtDesignFileReader(model);
                    }

                    /**
                     * 읽어들인 디자인 모델을 엑셀로 변환하는 컨버터를 반환합니다.
                     */
                    @Override
                    public IDesignModelToExcelConverter createDesignModelToExcelConverter(DesignerExcelConverterOptions options) {
                        return new ExtDesignModelToExcelConverter(options);
                    }

                    /**
                     * 설계서 파일에서 모델, 값을 엑셀 설계서 파일의 셀 값으로 변환하는 계산기를 반환합니다.
                     */
                    @Override
                    public IDesignModelCalculator createDesignModelCalculator() {
                        return new ExtDesignModelCalculator();
                    }

                    /**
                     * 엑셀 컬럼 섹터 제공자를 반환합니다.
                     */
                    @Override
                    public IExcelColumnSectorProvider createExcelColumnSectorProvider() {
                        return new ExtExcelColumnSectorProvider();
                    }

                    /**
                     * 엑셀 설계서 파일 변환 옵션을 반환합니다.
                     */
                    @Override
                    public DesignerExcelConverterOptions createBaseDesignerExcelConverterOptions() {
                        return super.createBaseDesignerExcelConverterOptions();
                    }
                }

4. 재구현된 메소드 목록(5)

재구현된 메소드 목록
메소드 이름 설명

createDesignFileReader

설계서 파일을 읽어들이는 리더를 반환한다.

createDesignModelToExcelConverter

읽어들인 디자인 모델을 엑셀로 변환하는 컨버터를 반환합니다.

createDesignModelCalculator

설계서 파일에서 모델, 값을 엑셀 설계서 파일의 셀 값으로 변환하는 계산기를 반환합니다.

createExcelColumnSectorProvider

엑셀 컬럼 섹터 제공자를 반환합니다.

createBaseDesignerExcelConverterOptions

엑셀 설계서 파일 변환 옵션을 반환합니다.

2.2. bindDesignExcelImportProvider

엑셀로 설계된 설계서를 설계도구의 설계서 파일로 변환할때 필요한 기능을 제공하는 제공자를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignerExcelImportProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.designer.excel.extensions.impl.BxmDesignerExcelImportProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerExcelImportProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.DesignExcelImportModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.DesignerExcelReaderOptions;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignModelAppender;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignerCellValueCalculator;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDesignerExcelReader;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IDocumentDecryptionHelper;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.excel.extensions.IExcelToDesignModelConverter;
                import com.bankwareglobal.ide.bxframework.se.designer.excel.extensions.impl.BxmDesignerExcelImportProvider;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDesignModelAppender;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDesignerCellValueCalculator;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDesignerExcelReader;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtDocumentDecryptionHelper;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.excel.ExtExcelToDesignModelConverter;

                /**
                 * 엑셀로 설계된 설계서를 설계도구의 설계서 파일로 변환할때 필요한 기능을 제공하는 제공자
                 */
                public class ExtDesignerExcelImportProvider extends BxmDesignerExcelImportProvider {

                    /**
                     * 엑셀 설계서 파일을 읽어들이는 리더를 반환합니다.
                     */
                    @Override
                    public IDesignerExcelReader createDesignerExcelReader(DesignerExcelReaderOptions options) {
                        return new ExtDesignerExcelReader(options);
                    }

                    /**
                     * 읽어들인 엑셀 설계서 파일을 디자인 모델로 변환해주는 컨버터를 반환합니다.
                     */
                    @Override
                    public IExcelToDesignModelConverter createExcelToDesignModelConverter(DesignExcelImportModel model) {
                        return new ExtExcelToDesignModelConverter(model);
                    }

                    /**
                     * 엑셀 설계서의 셀 값을 설계서 파일에서 사용하는 모델, 값으로 변환해주는 계산기를 반환합니다.
                     */
                    @Override
                    public IDesignerCellValueCalculator createDesignerCellValueCalculator() {
                        return new ExtDesignerCellValueCalculator();
                    }

                    /**
                     * 엑셀 설계서의 셀 값을 설계서 파일에서 사용하는 모델, 값으로 변환해주는 계산기를 반환합니다.
                     */
                    @Override
                    public IDesignModelAppender createDesignModelAppender() {
                        return new ExtDesignModelAppender();
                    }

                    /**
                     * 엑셀 파일 읽기 옵션을 반환합니다.
                     */
                    @Override
                    public DesignerExcelReaderOptions createBaseDesignerExcelReaderOptions() {
                        return super.createBaseDesignerExcelReaderOptions();
                    }

                    /**
                     * 문서 복호화 모듈을 반환합니다.
                     */
                    @Override
                    public IDocumentDecryptionHelper getDocumentDecryptionHelper() {
                        return new ExtDocumentDecryptionHelper();
                    }
                }

4. 재구현된 메소드 목록(6)

재구현된 메소드 목록
메소드 이름 설명

createDesignerExcelReader

엑셀 설계서 파일을 읽어들이는 리더를 반환합니다.

createExcelToDesignModelConverter

읽어들인 엑셀 설계서 파일을 디자인 모델로 변환해주는 컨버터를 반환합니다.

createDesignerCellValueCalculator

엑셀 설계서의 셀 값을 설계서 파일에서 사용하는 모델, 값으로 변환해주는 계산기를 반환합니다.

createDesignModelAppender

엑셀 설계서의 셀 값을 설계서 파일에서 사용하는 모델, 값으로 변환해주는 계산기를 반환합니다.

createBaseDesignerExcelReaderOptions

엑셀 파일 읽기 옵션을 반환합니다.

getDocumentDecryptionHelper

문서 복호화 모듈을 반환합니다.

2.3. bindDesignNewProjectExtension

설계 프로젝트 생성 마법사로 프로젝트를 생성할 때, 프로젝트 생성 전/후 처리 모듈을 제공하는 확장기능을 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.ui.extensions.IDesignNewProjectExtension

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignNewProjectExtension

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignNewProjectExtension

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import org.eclipse.core.runtime.IProgressMonitor;
                import org.eclipse.jdt.core.IJavaProject;

                import com.bankwareglobal.ide.bxframework.core.designer.model.Application;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.extensions.IDesignNewProjectExtension;
                import com.bankwareglobal.ide.bxframework.core.model.AbstractProjectModel;

                public class ExtDesignNewProjectExtension
                implements IDesignNewProjectExtension {

                    /**
                     * 새로운 설계서 마법사를 통해 프로젝트를 생성 전 생성 작업을 작성합니다.
                     */
                    @Override
                    public void doBeforeCreation(
                            Application application
                            , AbstractProjectModel projectModel
                            , IProgressMonitor monitor
                            )
                    {

                    }

                    /**
                     * 새로운 설계서 마법사를 통해 프로젝트를 생성 후 생성 작업을 작성합니다.
                     */
                    @Override
                    public void doAfterCreation(
                            IJavaProject javaProject
                            , AbstractProjectModel projectModel
                            , IProgressMonitor monitor
                            )
                    {

                    }
                }

4. 재구현된 메소드 목록(2)

재구현된 메소드 목록
메소드 이름 설명

doBeforeCreation

새로운 설계서 마법사를 통해 프로젝트를 생성 전 생성 작업을 작성합니다.

doAfterCreation

새로운 설계서 마법사를 통해 프로젝트를 생성 후 생성 작업을 작성합니다.

2.4. bindDesignPerspectiveFactory

설계도구 퍼스펙티브 구성(뷰, 마법사 숏컷 등)을 할 수 있는 팩토리를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.perspective.IDesignPerspectiveFactoryDelegator

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.perspective.impl.BxmDesignPerspectiveFactoryDelegator

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignPerspectiveFactoryDelegator

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import java.util.List;

                import org.eclipse.ui.IPageLayout;

                import com.bankwareglobal.ide.bxframework.core.perspective.IDesignPerspectiveFactoryDelegator;
                import com.beust.jcommander.internal.Lists;

                /**
                 * 설계도구 퍼스펙티브 구성(뷰, 마법사 숏컷 등)을 할 수 있는 팩토리 위임자
                 */
                public class ExtDesignPerspectiveFactoryDelegator
                implements IDesignPerspectiveFactoryDelegator
                {
                    /**
                     * BXM 설계 툴에서 제공하는 기본 마법사 ID 목록을 반환합니다.
                     */
                    @Override
                    public List<String> getDefaultBxmWizardIdList() {
                        return Lists.newArrayList();
                    }

                    /**
                     * BXM 설계 툴에 추가적인 마법사 ID 목록을 반환합니다.
                     */
                    @Override
                    public List<String> getExtraBxmWizardIdList() {
                        return Lists.newArrayList();
                    }

                    /**
                     * 이클립스에서 제공하는 기본 마법사 ID 목록을 반환합니다.
                     */
                    @Override
                    public List<String> getDefaultWizardIdList() {
                        return Lists.newArrayList();
                    }

                    /**
                     * 레이아웃을 설정합니다.
                     */
                    @Override
                    public void createInitialLayout(IPageLayout layout) {

                    }

                    @Override
                    public List<String> getDefaultBxmEditorIdList() {
                        return Lists.newArrayList();
                    }
                }

4. 재구현된 메소드 목록(5)

재구현된 메소드 목록
메소드 이름 설명

getDefaultBxmWizardIdList

BXM 설계 툴에서 제공하는 기본 마법사 ID 목록을 반환합니다.

getExtraBxmWizardIdList

BXM 설계 툴에 추가적인 마법사 ID 목록을 반환합니다.

getDefaultWizardIdList

이클립스에서 제공하는 기본 마법사 ID 목록을 반환합니다.

createInitialLayout

레이아웃을 설정합니다.

getDefaultBxmEditorIdList

2.5. bindDesignerCodeGeneratorProvider

컨트롤러, 서비스, 컴포넌트, DBIO 등의 코드를 생성하기 위한 생성기를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.extensions.IDesignerCodeGeneratorProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.designer.generator.BxmDesignerCodeGeneratorProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerCodeGeneratorProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import com.bankwareglobal.ide.bxframework.core.designer.generator.CodeGenerator;
                import com.bankwareglobal.ide.bxframework.se.designer.generator.BxmDesignerCodeGeneratorProvider;
                import com.bankwareglobal.ide.bxframework.se.extensions.designer.generator.ExtDesignerCodeGenerator;

                /**
                 * 설계도구에서 자원 내보내기를 할때 사용할 코드 생성기를 반환하는 프로바이더
                 */
                public class ExtDesignerCodeGeneratorProvider extends BxmDesignerCodeGeneratorProvider {

                    /**
                     * 자원 내보내기를 할때 사용할 코드 생성기를 반환합니다.
                     */
                    @Override
                    public CodeGenerator createCodeGenerator() {
                        return new ExtDesignerCodeGenerator();
                    }
                }

4. 재구현된 메소드 목록(1)

재구현된 메소드 목록
메소드 이름 설명

createCodeGenerator

자원 내보내기를 할때 사용할 코드 생성기를 반환합니다.

2.6. bindDesignerElementLogicalNameProvider

컨트롤러, 서비스, 컴포넌트, DBIO 등의 논리 이름을 결정하는 제공자를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.extensions.IElementLogicalNameProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerLogicalNameProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerLogicalNameProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import java.util.Map;

                import com.bankwareglobal.ide.bxframework.core.designer.model.IOFor;
                import com.bankwareglobal.ide.bxframework.core.designer.model.IOUsage;
                import com.bankwareglobal.ide.bxframework.core.designer.model.Terms;
                import com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerLogicalNameProvider;

                /**
                 * 설계도구에서 설계한 자원의 논리 이름 제공자
                 */
                public class ExtDesignerLogicalNameProvider extends BxmDesignerLogicalNameProvider {

                    /**
                     * 서비스, Bean 자원의 논리 이름을 반환한다.
                     */
                    @Override
                    public String getClassLogicalName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , String classType
                            , Terms terms
                            , Map<String, String> attributes
                            )
                    {
                        return super.getClassLogicalName(levels, groups, applicationType, shared, classType, terms, attributes);
                    }

                    /**
                     * DBIO 자원의 논리 이름을 반환한다.
                     */
                    @Override
                    public String getDbioLogicalName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , Terms terms
                            , Map<String, String> attributes
                            )
                    {
                        return super.getDbioLogicalName(levels, groups, applicationType, shared, terms, attributes);
                    }

                    /**
                     * IO 자원의 논리 이름을 반환한다.
                     */
                    @Override
                    public String getIoLogicalName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , Terms terms
                            , IOFor ioFor
                            , IOUsage ioUsage
                            , Map<String, String> attributes
                            )
                    {
                        return super.getIoLogicalName(levels, groups, applicationType, shared, terms, ioFor, ioUsage, attributes);
                    }

                    // TODO 필요한 기능 overriding 하여 사용.
                }

4. 재구현된 메소드 목록(3)

재구현된 메소드 목록
메소드 이름 설명

getClassLogicalName

서비스, Bean 자원의 논리 이름을 반환한다.

getDbioLogicalName

DBIO 자원의 논리 이름을 반환한다.

getIoLogicalName

IO 자원의 논리 이름을 반환한다.

2.7. bindDesignerElementPhysicalNameProvider

컨트롤러, 서비스, 컴포넌트, DBIO 등의 물리 이름을 결정하는 제공자를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.extensions.IElementPhysicalNameProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerPhysicalNameProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerPhysicalNameProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import java.util.Map;

                import com.bankwareglobal.ide.bxframework.core.designer.model.IOFor;
                import com.bankwareglobal.ide.bxframework.core.designer.model.IOUsage;
                import com.bankwareglobal.ide.bxframework.core.designer.model.Terms;
                import com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerPhysicalNameProvider;

                /**
                 * 설계도구에서 설계한 자원의 물리 이름 제공자
                 */
                public class ExtDesignerPhysicalNameProvider extends BxmDesignerPhysicalNameProvider {

                    /**
                     * 서비스, Bean 자원의 패키지 이름을 반환한다.
                     */
                    @Override
                    public String getPackageName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , String classType
                            , Map<String, String> attributes
                            )
                    {
                        return super.getPackageName(levels, groups, applicationType, shared, classType, attributes);
                    }

                    /**
                     * 서비스, Bean 자원의 클래스 이름을 반환한다.
                     */
                    @Override
                    public String getClassName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , String classType
                            , Terms terms
                            , Map<String, String> attributes
                            )
                    {
                        return super.getClassName(levels, groups, applicationType, shared, classType, terms, attributes);
                    }

                    /**
                     * DBIO 자원의 패키지 이름을 반환한다.
                     */
                    @Override
                    public String getDbioPackageName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , Map<String, String> attributes
                            )
                    {
                        return super.getDbioPackageName(levels, groups, applicationType, shared, attributes);
                    }

                    /**
                     * DBIO 자원의 매퍼/클래스 이름을 반환한다.
                     */
                    @Override
                    public String getDbioName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , Terms terms
                            , Map<String, String> attributes
                            )
                    {
                        return super.getDbioName(levels, groups, applicationType, shared, terms, attributes);
                    }

                    /**
                     * IO 자원의 패키지 이름을 반환한다.
                     */
                    @Override
                    public String getIoPackageName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , IOFor ioFor
                            , IOUsage ioUsage
                            , Map<String, String> attributes
                            )
                    {
                        return super.getIoPackageName(levels, groups, applicationType, shared, ioFor, ioUsage, attributes);
                    }

                    /**
                     * IO 자원의 클래스 이름을 반환한다.
                     */
                    @Override
                    public String getIoName(
                            String[] levels
                            , String[] groups
                            , String applicationType
                            , boolean shared
                            , Terms terms
                            , IOFor ioFor
                            , IOUsage ioUsage
                            , Map<String, String> attributes
                            )
                    {
                        return super.getIoName(levels, groups, applicationType, shared, terms, ioFor, ioUsage, attributes);
                    }

                    // TODO 필요한 기능 overriding 하여 사용.
                }

4. 재구현된 메소드 목록(6)

재구현된 메소드 목록
메소드 이름 설명

getPackageName

서비스, Bean 자원의 패키지 이름을 반환한다.

getClassName

서비스, Bean 자원의 클래스 이름을 반환한다.

getDbioPackageName

DBIO 자원의 패키지 이름을 반환한다.

getDbioName

DBIO 자원의 매퍼/클래스 이름을 반환한다.

getIoPackageName

IO 자원의 패키지 이름을 반환한다.

getIoName

IO 자원의 클래스 이름을 반환한다.

2.8. bindDesignerExportCreatorProvider

설계서 파일을 엑셀 파일로 내보내기를 위한 생성기 제공자를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.extensions.IDesignerExportCreatorProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.designer.deliverable.impl.BxmDesignerExportCreatorProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerExportCreatorProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import java.util.List;

                import com.bankwareglobal.ide.bxframework.core.designer.model.BatchJobResource;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.IDesignExportSheetCreator;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignBatchJobModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignChunkMethodModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignChunkModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignClassModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignDbioModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignDeclaredMethodModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignIoModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignJavaResourceModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignProjectModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignSqlIdModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignStepModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignTaskletExecuteModel;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.deliverable.model.DesignTaskletModel;
                import com.bankwareglobal.ide.bxframework.se.designer.deliverable.impl.BxmDesignerExportCreatorProvider;

                /**
                 * 설계서 파일을 엑셀 파일로 내보내기를 위한 생성기 제공자
                 */
                public class ExtDesignerExportCreatorProvider extends BxmDesignerExportCreatorProvider {

                    /**
                     * 컴포넌트 목록 설계서 파일 이름을 반환합니다.
                     */
                    @Override
                    protected String getComponentListFileName(DesignProjectModel projectModel) {
                        return super.getComponentListFileName(projectModel);
                    }

                    /**
                     * 배치 작업 목록 설계서 파일 이름을 반환합니다.
                     */
                    @Override
                    protected String getBatchJobListFileName(DesignProjectModel projectModel) {
                        return super.getBatchJobListFileName(projectModel);
                    }

                    /**
                     * 타입 설계서 파일 이름을 반환합니다.
                     */
                    @Override
                    protected String getTypeFileName(DesignJavaResourceModel<?> javaResourceModel) {
                        return super.getTypeFileName(javaResourceModel);
                    }

                    /**
                     * 배치 작업 설계서 파일 이름을 반환합니다.
                     */
                    @Override
                    protected String getBatchJobFileName(BatchJobResource batchJobResource) {
                        return super.getBatchJobFileName(batchJobResource);
                    }

                    /**
                     * 클래스 개요 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createClassOverviewSheetCreator(DesignClassModel resourceModel) {
                        return super.createClassOverviewSheetCreator(resourceModel);
                    }

                    /**
                     * DBIO 개요 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createDbioOverviewSheetCreator(DesignDbioModel resourceModel) {
                        return super.createDbioOverviewSheetCreator(resourceModel);
                    }

                    /**
                     * 청크 개요 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createChunkedOverviewSheetCreator(DesignChunkModel resourceModel) {
                        return super.createChunkedOverviewSheetCreator(resourceModel);
                    }

                    /**
                     * 태스크릿 개요 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createTaskletOverviewSheetCreator(DesignTaskletModel resourceModel) {
                        return super.createTaskletOverviewSheetCreator(resourceModel);
                    }

                    /**
                     * SQL ID 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createSqlIdSheetCreator(DesignSqlIdModel sqlIdModel, int index) {
                        return super.createSqlIdSheetCreator(sqlIdModel, index);
                    }

                    /**
                     * 태스크릿 Execute 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createTaskletExecuteSheetCreator(DesignTaskletExecuteModel executeModel,
                            int index) {
                        return super.createTaskletExecuteSheetCreator(executeModel, index);
                    }

                    /**
                     * 메소드 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createDeclaredMethodSheetCreator(DesignDeclaredMethodModel declaredMethodModel,
                            int index) {
                        return super.createDeclaredMethodSheetCreator(declaredMethodModel, index);
                    }

                    /**
                     * 청크 메소드 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createChunkMethodSheetCreator(DesignChunkMethodModel chunkMethodModel,
                            int index) {
                        return super.createChunkMethodSheetCreator(chunkMethodModel, index);
                    }

                    /**
                     * 배치 작업 개요 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createBatchJobOverviewSheetCreator(DesignBatchJobModel resourceModel) {
                        return super.createBatchJobOverviewSheetCreator(resourceModel);
                    }

                    /**
                     * 스텝 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createStepSheetCreator(DesignStepModel designStepModel, int stepIndex) {
                        return super.createStepSheetCreator(designStepModel, stepIndex);
                    }

                    /**
                     * 배치 작업 목록 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createBatchJobListSheetCreator(DesignProjectModel projectModel,
                            List<DesignBatchJobModel> resourceModels) {
                        return super.createBatchJobListSheetCreator(projectModel, resourceModels);
                    }

                    /**
                     * 컴포넌트 목록 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createComponentListSheetCreator(DesignProjectModel projectModel,
                            List<DesignJavaResourceModel<?>> resourceModels) {
                        return super.createComponentListSheetCreator(projectModel, resourceModels);
                    }

                    /**
                     * IO 목록 시트 생성자를 반환합니다.
                     */
                    @Override
                    protected IDesignExportSheetCreator createIoListSheetCreator(DesignProjectModel projectModel,
                            List<DesignIoModel> resourceModels) {
                        return super.createIoListSheetCreator(projectModel, resourceModels);
                    }

                    // TODO 필요한 기능 overriding 하여 사용.
                }

4. 재구현된 메소드 목록(17)

재구현된 메소드 목록
메소드 이름 설명

getComponentListFileName

컴포넌트 목록 설계서 파일 이름을 반환합니다.

getBatchJobListFileName

배치 작업 목록 설계서 파일 이름을 반환합니다.

getTypeFileName

타입 설계서 파일 이름을 반환합니다.

getBatchJobFileName

배치 작업 설계서 파일 이름을 반환합니다.

createClassOverviewSheetCreator

클래스 개요 시트 생성자를 반환합니다.

createDbioOverviewSheetCreator

DBIO 개요 시트 생성자를 반환합니다.

createChunkedOverviewSheetCreator

청크 개요 시트 생성자를 반환합니다.

createTaskletOverviewSheetCreator

태스크릿 개요 시트 생성자를 반환합니다.

createSqlIdSheetCreator

SQL ID 시트 생성자를 반환합니다.

createTaskletExecuteSheetCreator

태스크릿 Execute 시트 생성자를 반환합니다.

createDeclaredMethodSheetCreator

메소드 시트 생성자를 반환합니다.

createChunkMethodSheetCreator

청크 메소드 시트 생성자를 반환합니다.

createBatchJobOverviewSheetCreator

배치 작업 개요 시트 생성자를 반환합니다.

createStepSheetCreator

스텝 시트 생성자를 반환합니다.

createBatchJobListSheetCreator

배치 작업 목록 시트 생성자를 반환합니다.

createComponentListSheetCreator

컴포넌트 목록 시트 생성자를 반환합니다.

createIoListSheetCreator

IO 목록 시트 생성자를 반환합니다.

2.9. bindDesignerExtendedNodeDefinition

확장 노드의 이미지, 테두리 색, 배경색 등을 정의하는 모듈을 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.ui.extensions.IDesignerExtendedNodeDefinition

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerExtendedNodeDefinition

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerExtendedNodeDefinition

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import com.bankwareglobal.ide.bxframework.core.designer.configuration.DesignerConfiguration;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.extensions.ExtendedNodeSpec;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.util.UIColor;
                import com.bankwareglobal.ide.bxframework.core.designer.ui.util.UIImage;
                import com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerExtendedNodeDefinition;

                /**
                 * 확장 노드의 이미지, 테두리 색, 배경색 등을 정의하는 모듈
                 */
                public class ExtDesignerExtendedNodeDefinition extends BxmDesignerExtendedNodeDefinition {

                    /**
                     * 확장 노드의 스펙을 반환합니다.
                     */
                    @Override
                    public ExtendedNodeSpec getNodeSpec(String nodeType) {
                        if ( DesignerConfiguration.ExtendedPalettes.NODE_EAI_CALL.equals(nodeType)) {
                            ExtendedNodeSpec spec= new ExtendedNodeSpec(
                                    UIImage.get(UIImage.IMG_EAICALL) //작은 이미지 아이콘
                                    , UIImage.get(UIImage.IMG_EAICALL) //큰 이미지 아이콘
                                    , UIColor.get(UIColor.FLOW_FIGURE_DEFAULT_BORDER) //테두리 색
                                    , UIColor.get(UIColor.FLOW_FIGURE_EAI_CALL_BACKGROUND) //노드 배경색
                                    , 1 //테두리 두께
                                    );

                            return spec;
                        }

                        return null;
                    }
                }

4. 재구현된 메소드 목록(1)

재구현된 메소드 목록
메소드 이름 설명

getNodeSpec

확장 노드의 스펙을 반환합니다.

2.10. bindDesignerIoFieldCreatorProvider

IO필드를 생성하기 위한 제공자를 반환합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.extensions.IDesignerIoFieldCreatorProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.core.designer.extensions.impl.DefaultDesignerIoFieldCreatorProvider

3. 구현 예제

[ERROR] 확장 모듈에서 재정의된 메소드가 없음. 확장 모듈에서 bindDesignerIoFieldCreatorProvider메소드 재정의 필요.

2.11. bindDesignerValidatorProvider

설계서를 검증하기 위한 검증기를 제공하는 제공자를 바인딩합니다.

1. 인터페이스 및 클래스

모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.

com.bankwareglobal.ide.bxframework.core.designer.extensions.IDesignerValidatorProvider

2. 기본 구현 클래스

해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.

com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerValidatorProvider

3. 구현 예제

com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDesignerValidatorProvider

                package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;

                import java.util.List;

                import com.bankwareglobal.ide.bxframework.core.designer.extensions.IDesignerValidator;
                import com.bankwareglobal.ide.bxframework.se.extensions.impl.BxmDesignerValidatorProvider;
                import com.google.common.collect.Lists;

                /**
                 * 설계도구 검증기 목록을 반환하는 프로바이더
                 */
                public class ExtDesignerValidatorProvider extends BxmDesignerValidatorProvider {

                    /**
                     * 설계도구 검증기 목록을 반환합니다.
                     */
                    @Override
                    public List<IDesignerValidator> getValidators() {
                        List<IDesignerValidator> list = Lists.newArrayList();
                        list.addAll(super.getValidators());

                        // TODO 추가로 사용할 검증기가 있는 경우 등록하십시오.

                        return list;
                    }
                }

4. 재구현된 메소드 목록(1)

재구현된 메소드 목록
메소드 이름 설명

getValidators

설계도구 검증기 목록을 반환합니다.

Copyright© Bankwareglobal All Rights Reserved.