package com.stc.connector.snalu62.api; import com.stc.connector.logging.LogFactory; import com.stc.connector.logging.Logger; import com.stc.connector.snalu62.exception.SNAApplicationException; /** * This is a sample class to implement the interface SNACustomerHandshake. * It implements a simple Initialize_Conversation scenario for windows platform. */ public class SNACustomerHandshakeImplSampleInitialize implements SNACustomerHandshake { public static final String version = "cvs $Revision: 1.1.2.1.2.2 $ $Date: 2005/11/10 21:40:15 $"; private Logger logger = LogFactory.getLogger("STC.eWay.SNALU62." + getClass(). getName()); private String logMsg; /** * Constructor * */ public SNACustomerHandshakeImplSampleInitialize() { super(); } /** * @see com.stc.connector.snalu62.api.SNACustomerHandshake#startConversation (com.stc.connector.snalu62.api.SNACPICCalls) */ public void startConversation(SNACPICCalls cpic) throws SNAApplicationException { try { //do whatever checking logics before/after the following CPIC call on your desires cpic.cminit(); //do whatever checking logics before/after the following CPIC call on your desires cpic.cmssl(); //do whatever checking logics before/after the following CPIC call on your desires cpic.cmallc(); if (!cpic.getConversationAttributes().returnCodeIs(0)) { // 0: CM_OK logMsg = "SNACustomerHandshakeImplSampleInitialize. startConversation(): The return_Code is <" + cpic.getConversationAttributes().getReturnCode() + ">. SNA conversation is not established."; logger.error(logMsg); throw new SNAApplicationException(logMsg); } //do whatever other logics on your desires here //... } catch (Exception e) { logMsg = "SNACustomerHandshakeImplSampleInitialize.startConversation(): Failed. Got exception [" + e.toString() + "]."; logger.error(logMsg, e); throw new SNAApplicationException(logMsg, e); } } } |