Package com.biglybt.core.dht.netcoords
Class DHTNetworkPositionManager
- java.lang.Object
-
- com.biglybt.core.dht.netcoords.DHTNetworkPositionManager
-
public class DHTNetworkPositionManager extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static DHTNetworkPosition[]
NP_EMPTY_ARRAY
private static CopyOnWriteList<DHTNetworkPositionListener>
position_listeners
private static CopyOnWriteList<DHTNetworkPositionProviderListener>
provider_listeners
private static DHTNetworkPositionProvider[]
providers
private static java.lang.Object
providers_lock
private static DHTStorageAdapter
storage_adapter
-
Constructor Summary
Constructors Constructor Description DHTNetworkPositionManager()
-
Method Summary
-
-
-
Field Detail
-
providers
private static DHTNetworkPositionProvider[] providers
-
providers_lock
private static final java.lang.Object providers_lock
-
storage_adapter
private static DHTStorageAdapter storage_adapter
-
provider_listeners
private static final CopyOnWriteList<DHTNetworkPositionProviderListener> provider_listeners
-
position_listeners
private static volatile CopyOnWriteList<DHTNetworkPositionListener> position_listeners
-
NP_EMPTY_ARRAY
private static final DHTNetworkPosition[] NP_EMPTY_ARRAY
-
-
Method Detail
-
initialise
public static void initialise(DHTStorageAdapter adapter)
-
startUp
private static void startUp(DHTNetworkPositionProvider provider)
-
shutDown
private static void shutDown(DHTNetworkPositionProvider provider)
-
destroy
public static void destroy(DHTStorageAdapter adapter)
-
registerProvider
public static DHTNetworkPositionProviderInstance registerProvider(DHTNetworkPositionProvider provider)
-
unregisterProvider
public static void unregisterProvider(DHTNetworkPositionProvider provider)
-
unregisterProviderSupport
private static boolean unregisterProviderSupport(DHTNetworkPositionProvider provider)
-
getProvider
public static DHTNetworkPositionProvider getProvider(byte type)
-
getLocalPositions
public static DHTNetworkPosition[] getLocalPositions()
-
getBestLocalPosition
public static DHTNetworkPosition getBestLocalPosition()
-
createPositions
public static DHTNetworkPosition[] createPositions(byte[] ID, boolean is_local)
-
estimateRTT
public static float estimateRTT(DHTNetworkPosition[] p1s, DHTNetworkPosition[] p2s)
-
update
public static void update(DHTNetworkPosition[] local_positions, byte[] remote_id, DHTNetworkPosition[] remote_positions, float rtt)
-
serialisePosition
public static byte[] serialisePosition(DHTNetworkPosition pos) throws java.io.IOException
- Throws:
java.io.IOException
-
deserialisePosition
public static DHTNetworkPosition deserialisePosition(java.net.InetAddress originator, byte[] bytes) throws java.io.IOException
- Throws:
java.io.IOException
-
deserialise
public static DHTNetworkPosition deserialise(java.net.InetAddress originator, byte position_type, java.io.DataInputStream is) throws java.io.IOException
- Throws:
java.io.IOException
-
addPositionListener
public static void addPositionListener(DHTNetworkPositionListener listener)
-
removePositionListener
public static void removePositionListener(DHTNetworkPositionListener listener)
-
addProviderListener
public static void addProviderListener(DHTNetworkPositionProviderListener listener)
-
removeProviderListener
public static void removeProviderListener(DHTNetworkPositionProviderListener listener)
-
-