Package herddb.network
Class Channel
- java.lang.Object
-
- herddb.network.Channel
-
- All Implemented Interfaces:
AutoCloseable
- Direct Known Subclasses:
AbstractChannel
public abstract class Channel extends Object implements AutoCloseable
Abstract for two-way async comunication channels- Author:
- enrico.olivelli
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceChannel.PduCallback
-
Field Summary
Fields Modifier and Type Field Description protected ChannelEventListenermessagesReceiver
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidchannelIdle()abstract voidclose()longgenerateRequestId()ChannelEventListenergetMessagesReceiver()StringgetName()abstract StringgetRemoteAddress()abstract booleanisClosed()abstract booleanisLocalChannel()abstract booleanisValid()PdusendMessageWithPduReply(long id, io.netty.buffer.ByteBuf request, long timeout)abstract voidsendOneWayMessage(io.netty.buffer.ByteBuf message, SendResultCallback callback)abstract voidsendReplyMessage(long inAnswerTo, io.netty.buffer.ByteBuf message)abstract voidsendRequestWithAsyncReply(long id, io.netty.buffer.ByteBuf message, long timeout, Channel.PduCallback callback)voidsetMessagesReceiver(ChannelEventListener messagesReceiver)
-
-
-
Field Detail
-
messagesReceiver
protected ChannelEventListener messagesReceiver
-
-
Constructor Detail
-
Channel
public Channel(String name)
-
-
Method Detail
-
getMessagesReceiver
public ChannelEventListener getMessagesReceiver()
-
setMessagesReceiver
public void setMessagesReceiver(ChannelEventListener messagesReceiver)
-
sendOneWayMessage
public abstract void sendOneWayMessage(io.netty.buffer.ByteBuf message, SendResultCallback callback)
-
sendReplyMessage
public abstract void sendReplyMessage(long inAnswerTo, io.netty.buffer.ByteBuf message)
-
sendRequestWithAsyncReply
public abstract void sendRequestWithAsyncReply(long id, io.netty.buffer.ByteBuf message, long timeout, Channel.PduCallback callback)
-
channelIdle
public abstract void channelIdle()
-
getRemoteAddress
public abstract String getRemoteAddress()
-
close
public abstract void close()
- Specified by:
closein interfaceAutoCloseable
-
generateRequestId
public final long generateRequestId()
-
sendMessageWithPduReply
public Pdu sendMessageWithPduReply(long id, io.netty.buffer.ByteBuf request, long timeout) throws InterruptedException, TimeoutException
- Throws:
InterruptedExceptionTimeoutException
-
isValid
public abstract boolean isValid()
-
isClosed
public abstract boolean isClosed()
-
isLocalChannel
public abstract boolean isLocalChannel()
-
getName
public String getName()
-
-