com.poscoict.glueframework.biz.control
Interface GlueBizController

All Known Implementing Classes:
GlueBizControllerImpl

public interface GlueBizController

BizController 인터페이스.
GlueBizController는 Web,Non Web App 공통으로 사용되며 Transaction처리 및 Logging을 처리 하고 수행 결과는 GlueContext에 반영한다.

 [sample java code]
 
 GlueContext ctx = new GlueDefaultContext();
 ctx.put("ServiceName", "sample-service");
 GlueBizController bizController = GlueBizProvider.getController();
 bizController.doAction(ctx);
 
 


Method Summary
 GlueContext doAction(GlueContext ctx)
          Transaction을 처리와 Logging을 처리 하고 Service를 실행 한다.
 GlueContext doSubController(GlueContext ctx, boolean newTx)
          doAction()과 동일하지만 Transaction 처리는 정의에 따라 달라진다.
 

Method Detail

doAction

GlueContext doAction(GlueContext ctx)
Transaction을 처리와 Logging을 처리 하고 Service를 실행 한다.
Transaction은 {xxx}-service.xml 에 다음과 같이 정의 된다.
 <transaction-manager id="tx1" commit="true"/>
 <transaction-manager id="tx2" commit="false"/>
 
 위의 Transaction List 만큼 Commit 및 Rollback을 수행하고
 만일 commit="false"이면 Commit을 수행하지 않는다.
 commit="false" 를 사용하는 경우에는 Read Only 경우에 사용된다.
 실제 Transaction의 정의는 applicationContext.xml에 다음과 같이 정의 된다.
 
 <bean id="tx1" class="com.poscoict.glueframework.transaction.GlueDataSourceTransactionManager">
     <property name="dataSource" ref="ds-1"/> 
 </bean>
 <bean id="tx2" class="com.poscoict.glueframework.transaction.GlueDataSourceTransactionManager">
     <property name="dataSource" ref="ds-2"/>
 </bean>
 

Parameters:
ctx - GlueContext
Returns:
GlueContext 결과 값 Return

doSubController

GlueContext doSubController(GlueContext ctx,
                            boolean newTx)
doAction()과 동일하지만 Transaction 처리는 정의에 따라 달라진다.
 <activity name="CallSubController" class="com.poscoict.glueframework.biz.activity.GlueSubService">
     <transition name="success" value="HandleError"/>
     <property name="service-name" value="Sub-service"/>
     <property name="new-transacion" value="true"/>
 </activity>
 
 Sub-service 를 호출 하는 위 예제에서 "<property name="new-transacion" value="true"/>" 인 경우
 Main-service 의 Transaction과 별개로 SubService에 정의되어 있는 Transaction을 처리하게 된다.
 "fale"이면 Transaction 처리를 하지 않는다. 즉 MainService의 Transaction을 이용하게 된다.
 
 

Parameters:
ctx - GlueContext
newTx -
Returns:
GlueContext 결과 값 Return


Copyright © 2013–2018 POSCO ICT. All rights reserved.