+++ /dev/null
-/**
- @header@
- */
-package org.pcmm.rcd.impl;
-
-import java.io.IOException;
-import java.net.InetAddress;
-import java.net.Socket;
-import java.net.UnknownHostException;
-
-import org.pcmm.nio.PCMMChannel;
-// import org.junit.Assert;
-import org.pcmm.objects.MMVersionInfo;
-import org.pcmm.rcd.IPCMMClient;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.umu.cops.stack.COPSMsg;
-
-/**
- *
- * default implementation for {@link IPCMMClient}
- *
- *
- */
-public class AbstractPCMMClient implements IPCMMClient {
-
- protected Logger logger = LoggerFactory.getLogger(AbstractPCMMClient.class);
- /**
- * socket used to communicated with server.
- */
- private Socket socket;
-
- private String clientHanlde;
-
- private MMVersionInfo versionInfo;
-
- private PCMMChannel channel;
-
- public AbstractPCMMClient() {
- }
-
- /*
- * (non-Javadoc)
- *
- * @see pcmm.rcd.IPCMMClient#sendRequest(pcmm.messages.IMessage)
- */
- public void sendRequest(COPSMsg requestMessage) {
- try {
- channel.sendMsg(requestMessage);
- } catch (Exception e) {
- logger.error(e.getMessage(), getSocket());
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.pcmm.rcd.IPCMMClient#readMessage()
- */
- public COPSMsg readMessage() {
- try {
- COPSMsg recvdMsg = channel.receiveMessage();
- // logger.debug("received message : " + recvdMsg.getHeader());
- return recvdMsg;
- } catch (Exception e) {
- logger.error(e.getMessage(), getSocket());
- }
- return null;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see pcmm.rcd.IPCMMClient#tryConnect(java.lang.String, int)
- */
- public boolean tryConnect(String address, int port) {
- try {
- InetAddress addr = InetAddress.getByName(address);
- tryConnect(addr, port);
- } catch (UnknownHostException e) {
- logger.error(e.getMessage());
- return false;
- }
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see pcmm.rcd.IPCMMClient#tryConnect(java.net.InetAddress, int)
- */
- public boolean tryConnect(InetAddress address, int port) {
- try {
- setSocket(new Socket(address, port));
- } catch (IOException e) {
- logger.error(e.getMessage());
- return false;
- }
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see pcmm.rcd.IPCMMClient#disconnect()
- */
- public boolean disconnect() {
- if (isConnected()) {
- try {
- socket.close();
- channel = null;
- } catch (IOException e) {
- logger.error(e.getMessage());
- }
- }
- return true;
- }
-
- /**
- * @return the socket
- */
- public Socket getSocket() {
- return socket;
- }
-
- public PCMMChannel getChannel() {
- return channel;
- }
-
- /**
- * @param socket
- * the socket to set
- */
- public void setSocket(Socket socket) {
- this.socket = socket;
- if (this.socket != null
- && (this.channel == null || !this.channel.getSocket().equals(
- this.socket)))
- channel = new PCMMChannel(this.socket);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.pcmm.rcd.IPCMMClient#isConnected()
- */
- public boolean isConnected() {
- return socket != null && socket.isConnected();
- }
-
- /**
- * @return the versionInfo
- */
- public MMVersionInfo getVersionInfo() {
- return versionInfo;
- }
-
- /**
- * @param versionInfo
- * the versionInfo to set
- */
- public void setVersionInfo(MMVersionInfo versionInfo) {
- this.versionInfo = versionInfo;
- }
-
- @Override
- public String getClientHandle() {
- return clientHanlde;
- }
-
- @Override
- public void setClientHandle(String handle) {
- this.clientHanlde = handle;
- }
-
-}