## net.i2p.router
Class CommSystemFacade

    java.lang.Object
      net.i2p.router.CommSystemFacade

All Implemented Interfaces:
  Service

Direct Known Subclasses:
  CommSystemFacadeImpl, DummyCommSystemFacade, VMCommSystem

public abstract class CommSystemFacade
extends java.lang.Object
implements Service

Manages the communication subsystem between peers, including connections, listeners, transports, connection keys, etc.

Field Summary
`static short` `STATUS_DIFFERENT` We are behind a symmetric NAT which will make our 'from' address look differently when we talk to multiple people
`static short` `STATUS_OK` We are able to receive unsolicited connections
`static short` `STATUS_REJECT_UNSOLICITED` We are able to talk to peers that we initiate communication with, but cannot receive unsolicited connections
`static short` `STATUS_UNKNOWN` Our reachability is unknown

Constructor Summary
`CommSystemFacade()`

Method Summary
`int` `countActivePeers()`
`java.util.Set` `createAddresses()` Create the set of RouterAddress structures based on the router's config
`java.util.List` `getMostRecentErrorMessages()`
`short` `getReachabilityStatus()` Determine under what conditions we are remotely reachable.
`abstract void` `processMessage(OutNetMessage msg)`
`void` `recheckReachability()`
`void` `renderStatusHTML(java.io.Writer out)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface net.i2p.router.Service
`restart, shutdown, startup`

Field Detail

### STATUS_OK

    public static final short STATUS_OK

  We are able to receive unsolicited connections

  See Also:
    Constant Field Values

### STATUS_DIFFERENT

    public static final short STATUS_DIFFERENT

  We are behind a symmetric NAT which will make our 'from' address look differently when we talk to multiple people

  See Also:
    Constant Field Values

### STATUS_REJECT_UNSOLICITED

    public static final short STATUS_REJECT_UNSOLICITED

  We are able to talk to peers that we initiate communication with, but cannot receive unsolicited connections

  See Also:
    Constant Field Values

### STATUS_UNKNOWN

    public static final short STATUS_UNKNOWN

  Our reachability is unknown

  See Also:
    Constant Field Values

Constructor Detail

### CommSystemFacade

    public CommSystemFacade()

Method Detail

### processMessage

    public abstract void processMessage(OutNetMessage msg)

### renderStatusHTML

    public void renderStatusHTML(java.io.Writer out)
                          throws java.io.IOException

  Specified by:
    `renderStatusHTML` in interface `Service`
  Throws:
    `java.io.IOException`

### createAddresses

    public java.util.Set createAddresses()

  Create the set of RouterAddress structures based on the router's config

### countActivePeers

    public int countActivePeers()

### getMostRecentErrorMessages

    public java.util.List getMostRecentErrorMessages()

### getReachabilityStatus

    public short getReachabilityStatus()

  Determine under what conditions we are remotely reachable.

### recheckReachability

    public void recheckReachability()