How to

Activity 소스입니다.

  • Reuse Activity
  • Sample Activity

Reuse Activity

glue-core에 포함되서 제공되는 reuse activity는 다음과 같습니다.

  1. SubService
  2. SubService : GlueService를 호출함.
  3. WebPage Tag
    <dependency>
        <groupId>com.poscoict</groupId>
        <artifactId>glue-core</artifactId>
        <version>${glue.version}</version>
    </dependency>
    

SubService

package com.poscoict.glueframework.biz.activity;

import org.slf4j.MDC;
import org.slf4j.MarkerFactory;

import com.poscoict.glueframework.GlueException;
import com.poscoict.glueframework.biz.control.GlueBizControlConstants;
import com.poscoict.glueframework.biz.control.GlueBizController;
import com.poscoict.glueframework.biz.control.GlueBizProvider;
import com.poscoict.glueframework.context.GlueContext;

public class GlueSubService extends GlueActivity<GlueContext> {
    @Override
    public String runActivity( GlueContext ctx ) {
        String subService = this.getProperty( GlueActivityConstants.SERVICE_NAME );
        String transaction = this.getProperty( GlueActivityConstants.NEW_TRANSACTION );
        boolean newTx = Boolean.valueOf( transaction ).booleanValue();
        try {
            ctx.put( GlueBizControlConstants.SERVICE_NAME, subService );
            MDC.put( "Sub-ServiceName", subService );
            GlueBizController bizIF = GlueBizProvider.getController();
            bizIF.doSubController( ctx, newTx );
            MDC.remove( "Sub-ServiceName" );
        } catch ( GlueException e ) {
            if ( !newTx ) {
                throw e;
            } else {
                super.logger.error( MarkerFactory.getMarker( "FATAL" ), "Sub Service[" + this.getName() + "] Transaction is Fail!", e );
                ctx.setException( e );
                return GlueBizControlConstants.FAILURE;
            }
        }
        return GlueBizControlConstants.SUCCESS;
    }
}

WebPage Tag

package com.poscoict.glueframework.biz.activity;

import com.poscoict.glueframework.biz.control.GlueBizControlConstants;
import com.poscoict.glueframework.context.GlueContext;
import com.poscoict.glueframework.web.control.GlueWebConstants;

public class GlueWebPageTag extends GlueActivity<GlueContext> {
    @Override
    public String runActivity( GlueContext ctx ) {
        ctx.put( GlueWebConstants.FORWARDNAME, this.getProperty( GlueActivityConstants.FORWARDNAME ) );
        return GlueBizControlConstants.SUCCESS;
    }
}

^L

Prev Home Next