import java.io.UnsupportedEncodingException;
import com.microfocus.cics.client.AbendException;
import com.microfocus.cics.client.CCLCallType;
import com.microfocus.cics.client.CCLChannel;
import com.microfocus.cics.client.CCLContainer;
import com.microfocus.cics.client.CCLExtendMode;
import com.microfocus.cics.client.CCLParams;
import com.microfocus.cics.client.CCLVersion;
import com.microfocus.cics.client.CICSException;
import com.microfocus.cics.client.CommAreaSizeException;
import com.microfocus.cics.client.ConnectionType;
import com.microfocus.cics.client.ContainerData;
import com.microfocus.cics.client.ECIBINPConnection;
import com.microfocus.cics.client.ECIBINPRequest;
import com.microfocus.cics.client.ECIConnection;
import com.microfocus.cics.client.ECIRequest;
import com.microfocus.cics.client.ECIResponse;
import com.microfocus.cics.client.MalformedResponseException;
import com.microfocus.cics.client.ExciRespException;
import java.util.List;
public class SampleChannel {
public static void main(String[] args) throws UnsupportedEncodingException, CICSException,
AbendException, MalformedResponseException, CommAreaSizeException, ExciRespException {
SampleChannel sc = new SampleChannel();
sc.containerTest1();
}
public void containerTest1() throws CICSException, UnsupportedEncodingException, AbendException,
MalformedResponseException, CommAreaSizeException, ExciRespException {
ECIConnection aConn = null;
ECIRequest aReq = null;
ECIResponse aResp = null;
CCLChannel ca = null;
CCLParams theParams = null;
try {
aConn = new ECIBINPConnection()
.setConnectionType(ConnectionType.NO_LUW)
.setHost("localhost").setPort(9003)
.setTrace(true);
aConn.open();
aReq = new ECIBINPRequest(aConn);
// set parameters
ca = new CCLChannel("Bonjour le monde");
CCLContainer aContainer = new CCLContainer("Container1");
ContainerData data = new ContainerData();
data.setContainerData("Hello1".getBytes());
aContainer.setContainerData(data);
ca.addContainer(aContainer);
CCLContainer aContainer2 = new CCLContainer("Container2");
ContainerData data2 = new ContainerData();
data2.setContainerData("Hello2".getBytes());
aContainer2.setContainerData(data2);
ca.addContainer(aContainer2);
theParams = new CCLParams();
theParams.setVersion(CCLVersion.CCL_VERSION_2);
theParams.setCallType(CCLCallType.CCL_SYNC);
theParams.setProgramName("OKTEST");
theParams.setUserId("SYSAD");
theParams.setPassword("SYSAD");
theParams.setChannel(ca);
theParams.setUseChannel(true);
theParams.setExtendMode(CCLExtendMode.CCL_NO_EXTEND);
aReq.setRequestParameter(theParams);
aResp = aReq.send();
List<CCLContainer> containers = aResp.getChannel().getContainers();
for(CCLContainer c: containers) {
ContainerData cd = c.getContainerData();
if(cd != null) {
byte[] cData = cd.getContainerData();
System.out.println(new String(cData));
}
}
} finally {
ca = null;
theParams = null;
if (aReq != null)
aReq.close();
if (aResp != null)
aResp.close();
if (aConn != null) {
try {
aConn.close();
} catch (CICSException e) {
e.printStackTrace();
}
}
}
}
}