# Package org.apache.ignite.spi.discovery

Contains APIs for topology manager SPI.

- Interface Summary
  Interface | Description
  --- | ---
  DiscoveryDataBag.GridDiscoveryData | Facade interface representing `DiscoveryDataBag` object with discovery data collected in the grid.
  DiscoveryDataBag.JoiningNodeDiscoveryData | Facade interface representing `DiscoveryDataBag` object with discovery data from joining node.
  DiscoveryMetricsProvider | Provides metrics to discovery SPI.
  DiscoverySpi | Grid discovery SPI allows to discover remote nodes in grid.
  DiscoverySpiCustomMessage | Message to send across ring.
  DiscoverySpiDataExchange | Handler for initial data exchange between Ignite nodes.
  DiscoverySpiListener | Listener for grid node discovery events.
  DiscoverySpiMBean | Generic MBean interface to monitor DiscoverySpi subsystem.
  DiscoverySpiNodeAuthenticator | Node authenticator.
  IgniteDiscoveryThread | Marker interface for discovery thread on cluster server node.

- Class Summary
  Class | Description
  --- | ---
  DiscoveryDataBag | Provides interface for `GridComponent` to collect and exchange discovery data both on joining node and on cluster nodes.
  DiscoveryNotification | Discovery notification object.

- Annotation Types Summary
  Annotation Type | Description
  --- | ---
  DiscoverySpiHistorySupport | This annotation is for all implementations of `DiscoverySpi` that support topology snapshots history.
  DiscoverySpiMutableCustomMessageSupport | This annotation is for all implementations of `DiscoverySpi` that support topology mutable `DiscoverySpiCustomMessage`s.
  DiscoverySpiOrderSupport | This annotation is for all implementations of `DiscoverySpi` that support proper node ordering.