@Override public void receiveData(final RawData raw) { if (raw.getAddress() == null) throw new NullPointerException(); if (raw.getPort() == 0) throw new NullPointerException(); // Create a new task to process this message Runnable task = new Runnable() { public void run() { receiveMessage(raw); } }; runInProtocolStage(task); }
@Override public void receiveData(final RawData raw) { if (raw.getAddress() == null) { throw new IllegalArgumentException("received message that does not have a source address"); } else if (raw.getPort() == 0) { throw new IllegalArgumentException("received message that does not have a source port"); } else { // Create a new task to process this message runInProtocolStage(new Runnable() { @Override public void run() { receiveMessage(raw); } }); } }
@Override public void receiveData(final RawData raw) { LOG.log(Level.INFO, "Received request: {0}", new String(raw.getBytes())); connector.send(new RawData("ACK".getBytes(), raw.getAddress(), raw.getPort())); } }
protected void work() throws InterruptedException, IOException { RawData raw = outgoing.take(); // Blocking datagram.setData(raw.getBytes()); datagram.setAddress(raw.getAddress()); datagram.setPort(raw.getPort()); if (LOGGER.isLoggable(Level.FINER)) { LOGGER.log(Level.FINER, "UDPConnector ({0}) sends {1} bytes to {2}:{3}", new Object[]{socket.getLocalSocketAddress(), datagram.getLength(), datagram.getAddress(), datagram.getPort()}); } socket.send(datagram); } }
protected void work() throws InterruptedException, IOException { RawData raw = outgoing.take(); // Blocking datagram.setData(raw.getBytes()); datagram.setAddress(raw.getAddress()); datagram.setPort(raw.getPort()); if (LOGGER.isLoggable(Level.FINER)) { LOGGER.log(Level.FINER, "UDPConnector ({0}) sends {1} bytes to {2}:{3}", new Object[]{socket.getLocalSocketAddress(), datagram.getLength(), datagram.getAddress(), datagram.getPort()}); } socket.send(datagram); } }
@Override public void send(final RawData msg) { final ChannelPool channelPool = poolMap.get(new InetSocketAddress(msg.getAddress(), msg.getPort())); Future<Channel> acquire = channelPool.acquire(); acquire.addListener(new GenericFutureListener<Future<Channel>>() { @Override public void operationComplete(Future<Channel> future) throws Exception { if (future.isSuccess()) { Channel channel = future.getNow(); try { channel.writeAndFlush(Unpooled.wrappedBuffer(msg.getBytes())); } finally { channelPool.release(channel); } } else { LOGGER.log(Level.WARNING, "Unable to open connection to " + msg.getAddress(), future.cause()); } } }); }
public void send(RawData raw) { if (raw.getAddress() == null || raw.getPort() == 0) { throw new RuntimeException("Message has no destination address/port"); } connector.send(raw); }
private void reject(final RawData raw, final CoAPMessageFormatException cause) { // Generate RST EmptyMessage rst = new EmptyMessage(Type.RST); rst.setMID(cause.getMid()); rst.setDestination(raw.getAddress()); rst.setDestinationPort(raw.getPort()); coapstack.sendEmptyMessage(null, rst); }
msg = parser.parseMessage(raw); msg.setSource(raw.getAddress()); msg.setSourcePort(raw.getPort());
rst.setToken(new byte[0]); rst.setDestination(raw.getAddress()); rst.setDestinationPort(raw.getPort()); for (MessageInterceptor interceptor:interceptors) interceptor.sendEmptyMessage(rst); request.setSourcePort(raw.getPort()); request.setSenderIdentity(raw.getSenderIdentity()); response.setSourcePort(raw.getPort()); message.setSourcePort(raw.getPort());
} else { msg.setSource(raw.getAddress()); msg.setSourcePort(raw.getPort()); lastIncomingMessage = msg; return msg;