Package net.i2p.app
Class ClientAppManagerImpl
- java.lang.Object
-
- net.i2p.app.ClientAppManagerImpl
-
- All Implemented Interfaces:
ClientAppManager
- Direct Known Subclasses:
RouterAppManager
public class ClientAppManagerImpl extends Object implements ClientAppManager
A simple ClientAppManager that supports register/unregister only, so that client apps may find each other in AppContext. See RouterAppManager for the real thing in RouterContext.- Since:
- 0.9.30
-
-
Field Summary
Fields Modifier and Type Field Description protected ConcurrentHashMap<String,ClientApp>
_registered
-
Constructor Summary
Constructors Constructor Description ClientAppManagerImpl(I2PAppContext ctx)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ClientApp
getRegisteredApp(String name)
Get a registered app.void
notify(ClientApp app, ClientAppState state, String message, Exception e)
Does nothing.boolean
register(ClientApp app)
Register with the manager under the given name, so that other clients may find it.void
unregister(ClientApp app)
Unregister with the manager.
-
-
-
Field Detail
-
_registered
protected final ConcurrentHashMap<String,ClientApp> _registered
-
-
Constructor Detail
-
ClientAppManagerImpl
public ClientAppManagerImpl(I2PAppContext ctx)
-
-
Method Detail
-
notify
public void notify(ClientApp app, ClientAppState state, String message, Exception e)
Does nothing.- Specified by:
notify
in interfaceClientAppManager
- Parameters:
app
- non-nullstate
- non-nullmessage
- may be nulle
- may be null
-
register
public boolean register(ClientApp app)
Register with the manager under the given name, so that other clients may find it. Only required for apps used by other apps.- Specified by:
register
in interfaceClientAppManager
- Parameters:
app
- non-null- Returns:
- true if successful, false if duplicate name
-
unregister
public void unregister(ClientApp app)
Unregister with the manager. Name must be the same as that from register(). Only required for apps used by other apps.- Specified by:
unregister
in interfaceClientAppManager
- Parameters:
app
- non-null
-
getRegisteredApp
public ClientApp getRegisteredApp(String name)
Get a registered app. Only used for apps finding other apps. Do not hold a static reference. If you only need to find a port, use the PortMapper instead.- Specified by:
getRegisteredApp
in interfaceClientAppManager
- Parameters:
name
- non-null- Returns:
- client app or null
-
-