package org.wcs.plugin.tcp.intf;

import org.wcs.plugin.tcp.model.SocketDataItem;

public interface ISocketClientEvent {

    /**
     * 连接成功
     * @param socketDataItem SocketDataItem
     */
    void onConnect(SocketDataItem socketDataItem);

    /**
     * 断开连接
     * @param socketDataItem SocketDataItem
     */
    void onDisconnect(SocketDataItem socketDataItem);

    /**
     * 接收到消息
     * @param socketDataItem SocketDataItem
     * @param message 消息
     */
    void onMessage(SocketDataItem socketDataItem, String message);

    /**
     * 接收到字节
     * @param socketDataItem SocketDataItem
     * @param bytes 字节
     */
    void onBytes(SocketDataItem socketDataItem, byte[] bytes);

    /**
     * 错误
     * @param socketDataItem SocketDataItem
     * @param throwable 错误
     */
    void onError(SocketDataItem socketDataItem, Throwable throwable);


}
