public class MetaNamingService extends DummyNamingService
Modifier and Type | Field and Description |
---|---|
protected List<NamingService> |
_services |
BASE32_HASH_LENGTH, CACHE_MAX_SIZE, DEST_SIZE, PROP_B32
_context, _listeners, _log, _updaters, PROP_IMPL
Constructor and Description |
---|
MetaNamingService(I2PAppContext context)
Adds the services from the i2p.nameservicelist property, in order, as chained services.
|
MetaNamingService(I2PAppContext context,
List<NamingService> services) |
Modifier and Type | Method and Description |
---|---|
boolean |
addNamingService(NamingService ns,
boolean head)
Only for chaining-capable NamingServices.
|
void |
export(Writer out,
Properties options)
All services aggregated.
|
Map<String,String> |
getBase64Entries(Properties options)
All services aggregated
|
Map<String,Destination> |
getEntries(Properties options)
All services aggregated
|
Set<String> |
getNames(Properties options)
All services aggregated
|
List<NamingService> |
getNamingServices()
This implementation returns null.
|
Destination |
lookup(String hostname,
Properties lookupOptions,
Properties storedOptions)
Same as lookup(hostname) but with in and out options
Note that whether this (and lookup(hostname)) resolve Base 32 addresses
in the form {52 chars}.b32.i2p is NamingService-specific.
|
boolean |
put(String hostname,
Destination d,
Properties options)
Stores in the last service
|
boolean |
putIfAbsent(String hostname,
Destination d,
Properties options)
Stores in the last service
|
void |
registerListener(NamingServiceListener nsl) |
boolean |
remove(String hostname,
Properties options)
Removes from all services
|
boolean |
removeNamingService(NamingService ns)
Only for chaining-capable NamingServices.
|
String |
reverseLookup(Destination dest,
Properties options)
Same as reverseLookup(dest) but with options
This implementation returns null.
|
void |
shutdown()
Parent will call when removed.
|
int |
size(Properties options)
All services aggregated
|
void |
unregisterListener(NamingServiceListener nsl) |
clearCache, getCache, putCache, removeCache
addDestination, addDestination, addNamingService, createInstance, export, getConfiguration, getEntries, getName, getNames, getParent, lookup, lookup, lookupAll, lookupAll, lookupBase32, lookupBase64, put, putAll, putIfAbsent, registerUpdater, remove, remove, remove, requestUpdate, reverseLookup, reverseLookup, reverseLookupAll, reverseLookupAll, reverseLookupAll, setConfiguration, size, start, toString, unregisterUpdater, update
protected final List<NamingService> _services
public MetaNamingService(I2PAppContext context)
public MetaNamingService(I2PAppContext context, List<NamingService> services)
services
- if non-null, services to be added. If null, this will only handle b32 and b64,
until addNamingService() is called later.public boolean addNamingService(NamingService ns, boolean head)
NamingService
addNamingService
in class NamingService
head
- or tailpublic List<NamingService> getNamingServices()
NamingService
getNamingServices
in class NamingService
public boolean removeNamingService(NamingService ns)
NamingService
removeNamingService
in class NamingService
public void registerListener(NamingServiceListener nsl)
registerListener
in class NamingService
public void unregisterListener(NamingServiceListener nsl)
unregisterListener
in class NamingService
public Destination lookup(String hostname, Properties lookupOptions, Properties storedOptions)
NamingService
lookup
in class DummyNamingService
hostname
- mixed case as it could be a keylookupOptions
- input parameter, NamingService-specific, can be nullstoredOptions
- output parameter, NamingService-specific, any stored properties will be added if non-nullpublic String reverseLookup(Destination dest, Properties options)
NamingService
reverseLookup
in class NamingService
dest
- non-nulloptions
- NamingService-specific, can be nullpublic boolean put(String hostname, Destination d, Properties options)
put
in class NamingService
options
- NamingService-specific, can be nullpublic boolean putIfAbsent(String hostname, Destination d, Properties options)
putIfAbsent
in class NamingService
options
- NamingService-specific, can be nullpublic boolean remove(String hostname, Properties options)
remove
in class NamingService
options
- NamingService-specific, can be nullpublic Map<String,Destination> getEntries(Properties options)
getEntries
in class NamingService
options
- NamingService-specific, can be nullpublic Map<String,String> getBase64Entries(Properties options)
getBase64Entries
in class NamingService
options
- NamingService-specific, can be nullpublic Set<String> getNames(Properties options)
getNames
in class NamingService
options
- NamingService-specific, can be nullpublic void export(Writer out, Properties options) throws IOException
export
in class NamingService
options
- NamingService-specific, can be nullIOException
public int size(Properties options)
size
in class NamingService
options
- NamingService-specific, can be nullpublic void shutdown()
NamingService
shutdown
in class NamingService