템플릿 팩 관리

템플릿 팩?

여러 템플릿의 묶음을 의미합니다.
하나의 프로젝트에서는 하나의 템플릿 팩을 사용할 수 있습니다.

1. Template Pack Management 메뉴로 이동

Code Genie 메인 화면에서,

(1)왼쪽 메뉴를 확장하여
(2) Template Pack Management를 클릭하거나
(3) 화면의 바로가기 아이콘을 클릭 합니다.

2. 템플릿 팩 설정

namedescription
1. NEW이름 작성시 바로 템플릿 팩이 로컬에 추가 됩니다.
2. IMPORT추출된 템플릿 파일(.tmpl)을 반영합니다. 해당 파일은 아래 10. EXPORT 기능에서 생성할 수 있습니다.
3. STORE템플릿 팩의 INSTALL 버튼을 클릭하면 로컬에 추가 됩니다.
4. 팩 버전로컬에 있는 해당 템플릿 팩의 버전을 나타냅니다.
5. 팩 삭제해당 템플릿 팩을 로컬에서 삭제 합니다.
6. 팩 추출해당 템플릿 팩을 디렉토리 구조로 추출 합니다. 템플릿의 소스 코드 내용을 외부 에디터를 이용해 쉽게 수정할 수 있습니다.
7. 팩 반영추출한 디렉토리 구조의 템플릿 팩을 다시 반영 합니다.
8. 팩 복사해당 템플릿 팩이 새 템플릿 팩으로 복사 됩니다. 구분을 위해 기존 템플릿 팩 이름에 _copy만 추가 됩니다.
9. 팩 저장해당 템플릿 팩을 로컬에 저장합니다.
10. EXPORT해당 템플릿 팩을 특정 파일로 추출합니다. 추출된 파일의 확장자는 .tmpl이며, 2. IMPORT 기능에서 사용됩니다.
11. 스토어에 반영해당 템플릿이 스토어에 존재시 노출됩니다. 수정한 내용을 스토어에 반영합니다. 단, owner, editor 권한이 있는 경우만 허용 됩니다.
12. 스토어 업데이트 체크해당 템플릿이 스토어에 존재하며 스토어와 로컬의 버전 차이가 없는 경우 노출됩니다. 스토어에 있는 템플릿 팩 버전과 로컬에 있는 버전을 비교 합니다.
13. 팩 권한 설정해당 템플릿이 스토어에 존재하며 owner 권한인 경우 노출됩니다. 클릭시 해당 템플릿 팩에 대한 사용자별 권한을 설정하거나 스토어 템플릿 팩을 삭제할 수 있습니다.
14. 새 템플릿 추가해당 템플릿 팩에 템플릿을 추가 합니다.
15. 스토어에 등록해당 템플릿이 로컬에만 존재시 노출됩니다. 클릭시 스토어에 저장 됩니다.
새 버전 업데이트해당 템플릿이 스토어에 존재하며 스토어와 로컬의 버전 차이가 있는 경우 노출됩니다. 클릭시 스토어의 템플릿 팩 내용을 로컬에 반영 합니다.

스토어 템플릿 팩?

데이터베이스 테이블에서 관리되는 템플릿 팩을 의미합니다.

2-6. 팩 추출 결과 예시

2-7. 팩 반영 선택 예시

3. 팩 상세 구성

3-1. 템플릿 속성

아래 템플릿 속성에 따라 프로젝트 관리에서 설정한 엔티티 설정을 템플릿에 입혀 파일을 생성할 수 있습니다.

namedescription
1. 템플릿 그룹템플릿별 그룹명을 설정합니다. 2-6. 팩 추출에서도 마찬가지로 해당 그룹별 디렉토리가 생성 됩니다.
2. Installation enabled비활성시 단지 템플릿 결과만 노출 됩니다.
3. 설치형/주입형설치형인 경우 주로 파일 생성, 주입형인 경우 기존 파일 내용 대체로 진행 됩니다.
4. Read-only설치형인 경우 노출 됩니다. 활성화시 파일을 read-only로 설정합니다.
5. Overwrite설치형인 경우 노출 됩니다. 비활성화는 덮어쓰기 금지를 의미합니다.
6. Git Add설치형인 경우 노출 됩니다. .git 디렉토리가 존재하며 활성화한 경우 대상 파일을 git add 실행 합니다.
7. Installation Path파일 경로를 작성합니다. velocity 문법이 적용 됩니다.
8. File Name파일명을 작성합니다. velocity 문법이 적용 됩니다.
9. Alternative path when file exists설치형이고 덮어쓰기 금지인 경우 노출 됩니다. 기존 파일 존재시 대안 경로에 설치 됩니다. velocity 문법이 적용 됩니다.
10. Place Holder주입형인 경우 노출 됩니다. 기존 파일 존재시, 기존 파일 내용에서 설정한 내용이 템플릿 내용으로 대체 됩니다.

3-2. 템플릿 본문

템플릿 내용을 작성 합니다. velocity 문법이 적용 됩니다.
사용할 수 있는 유틸은 유틸 함수에서 참고해주세요.

4. 팩 변수 설정

프로젝트 관리에서 사용할 템플릿 변수를 설정 합니다.
템플릿 변수는 전역으로 사용할 변수를 의미하며 velocity 문법이 적용되는 설정에 var 변수로 접근할 수 있습니다.

예시 : package는 그룹코드, module은 코드

${var.package.module}

또한 신규 프로젝트 생성을 통해 생성한 프로젝트의 경우, env 변수로 접근할 수 있습니다.
(단, 템플릿의 installation 옵션이 활성화되어 있는 경우만)

사진1 : 생성 설정 정보


사진2 : 생성 결과인 프로젝트 디렉토리 구조

위와 같이 모듈 아이디는 루트 바로 아래인 모듈 디렉토리로 생성되며
모듈 기본 패키지명은 기본 패키지 바로 아래 패키지인 디렉토리로 생성됩니다.
템플릿 작성시 기본 패키지, 모듈 기본 패키지는 다음과 같이 접근할 수 있습니다.

${env.basePackage} // 기본 패키지
${env.subPackage} // 모듈 기본 패키지

모듈 아이디 접근은 먼저 템플릿에서 Module Type 을 지정해주어야 합니다.

${env.module} // 모듈 아이디

5. 템플릿 모듈 설정

바로 위 템플릿 설정 중 Module Type으로 사용할 옵션을 추가합니다.