Interface ClientIDGenerator

All Known Implementing Classes:
ClientIDPlugin

public interface ClientIDGenerator
  • Field Details

  • Method Details

    • generatePeerID

      byte[] generatePeerID(byte[] hash, boolean for_tracker) throws ClientIDException
      generate a peer id - must be exactly 20 bytes
      Parameters:
      torrent -
      for_tracker - generator to give to tracker or for peer-peer comms
      Returns:
      Throws:
      ClientIDException
    • generateHTTPProperties

      void generateHTTPProperties(byte[] hash, Properties properties) throws ClientIDException
      generate appropriate properties to be supplied to HTTP(S) URL connection If you want to access the torrents then you need to decode the URL to extract the hashes and then look them up (for scrape there could be multiple torrents) Enabled when the generator isn't specified as a filter
      Parameters:
      torrent -
      properties -
      Throws:
      ClientIDException
    • filterHTTP

      String[] filterHTTP(byte[] hash, String[] lines_in) throws ClientIDException
      For more complex situations a filter approach is used. The lines of the request are passed in for modification and return Enabled when the generator is specified as a filter
      Parameters:
      lines_in -
      Returns:
      Throws:
      ClientIDException
    • getProperty

      Object getProperty(byte[] hash, String property_name)