[XE] ModuleHandler

돌아다니면서 구한 자료로 공부하는 공간입니다..

틀린부분이 있다면 말씀해주시면 수정하도록 하겠습니다.

※ 남을 비방하거나 욕 / 정치적인 글은 삭제 대상이 됩니다. ※

[XE] ModuleHandler

만키로군 0 1668 0

ModuleHandler


 Parent

 Handler


 하위

 없음.


클래스 호출로 사용됨.


속성

 속성명

기본값 

비고 

$module 

NULL 

 

$act 

NULL 

 

$mid 

NULL 

 

$document_srl 

NULL 

 

$module_srl 

NULL 

 

$module_info 

NULL 

 

$error 

NULL 

 

$httpStatusCode 

NULL 

 



메서드

 메서드명

인수 

반환값 

비고 

ModuleHandler() 

STRING $module,

STRING $act,

STRING $mid,

STRING $document_srl,

STRING $module_srl 

없음. 

인수는 모두 생략가능함.

생략시 빈문자열('')임.


 1. 설치 여부 확인 후, 

    아직 설치가 되어 있지 않다면 install 모듈을 실행합니다.


 2. 각 속성에 값을 저장합니다.

빈문자열로 전달된 값음 Context 에 저장된 값을 참조하여 설정합니다.

 $module, $act, $mid, $document_srl


 3. 진입지점(이전url)을 저장합니다.

 $entry <- Context::get('entry')


 4. 입력된 속성 값들의 유효성을 확인함.

   $moudle, $mid, $act 의 값이 비어있거나 AlphaNumeric및 언더바(_)데시바(-)로만 구성되어 있는지 확인한다.

    - XSS(cross Site Script)방지용

    유효하지 않으면 에러처리.


 5. 'before_module_init' 시점으로 저장된  addon 을 포함시킴.

init() 

없음. 

BOOLEAN 

module, mid, document_srl, 로 대상 모듈을   찾아내고 action을 실행할 준비 합니다.


정상적으로 모든 준비가 끝나면

true를

문제가 발생했으면

false를 반환합니다.


'moduleHandler.init', 'after' 에 해당하는

trigger를 작동시킵니다.

procModule() 

없음. 

OBJECT 

모듈 인스턴스를 얻어 액션을 실행시킵니다.


오류가 발생하면

messageObject 를 반환하며,


성공하면 

모듈 Object 를 반환합니다.


 

_setInputErrorToContext() 

없음. 

없음. 

 

_clearErrorSession() 

없음. 

없음. 

 

_setInputValueToSession() 

없음. 

없음. 

 

displayContent() 

OBJECT 

없음. 

실행된 모듈에서 content를 표시한다.


Layout을 얻어

Extra_val을 삽입하고


DisplayHandler를 얻어,

printContent( ModuleObject )메서드로

표시한다. 

getModulePath() 

STRING 

STRING 

모듈의 패스를 전달한다. 

&getModuleInstance 

STRING $module,

STRING $type,

STRING $kind 

OBJECT 

인수 $type과 $kind는 생략가능함.

$type 의 기본값은 'view'임.

('view', 'model', 'controller', 'api', 'wap', 'class' 중 하나임.)

$kind는 'admin' 이나 'svc'중 하나임.


입력된 인수로 읽어들일 php 파일명 / 인스턴스명을 생성, 존재여부를 검사함.

(글로벌 변수 $GLOBALS['_loaded_module'][$module][$type][$kind] 에서 객체존재여부 확인함.)


객체가 없으면,

해당 파일을 읽어 들여(require_once())

객체를 생성함.


객체가 생성되면,  lang 파일을 설정함.


생성된 객체의 초기화 여부를 확인하여 초기화가 않되어있으면 초기화 실시함.(생성된 객체명의 메서드를 호출함.)


글로벌 변수 $GLOBALS[_loaded_module'][$module][$type][$kind]에 생성된 객체를 저장하고,


해당 객체를 반환함.

triggerCall 

STRING $trigger_name,

STRING $called_position,

OBJECT_VAL &$obj

OBJECT 

입력받은 trigger_name 과 called_position을

조회하여 트리거들을 얻어 

해당 메서드들을 실행하고


새로운 Object 를 생성해서 넘겨줌. 

_setHttpStatusMessage 

STRING 

없음. 

HTTP STATUS 코드를 전달 받아

메세지를 Context에 설정합니다. 

,

0 Comments
제목