protected DHTUDPPacketReplyStats( DHTUDPPacketNetworkHandler network_handler, InetSocketAddress originator, DataInputStream is, int trans_id) throws IOException { super(network_handler, originator, is, DHTUDPPacketHelper.ACT_REPLY_STATS, trans_id); if (getProtocolVersion() >= DHTTransportUDP.PROTOCOL_VERSION_GENERIC_NETPOS) { stats_type = is.readInt(); if (stats_type == DHTUDPPacketRequestStats.STATS_TYPE_ORIGINAL) { original_stats = DHTUDPUtils.deserialiseStats(getProtocolVersion(), is); } else { new_stats = DHTUDPUtils.deserialiseByteArray(is, 65535); } } else { original_stats = DHTUDPUtils.deserialiseStats(getProtocolVersion(), is); } }
protected DHTTransportUDPContactImpl( boolean _is_local, DHTTransportUDPImpl _transport, InetSocketAddress _transport_address, InetSocketAddress _external_address, byte _protocol_version, int _instance_id, long _skew, byte _generic_flags) throws DHTTransportException { transport = _transport; transport_address = _transport_address; external_address = _external_address; protocol_version = _protocol_version; if (transport_address.equals(external_address)) { external_address = transport_address; } instance_id = _instance_id; skew = _skew; generic_flags = _generic_flags; if (transport_address == external_address || transport_address.getAddress().equals(external_address.getAddress())) { id = DHTUDPUtils.getNodeID(external_address, protocol_version); } createNetworkPositions(_is_local); }
public void serialise(DataOutputStream os) throws IOException { super.serialise(os); if (getProtocolVersion() >= DHTTransportUDP.PROTOCOL_VERSION_GENERIC_NETPOS) { os.writeInt(stats_type); if (stats_type == DHTUDPPacketRequestStats.STATS_TYPE_ORIGINAL) { DHTUDPUtils.serialiseStats(getProtocolVersion(), os, original_stats); } else { DHTUDPUtils.serialiseByteArray(os, new_stats, 65535); } } else { DHTUDPUtils.serialiseStats(getProtocolVersion(), os, original_stats); } }
public void createNetworkPositions(boolean is_local) { network_positions = DHTNetworkPositionManager.createPositions( id == null ? DHTUDPUtils.getBogusNodeID() : id, is_local); }