org.klomp.snark

## Class ExtensionHandler

- java.lang.Object
- - org.klomp.snark.ExtensionHandler

    abstract class ExtensionHandler
    extends Object

REF: BEP 10 Extension Protocol

Since:
  0.8.2
Author:
  zzz

### Field Summary

Fields
`static int` `ID_HANDSHAKE`
`static int` `ID_METADATA`
`static int` `ID_PEX`
`static String` `TYPE_METADATA`
`static String` `TYPE_PEX` not ut_pex since the compact format is different

### Constructor Summary

Constructors
Constructor and Description
`ExtensionHandler()`

### Method Summary

Methods
`static byte[]` `getHandshake(int metasize)`
`static void` `handleMessage(Peer peer, PeerListener listener, int id, byte[] bs)`
`static void` `sendPEX(Peer peer, List<Peer> pList)` added.f and dropped unsupported

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### ID_HANDSHAKE

    public static final int ID_HANDSHAKE

See Also:
  Constant Field Values

#### ID_METADATA

    public static final int ID_METADATA

See Also:
  Constant Field Values

#### TYPE_METADATA

    public static final String TYPE_METADATA

See Also:
  Constant Field Values

#### ID_PEX

    public static final int ID_PEX

See Also:
  Constant Field Values

#### TYPE_PEX

    public static final String TYPE_PEX

not ut_pex since the compact format is different

See Also:
  Constant Field Values

### Constructor Detail

#### ExtensionHandler

    ExtensionHandler()

### Method Detail

#### getHandshake

    public static byte[] getHandshake(int metasize)

Parameters:
  `metasize` - -1 if unknown
Returns:
  bencoded outgoing handshake message

#### handleMessage

    public static void handleMessage(Peer peer,
                     PeerListener listener,
                     int id,
                     byte[] bs)

#### sendPEX

    public static void sendPEX(Peer peer,
               List<Peer> pList)

added.f and dropped unsupported

Parameters:
  `pList` - non-null
Since:
  0.8.4