net.i2p.router

## Class PersistentKeyRing

- java.lang.Object
- - java.util.AbstractMap<K,V>
  - - java.util.concurrent.ConcurrentHashMap<Hash,SessionKey>
    - - net.i2p.util.KeyRing
      - - net.i2p.router.PersistentKeyRing

All Implemented Interfaces:
  Serializable, ConcurrentMap<Hash,SessionKey>, Map<Hash,SessionKey>

    public class PersistentKeyRing
    extends KeyRing

ConcurrentHashMap with backing in the router.config file. router.keyring.key.{base64 hash, with = replaced with $}={base64 session key} Caution - not all HashMap methods are overridden.

See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class java.util.AbstractMap

`AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>`

### Nested classes/interfaces inherited from interface java.util.Map

`Map.Entry<K,V>`

### Constructor Summary

Constructors
Constructor and Description
`PersistentKeyRing(RouterContext ctx)`

### Method Summary

Methods
`SessionKey` `put(Hash h, SessionKey sk)`
`SessionKey` `remove(Hash h)`
`void` `renderStatusHTML(Writer out)`

### Methods inherited from class java.util.concurrent.ConcurrentHashMap

`clear, contains, containsKey, containsValue, elements, entrySet, get, isEmpty, keys, keySet, putAll, putIfAbsent, remove, remove, replace, replace, size, values`

### Methods inherited from class java.util.AbstractMap

`clone, equals, hashCode, toString`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Map

`equals, hashCode`

### Constructor Detail

#### PersistentKeyRing

    public PersistentKeyRing(RouterContext ctx)

### Method Detail

#### put

    public SessionKey put(Hash h,
                 SessionKey sk)

Specified by:
  `put` in interface `Map<Hash,SessionKey>`
Overrides:
  `put` in class `ConcurrentHashMap<Hash,SessionKey>`

#### remove

    public SessionKey remove(Hash h)

#### renderStatusHTML

    public void renderStatusHTML(Writer out)
                          throws IOException

Overrides:
  `renderStatusHTML` in class `KeyRing`
Throws:
  `IOException`