net.corda.node.services.network

## Class PersistentNetworkMapService

- SingletonSerializeAsToken
- - net.corda.node.services.api.AbstractNodeService
  - - net.corda.node.services.network.AbstractNetworkMapService
    - - net.corda.node.services.network.PersistentNetworkMapService

- All Implemented Interfaces:
    NetworkMapService, SerializeAsToken

      public class PersistentNetworkMapService
      extends AbstractNetworkMapService

  A network map service backed by a database to survive restarts of the node hosting it.

  Majority of the logic is inherited from `class AbstractNetworkMapService`.

  This class needs database transactions to be in-flight during method calls and init, otherwise it will throw exceptions.

  See Also:
    `class AbstractNetworkMapService`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface net.corda.node.services.network.NetworkMapService

      `NetworkMapService.Companion, NetworkMapService.FetchMapRequest, NetworkMapService.FetchMapResponse, NetworkMapService.QueryIdentityRequest, NetworkMapService.QueryIdentityResponse, NetworkMapService.RegistrationRequest, NetworkMapService.RegistrationResponse, NetworkMapService.SubscribeRequest, NetworkMapService.SubscribeResponse, NetworkMapService.Update, NetworkMapService.UpdateAcknowledge`

  - ### Field Summary

    - ### Fields inherited from interface net.corda.node.services.network.NetworkMapService

      `Companion`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PersistentNetworkMapService(ServiceHubInternal services)` A network map service backed by a database to survive restarts of the node hosting it.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.util.Map<net.corda.core.crypto.Party,net.corda.node.services.network.NodeRegistrationInfo>` | `getRegisteredNodes()`
    `ThreadBox<net.corda.node.utilities.JDBCHashMap>` | `getSubscribers()`

    - ### Methods inherited from class net.corda.node.services.network.AbstractNetworkMapService

      `getMapVersion, getMaxSizeRegistrationRequestBytes, getMaxUnacknowledgedUpdates, getNodes, getRegisteredNodes, getSubscribers, getUnacknowledgedCount, get_mapVersion, notifySubscribers, processAcknowledge, processFetchAllRequest, processQueryRequest, processRegistrationChangeRequest, processSubscriptionRequest, setup, unregisterNetworkHandlers`

    - ### Methods inherited from class net.corda.node.services.api.AbstractNodeService

      `getNet, getServices`

    - ### Methods inherited from class net.corda.core.serialization.SingletonSerializeAsToken

      `toToken`

    - ### Methods inherited from interface net.corda.node.services.network.NetworkMapService

      `getNodes`

    - ### Methods inherited from interface net.corda.core.serialization.SerializeAsToken

      `toToken`

- - ### Constructor Detail

    - #### PersistentNetworkMapService

          public PersistentNetworkMapService(ServiceHubInternal services)

      A network map service backed by a database to survive restarts of the node hosting it.

      Majority of the logic is inherited from `class AbstractNetworkMapService`.

      This class needs database transactions to be in-flight during method calls and init, otherwise it will throw exceptions.

      See Also:
        `class AbstractNetworkMapService`

  - ### Method Detail

    - #### getRegisteredNodes

          public java.util.Map<net.corda.core.crypto.Party,net.corda.node.services.network.NodeRegistrationInfo> getRegisteredNodes()

    - #### getSubscribers

          public ThreadBox<net.corda.node.utilities.JDBCHashMap> getSubscribers()