com.jukusoft.vertx.connection.clientserver.RemoteConnection Maven / Gradle / Ivy
package com.jukusoft.vertx.connection.clientserver;
import com.carrotsearch.hppc.ObjectObjectMap;
import com.jukusoft.vertx.serializer.SerializableObject;
import io.vertx.core.Handler;
import io.vertx.core.buffer.Buffer;
public interface RemoteConnection {
/**
* send message to remote connection
*/
public void send (SerializableObject msg);
/**
* send message to remote connection
*/
public void sendRaw (Buffer content);
public ObjectObjectMap attributes ();
public V getAttribute (String key, Class cls);
public void putAttribute (String key, Object value);
public String remoteHost ();
public int remotePort ();
/**
* disconnect from remote connection
*/
public void disconnect ();
public void setRawHandler (MessageHandler rawHandler);
public void setCloseHandler (Handler closeHandler);
public void setMessageHandler (MessageHandler handler);
}