Package com.easydesk.om
Interface Artifactizable
- All Known Subinterfaces:
Module
- All Known Implementing Classes:
ActivitySetType,AttachmentType,Attribute,AttributeGroupType,AttributeOption,AttributeType,DependType,EasyDeskGroupImpl,EasyDeskModule,EasyDeskPermissionImpl,EasyDeskRoleImpl,EasyDeskUserImpl,EasyError,ItemType,OptionRelationship,Scope,TemplateModule,TimeScope
public interface Artifactizable
Artifactizable 은 EasyDesk Database 를 구성하는 모든 Table Member 를 Parameterize 하여 EasyDesk Workflow 로 관리하기 위하여 도입되었다.
Attribute --> Attribute Module --> Module User --> User Query --> Query Curriculum --> AttributeType : 하나의 Item 이 Attribute 에 대응한다.
CordovaPlugin --> Attribute : 하나의 item 이 AttributeOption 에 대응한다.
Artifactizable 을 구현하는 Object 은 여러유형이 있다.
Module 처럼 자신이 module 정보를 가지고 있는 것, User 처럼 자신과 Module 이 동등한 관계를 가지고 있는 것 Query/Report 처럼 어떠한 Module 에 속하여 있는 것 등등
Workflow : Artifacizable 이 먼저 생성되고 Artifactizable 의 LifeCycle 이 Confiremd 가 되면 그 정보로 NativeObject 을 생성시킨다. Artifactizable 은 존재하지만 NativeObject 이 아직 생성되어 있지 않으면 그것은 '실험실' 에 나타낸다.
- Artifactizable Creation
- Process 1. create artifcatizable item
- Process 2. state checked --> workflow.modified.lifecycle.checked 참조 ( 모든Artifactizable 은 존재하여야 한다. )
- process 3. create native object
- process 4. create related item/native object
- Author:
- Youngho Cho
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptiondefault ItemObject 의 속성을 서술하는 아이템을 구한다.default ComboKeyArtifactizableManager 에서 사용하는 itemable item cache key Module Key plus ItemType Key plus Persistance Keydefault Moduleitemable Object 이 속한 Module 1.itemable Object 의 itemTypeObjectKey<?> Artifactable 의 native object primaryKeybuild 하기 위하여 db 정보를 이용한다.
-
Field Details
-
logger
static final org.slf4j.Logger loggerLogging -
ATTRIBUTE_MAP_PATTERN
Schema.xml Column description 에 저장되는 Column 대응 Attribute Name 설정 Pattern , seperate -
ARTIFACTIZABLE_PATTERN
Schema.xml Column description 에 저장되는 Column 대응 Attribute Name 설정 Pattern , seperate
-
-
Method Details
-
getArtifactKey
ArtifactizableManager 에서 사용하는 itemable item cache key Module Key plus ItemType Key plus Persistance Key- Returns:
- cache key
- Throws:
TorqueException- key 를 구하는 중 오류가 발생한 경우
-
getArtifact
Object 의 속성을 서술하는 아이템을 구한다.- Returns:
- item
- Throws:
TorqueException- 조회 중 오류가 발생한 경우
-
getPrimaryKey
ObjectKey<?> getPrimaryKey()Artifactable 의 native object primaryKey- Returns:
- DOCUMENT ME!
-
getArtifactType
itemable Object 의 itemType- Returns:
- itemType
- Throws:
TorqueException- 조회 중 오류가 발생한 경우
-
getArtifactModule
itemable Object 이 속한 Module 1. System 운영 itemable Object (Attribute, Scope 등등...) 은 System 운영 Module 인 EasyDesk 에만 존재한다. 2. Module, User 등은 자체 Module 에서 sub module, 또는 사용자 등록을 할 수 있지만 Module 은 실제 Module 이 생성되고 User 는 ModelEntity 가 생성되고 있다. 일단 모든 관리 정보는 EasyDesk 에 저장한다. 3. ALL 은 Empty Module 이다. 4. GLOBAL 은 대부분 Module 의 ArticafactModule 이다. ( Parent )- Returns:
- module
- Throws:
TorqueException- 조회 중 오류가 발생한 경우
-
getTableMap
build 하기 위하여 db 정보를 이용한다. TODO remove, use annotation- Returns:
- DOCUMENT ME!
- Throws:
TorqueException- DOCUMENT ME!
-