2009年10月31日 星期六 15:32

package Client;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.net.Socket;

import java.net.SocketException;

import java.net.SocketTimeoutException;

import java.net.UnknownHostException;

import java.nio.channels.IllegalBlockingModeException;

import Config.ParameterCfg;

import ErrorExcp.ErrorExcp;

import Log.Log;

import Msg.Msg.Msg;

import MsgCfg.MsgGlobalInfo;

/**

*

* @author xiehui 通信类,数据的发送与接受

*

*/

public class Client {

/**

* 负责数据发送与接受的套接字

*/

public Socket ncpClient;

/**

* socket读取数据管道

*/

public OutputStream writeIO;

/**

* socket写数据管道

*/

public InputStream receiveIO;

/**

*日志记录

*/

public Log log;

/**

* 是否做了资源释放,避免二次释放引起bug,默认为假

*/

public boolean isCloseDeal = false;

/**

* 在套接字上获取的报文信息

*/

public MsgInfo msgInfo;

/**

* Client()函数为构造函数

*

* @param acccpetSocket

*            :为服务器投递过来的套接字

*

*            log:为传递的日志对象,方便在通信的过程中将状态记录下来

*

* @return 没有返回值的内容

*

* @exception exceptions

*                没有异常被抛出

*/

public Client(Socket acccpetSocket, Log log) {

/**

* 套接字本地创建的,发起方是农产品前置机

*/

this.ncpClient = acccpetSocket;

this.log = log;

msgInfo = new MsgInfo();

/**

* 将发起的IP地址写入日志

*/

log.add(acccpetSocket.getRemoteSocketAddress());

}

/**

* 向服务器建立连接

*

* @param seconds

*            :为向服务器发起连接的超时时间

*

*         &nbsp

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐