package com.gyee.edge.gateway.client;

import com.gyee.edge.gateway.message.GYMessage;
import io.netty.channel.EventLoopGroup;
import io.netty.util.concurrent.Future;

public interface IClient {

    EndPoint getEndPoint();

    Future<Integer> connect();

    Future<Integer> reconnect();

    void disconnect();

    boolean isConnected();

    EventLoopGroup getEventLoop();

    Future<Integer> sendMessage(GYMessage gyMessage);

    Future<Integer> send(Byte[] bytes);


}
