public class SendChannelEndpoint extends UdpChannelTransport
NetworkPublication
s onto a single transport channel for
sending data and setup frames plus the receiving of status and NAK frames.bindAddress, connectAddress, context, endPointAddress, errorHandler, invalidPackets, isClosed, multicastTtl, receiveDatagramChannel, selectionKey, sendDatagramChannel, transportPoller, udpChannel
Constructor and Description |
---|
SendChannelEndpoint(UdpChannel udpChannel,
AtomicCounter statusIndicator,
MediaDriver.Context context) |
Modifier and Type | Method and Description |
---|---|
void |
addDestination(ChannelUri channelUri,
InetSocketAddress address) |
void |
checkForReResolution(long nowNs,
DriverConductorProxy conductorProxy) |
void |
closeStatusIndicator() |
void |
decRef() |
void |
incRef() |
void |
indicateActive() |
void |
onNakMessage(NakFlyweight msg,
UnsafeBuffer buffer,
int length,
InetSocketAddress srcAddress) |
void |
onRttMeasurement(RttMeasurementFlyweight msg,
UnsafeBuffer buffer,
int length,
InetSocketAddress srcAddress) |
void |
onStatusMessage(StatusMessageFlyweight msg,
UnsafeBuffer buffer,
int length,
InetSocketAddress srcAddress) |
void |
openChannel(DriverConductorProxy conductorProxy) |
String |
originalUriString() |
void |
registerForSend(NetworkPublication publication)
Called from the
Sender to add information to the control packet dispatcher. |
void |
removeDestination(ChannelUri channelUri,
InetSocketAddress address) |
void |
resolutionChange(String endpoint,
InetSocketAddress newAddress) |
int |
send(ByteBuffer buffer)
Send contents of a
ByteBuffer to connected address. |
boolean |
shouldBeClosed()
Called by the
DriverConductor to determine if the channel endpoint should be closed. |
int |
statusIndicatorCounterId() |
void |
unregisterForSend(NetworkPublication publication)
Called from the
Sender to remove information from the control packet dispatcher. |
void |
validateAllowsManualControl() |
bindAddressAndPort, close, isMulticast, isValidFrame, multicastTtl, openDatagramChannel, receive, receiveDatagramChannel, receiveHook, registerForRead, sendError, sendHook, udpChannel, updateEndpoint
public SendChannelEndpoint(UdpChannel udpChannel, AtomicCounter statusIndicator, MediaDriver.Context context)
public void decRef()
public void incRef()
public void openChannel(DriverConductorProxy conductorProxy)
public String originalUriString()
public int statusIndicatorCounterId()
public void indicateActive()
public void closeStatusIndicator()
public boolean shouldBeClosed()
DriverConductor
to determine if the channel endpoint should be closed.public void registerForSend(NetworkPublication publication)
Sender
to add information to the control packet dispatcher.publication
- to add to the dispatcherpublic void unregisterForSend(NetworkPublication publication)
Sender
to remove information from the control packet dispatcher.publication
- to removepublic int send(ByteBuffer buffer)
ByteBuffer
to connected address.
This is used on the sender side for performance over send(ByteBuffer, SocketAddress).buffer
- to sendpublic void checkForReResolution(long nowNs, DriverConductorProxy conductorProxy)
public void onStatusMessage(StatusMessageFlyweight msg, UnsafeBuffer buffer, int length, InetSocketAddress srcAddress)
public void onNakMessage(NakFlyweight msg, UnsafeBuffer buffer, int length, InetSocketAddress srcAddress)
public void onRttMeasurement(RttMeasurementFlyweight msg, UnsafeBuffer buffer, int length, InetSocketAddress srcAddress)
public void validateAllowsManualControl()
public void addDestination(ChannelUri channelUri, InetSocketAddress address)
public void removeDestination(ChannelUri channelUri, InetSocketAddress address)
public void resolutionChange(String endpoint, InetSocketAddress newAddress)
Copyright © 2014-2020 Real Logic Limited. All Rights Reserved.