Package nxt.peer

Class Peers

java.lang.Object
nxt.peer.Peers

public final class Peers extends Object
  • Field Details

  • Method Details

    • init

      public static void init()
      Initialize peer processing
    • shutdown

      public static void shutdown()
      Shutdown peer processing
    • disableNetworking

      public static void disableNetworking()
    • enableNetworking

      public static void enableNetworking()
    • isNetworkingEnabled

      public static boolean isNetworkingEnabled()
    • addListener

      public static boolean addListener(Listener<Peer> listener, Peers.Event eventType)
      Add a peer listener
      Parameters:
      listener - Listener
      eventType - Listener event
      Returns:
      TRUE if the listener was added
    • removeListener

      public static boolean removeListener(Listener<Peer> listener, Peers.Event eventType)
      Remove a peer listener
      Parameters:
      listener - Listener
      eventType - Listener event
      Returns:
      TRUE if the listener was removed
    • addPeer

      public static boolean addPeer(Peer peer)
      Add a peer to the peer list
      Parameters:
      peer - Peer to add
      Returns:
      TRUE if this is a new peer
    • removePeer

      public static boolean removePeer(Peer peer)
      Remove a peer from the peer list
      Parameters:
      peer - Peer to remove
      Returns:
      TRUE if the peer was removed
    • getServices

      public static List<Peer.Service> getServices()
      Return local peer services
      Returns:
      List of local peer services
    • findOrCreatePeer

      public static Peer findOrCreatePeer(String announcedAddress, boolean create)
      Find or create a peer The announced address will be used for the host address if a new peer is created
      Parameters:
      announcedAddress - Peer announced address
      create - TRUE to create the peer if it is not found
      Returns:
      Peer or null if the peer could not be created
    • getPeer

      public static Peer getPeer(String host)
    • getAnyPeer

      public static Peer getAnyPeer(Filter<Peer> filter)
      Get a random peer that satisfies the supplied filter
      Parameters:
      filter - Filter
      Returns:
      Selected peer or null
    • getAnyPeer

      public static Peer getAnyPeer(List<? extends Peer> peerList)
      Get a random peer from the supplied list
      Parameters:
      peerList - Peer list
      Returns:
      Selected peer or null
    • getAnyPeer

      public static Peer getAnyPeer(List<? extends Peer> peerList, Filter<Peer> filter)
      Get a random peer that satisfies the supplied filter
      Parameters:
      peerList - Peer list
      filter - Filter or null if no filter supplied
      Returns:
      Selected peer or null
    • getPeers

      public static List<Peer> getPeers(Filter<Peer> filter)
      Get a list of peers satisfying the supplied filter
      Parameters:
      filter - Filter
      Returns:
      List of peers
    • getPeers

      public static List<Peer> getPeers(Filter<Peer> filter, int limit)
      Get a list of peers satisfying the supplied filter
      Parameters:
      filter - Filter
      limit - Maximum number of peers to return
      Returns:
      List of peers
    • getAllPeers

      public static Collection<Peer> getAllPeers()
      Return all known peers
      Returns:
      List of known peers
    • getConnectedPeers

      public static List<Peer> getConnectedPeers()
      Return all connected peers
      Returns:
      List of connected peers
    • getConnectedPeersCount

      public static int getConnectedPeersCount()
    • isOldVersion

      public static boolean isOldVersion(String version, int[] minVersion)
      Check for an old NRS version
      Parameters:
      version - Peer version
      minVersion - Minimum acceptable version
      Returns:
      TRUE if this is an old version
    • getMyBlockchainState

      public static Peer.BlockchainState getMyBlockchainState()
      Get the current blockchain state
      Returns:
      The blockchain state
    • getAllBundlerRates

      public static List<BundlerRate> getAllBundlerRates(long minBalance)
      Get all bundler rates
      Parameters:
      minBalance - Minimum bundler account balance
      Returns:
      List of bundler rates
    • broadcastBundlerRates

      public static void broadcastBundlerRates()
      Broadcast our current bundler rates
    • sendBundlerRates

      public static void sendBundlerRates(Peer peer)
      Send our bundler rates to a new peer
      Parameters:
      peer - Peer
    • isBundlerBlacklisted

      public static boolean isBundlerBlacklisted(long accountId)
      Check if bundler is blacklisted
      Parameters:
      accountId - Bundler account
      Returns:
      TRUE if the bundler is blacklisted
    • blacklistBundler

      public static void blacklistBundler(long accountId)
      Blacklist a bundler
      Parameters:
      accountId - Bundler account
    • isLogLevelEnabled

      public static boolean isLogLevelEnabled(int logLevel)
      Check if the specified communication log level is enabled
      Parameters:
      logLevel - Communication logging level
      Returns:
      TRUE if the log level is enabled
    • setCommunicationLogging

      public static void setCommunicationLogging(int logging)
      Set communication logging
      Parameters:
      logging - Communication logging value