## Uses of Class
net.i2p.data.RouterAddress

- Packages that use RouterAddress
  Package | Description
  --- | ---
  net.i2p.data | These classes define the common data structures used by the various I2P protocols.
  net.i2p.router | The I2P router application handles the I2P network communication.
  net.i2p.router.transport | The transport system allows the usage of communication layers that are below I2P in the stack, on which I2P messages are sent.
  net.i2p.router.transport.ntcp | The NTCP transport allows passing I2P messages on top of TCP.
  net.i2p.router.transport.udp | The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.

- - ### Uses of RouterAddress in net.i2p.data

    Methods in net.i2p.data that return RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `RouterAddress` | RouterInfo.`getTargetAddress(String transportStyle)` Pull the first workable target address for the given transport

    Methods in net.i2p.data that return types with arguments of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `Set<RouterAddress>` | RouterInfo.`getAddresses()` Retrieve the set of RouterAddress structures at which this router can be contacted.
    `List<RouterAddress>` | RouterInfo.`getTargetAddresses(String transportStyle)` For future multiple addresses per-transport (IPV6), currently unused

    Method parameters in net.i2p.data with type arguments of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `void` | RouterInfo.`setAddresses(Set<RouterAddress> addresses)` Specify a set of RouterAddress structures at which this router can be contacted.

  - ### Uses of RouterAddress in net.i2p.router

    Methods in net.i2p.router that return types with arguments of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `Set<RouterAddress>` | CommSystemFacade.`createAddresses()` Create the set of RouterAddress structures based on the router's config

    Methods in net.i2p.router with parameters of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `void` | CommSystemFacade.`notifyReplaceAddress(RouterAddress UDPAddr)` Tell other transports our address changed

  - ### Uses of RouterAddress in net.i2p.router.transport

    Methods in net.i2p.router.transport that return RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `static RouterAddress` | CommSystemFacadeImpl.`createNTCPAddress(RouterContext ctx)` This only creates an address if the hostname AND port are set in router.config, which should be rare.
    `RouterAddress` | TransportImpl.`getCurrentAddress()` What addresses are we currently listening to?
    `RouterAddress` | Transport.`getCurrentAddress()`
    `RouterAddress` | Transport.`startListening()`
    `RouterAddress` | TransportImpl.`updateAddress()` Ask the transport to update its address based on current information and return it Transports should override.
    `RouterAddress` | Transport.`updateAddress()`

    Methods in net.i2p.router.transport that return types with arguments of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `Set<RouterAddress>` | CommSystemFacadeImpl.`createAddresses()`
    `Map<String,RouterAddress>` | TransportManager.`getAddresses()` This forces a rebuild

    Methods in net.i2p.router.transport with parameters of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `void` | CommSystemFacadeImpl.`notifyReplaceAddress(RouterAddress UDPAddr)` UDP changed addresses, tell NTCP and restart This should really be moved to ntcp/NTCPTransport.java, why is it here?
    `protected void` | TransportImpl.`replaceAddress(RouterAddress address)` Replace any existing addresses for the current transport with the given one.

  - ### Uses of RouterAddress in net.i2p.router.transport.ntcp

    Methods in net.i2p.router.transport.ntcp that return RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `RouterAddress` | NTCPTransport.`restartListening(RouterAddress addr)` Only called by CSFI.
    `RouterAddress` | NTCPTransport.`startListening()` Called by TransportManager.
    `RouterAddress` | NTCPAddress.`toRouterAddress()`

    Methods in net.i2p.router.transport.ntcp with parameters of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | NTCPAddress.`equals(RouterAddress addr)`
    `RouterAddress` | NTCPTransport.`restartListening(RouterAddress addr)` Only called by CSFI.

    Constructors in net.i2p.router.transport.ntcp with parameters of type RouterAddress
    Constructor and Description
    `NTCPAddress(RouterAddress addr)`

  - ### Uses of RouterAddress in net.i2p.router.transport.udp

    Methods in net.i2p.router.transport.udp that return RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `RouterAddress` | UDPTransport.`startListening()`
    `RouterAddress` | UDPTransport.`updateAddress()` Rebuild to get updated cost and introducers.

    Methods in net.i2p.router.transport.udp with parameters of type RouterAddress
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | UDPTransport.`replaceAddress(RouterAddress address)` Replace then tell NTCP that we changed.
    `protected void` | UDPTransport.`replaceAddress(RouterAddress address, RouterAddress oldAddress)`

    Constructors in net.i2p.router.transport.udp with parameters of type RouterAddress
    Constructor and Description
    `UDPAddress(RouterAddress addr)`