Class ClientInstanceManagerImpl
java.lang.Object
com.biglybt.core.instancemanager.impl.ClientInstanceManagerImpl
- All Implemented Interfaces:
ClientInstanceManager, MCGroupAdapter
public class ClientInstanceManagerImpl
extends Object
implements ClientInstanceManager, MCGroupAdapter
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ClientInstanceManagerAdapterprivate static final longprivate static final AEMonitor(package private) booleanprivate static final booleanprivate CopyOnWriteSet<InetSocketAddress> private List<InetSocketAddress> private booleanprivate boolean(package private) final AESemaphoreprivate booleanprivate final IpFilterprivate Set<InetAddress> private final Listprivate static final LogIDsprivate MCGroupprivate static final Stringprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final int(package private) final ClientMyInstanceImplprivate final Map<String, ClientOtherInstanceImpl> (package private) final List<ClientInstanceManagerImpl.Request> (package private) longprivate static ClientInstanceManagerImplprivate Map<InetSocketAddress, InetSocketAddress> private Map<InetSocketAddress, InetSocketAddress> (package private) final AEMonitorprivate Map<InetSocketAddress, InetSocketAddress> private Map<InetSocketAddress, InetSocketAddress> private Map<InetSocketAddress, InetSocketAddress> private Map<InetSocketAddress, InetSocketAddress> Fields inherited from interface ClientInstanceManager
AT_TCP, AT_UDP, AT_UDP_NON_DATA -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddAddresses(ClientInstance inst) voidbooleanaddInstance(InetAddress explicit_address) protected booleanaddInstanceSupport(InetAddress explicit_address, boolean force_send_alive) booleanaddLANSubnet(String subnet) voidprotected ClientOtherInstanceImplprotected voidprotected voidlongprivate MCGroupgetExternalAddress(InetSocketAddress lan_address, int address_type) booleangetLANAddress(InetSocketAddress external_address, int address_type) intgetOtherInstanceCount(boolean block_if_needed) static ClientInstanceManagerprotected voidinformAdded(ClientInstance inst) protected voidinformChanged(ClientInstance inst) protected voidprotected voidvoidvoidinterfaceChanged(NetworkInterface network_interface) protected booleanbooleanbooleanbooleanvoidvoidprotected Map<InetSocketAddress, InetSocketAddress> modifyAddress(Map<InetSocketAddress, InetSocketAddress> map, InetSocketAddress key, InetSocketAddress value, boolean add) protected voidmodifyAddresses(InetAddress internal_address, InetAddress external_address, int tcp, int udp, int udp2, boolean add) voidreceived(NetworkInterface network_interface, InetAddress local_address, InetSocketAddress originator, byte[] data, int length) protected voidvoidvoidprotected MaprequestReceived(ClientInstance instance, Map body) protected voidsearch()protected voidprotected voidsendAlive(InetSocketAddress target) protected voidprotected voidsendByeBye(InetSocketAddress target) protected voidsendMessage(int type) protected voidsendMessage(int type, InetSocketAddress target) protected voidsendMessage(int type, Map body) protected voidsendMessage(int type, Map body, InetSocketAddress member) protected MapsendRequest(int type) protected MapsendRequest(int type, Map body) voidsetIncludeWellKnownLANs(boolean include) private InetSocketAddresssetPort(InetSocketAddress isa, int port) voidtrack(byte[] hash, ClientInstanceTracked.TrackTarget target) voidprivate void
-
Field Details
-
DISABLE_LAN_LOCAL_STUFF
private static final boolean DISABLE_LAN_LOCAL_STUFF- See Also:
-
LOGID
-
MC_GROUP_ADDRESS
- See Also:
-
MC_GROUP_PORT
private static final int MC_GROUP_PORT- See Also:
-
MT_VERSION
private static final int MT_VERSION- See Also:
-
MT_ALIVE
private static final int MT_ALIVE- See Also:
-
MT_BYE
private static final int MT_BYE- See Also:
-
MT_REQUEST
private static final int MT_REQUEST- See Also:
-
MT_REPLY
private static final int MT_REPLY- See Also:
-
MT_REQUEST_SEARCH
private static final int MT_REQUEST_SEARCH- See Also:
-
MT_REQUEST_TRACK
private static final int MT_REQUEST_TRACK- See Also:
-
ALIVE_PERIOD
private static final long ALIVE_PERIOD- See Also:
-
singleton
-
listeners
-
class_mon
-
data_socks_proxies
-
adapter
-
mc_group
-
search_id_next
long search_id_next -
requests
-
my_instance
-
other_instances
-
initialised
private volatile boolean initialised -
ip_filter
-
tcp_lan_to_ext
-
udp_lan_to_ext
-
udp2_lan_to_ext
-
tcp_ext_to_lan
-
udp_ext_to_lan
-
udp2_ext_to_lan
-
lan_addresses
-
lan_subnets
-
explicit_peers
-
explicit_addresses
-
include_well_known_lans
private volatile boolean include_well_known_lans -
initial_search_sem
-
init_wait_abandoned
private boolean init_wait_abandoned -
this_mon
-
closing
boolean closing
-
-
Constructor Details
-
ClientInstanceManagerImpl
-
-
Method Details
-
getSingleton
-
initialize
public void initialize()- Specified by:
initializein interfaceClientInstanceManager
-
getDummyMCGroup
-
getClockSkew
public long getClockSkew()- Specified by:
getClockSkewin interfaceClientInstanceManager
-
trace
- Specified by:
tracein interfaceMCGroupAdapter
-
log
- Specified by:
login interfaceMCGroupAdapter
-
log
- Specified by:
login interfaceMCGroupAdapter
-
isInitialized
public boolean isInitialized()- Specified by:
isInitializedin interfaceClientInstanceManager
-
updateNow
public void updateNow()- Specified by:
updateNowin interfaceClientInstanceManager
-
isClosing
protected boolean isClosing() -
sendAlive
protected void sendAlive() -
sendAlive
-
sendByeBye
protected void sendByeBye() -
sendByeBye
-
sendMessage
protected void sendMessage(int type) -
sendMessage
-
sendMessage
-
sendMessage
-
received
public void received(NetworkInterface network_interface, InetAddress local_address, InetSocketAddress originator, byte[] data, int length) - Specified by:
receivedin interfaceMCGroupAdapter
-
requestReceived
-
interfaceChanged
- Specified by:
interfaceChangedin interfaceMCGroupAdapter
-
checkAdd
-
checkRemove
-
getMyInstance
- Specified by:
getMyInstancein interfaceClientInstanceManager
-
search
protected void search() -
getOtherInstanceCount
public int getOtherInstanceCount(boolean block_if_needed) - Specified by:
getOtherInstanceCountin interfaceClientInstanceManager
-
getOtherInstances
- Specified by:
getOtherInstancesin interfaceClientInstanceManager
-
waitForInit
private void waitForInit() -
addAddresses
-
removeAddresses
-
modifyAddresses
protected void modifyAddresses(InetAddress internal_address, InetAddress external_address, int tcp, int udp, int udp2, boolean add) -
modifyAddress
protected Map<InetSocketAddress, InetSocketAddress> modifyAddress(Map<InetSocketAddress, InetSocketAddress> map, InetSocketAddress key, InetSocketAddress value, boolean add) -
getLANAddress
- Specified by:
getLANAddressin interfaceClientInstanceManager
-
getExternalAddress
- Specified by:
getExternalAddressin interfaceClientInstanceManager
-
isLANAddress
- Specified by:
isLANAddressin interfaceClientInstanceManager
-
addExplicitLANAddress
- Specified by:
addExplicitLANAddressin interfaceClientInstanceManager
-
isExplicitLANAddress
- Specified by:
isExplicitLANAddressin interfaceClientInstanceManager
-
removeExplicitLANAddress
- Specified by:
removeExplicitLANAddressin interfaceClientInstanceManager
-
setPort
-
addLANSubnet
- Specified by:
addLANSubnetin interfaceClientInstanceManager- Throws:
PatternSyntaxException
-
setIncludeWellKnownLANs
public void setIncludeWellKnownLANs(boolean include) - Specified by:
setIncludeWellKnownLANsin interfaceClientInstanceManager
-
getIncludeWellKnownLANs
public boolean getIncludeWellKnownLANs()- Specified by:
getIncludeWellKnownLANsin interfaceClientInstanceManager
-
addInstance
- Specified by:
addInstancein interfaceClientInstanceManager
-
addInstanceSupport
-
track
- Specified by:
trackin interfaceClientInstanceManager
-
checkTimeouts
protected void checkTimeouts() -
informRemoved
-
informAdded
-
informChanged
-
informTracked
-
sendRequest
-
sendRequest
-
addListener
- Specified by:
addListenerin interfaceClientInstanceManager
-
removeListener
- Specified by:
removeListenerin interfaceClientInstanceManager
-