net.i2p.i2ptunnel.streamr

## Class StreamrProducer

- java.lang.Object
- - net.i2p.i2ptunnel.I2PTunnelTask
  - - net.i2p.i2ptunnel.udpTunnel.I2PTunnelUDPServerBase
    - - net.i2p.i2ptunnel.streamr.StreamrProducer

All Implemented Interfaces:
  Sink, Source, EventDispatcher

    public class StreamrProducer
    extends I2PTunnelUDPServerBase

Compared to a standard I2PTunnel, this acts like a server on the I2P side (persistent privkey file) but a client on the UDP side (receives on a configured port)

Author:
  welterde, zzz modded for I2PTunnel

### Field Summary

### Fields inherited from class net.i2p.i2ptunnel.udpTunnel.I2PTunnelUDPServerBase

`l, readTimeout, slock`

### Fields inherited from class net.i2p.i2ptunnel.I2PTunnelTask

`open`

### Constructor Summary

Constructors
Constructor and Description
`StreamrProducer(int port, File privkey, String privkeyname, Logging l, EventDispatcher notifyThis, I2PTunnel tunnel)`

### Method Summary

Methods
`boolean` `close(boolean forced)` I2PTunnelTask Methods Classes should override to close UDP side as well
`void` `startRunning()` Classes should override to start UDP side as well.

### Methods inherited from class net.i2p.i2ptunnel.udpTunnel.I2PTunnelUDPServerBase

`getReadTimeout, send, setReadTimeout, setSink, start`

### Methods inherited from class net.i2p.i2ptunnel.I2PTunnelTask

`attachEventDispatcher, detachEventDispatcher, disconnected, errorOccurred, getEventDispatcher, getEvents, getEventValue, getId, getTunnel, ignoreEvents, isOpen, notifyEvent, reportAbuse, routerDisconnected, setId, setName, setTunnel, toString, unIgnoreEvents, waitEventValue`

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

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

### Constructor Detail

#### StreamrProducer

    public StreamrProducer(int port,
                   File privkey,
                   String privkeyname,
                   Logging l,
                   EventDispatcher notifyThis,
                   I2PTunnel tunnel)

### Method Detail

#### startRunning

    public final void startRunning()

Description copied from class: `I2PTunnelUDPServerBase`
Classes should override to start UDP side as well. Not specified in I2PTunnelTask but used in both I2PTunnelClientBase and I2PTunnelServer so let's implement it here too.

Overrides:
  `startRunning` in class `I2PTunnelUDPServerBase`

#### close

    public boolean close(boolean forced)

Description copied from class: `I2PTunnelUDPServerBase`
I2PTunnelTask Methods Classes should override to close UDP side as well

Overrides:
  `close` in class `I2PTunnelUDPServerBase`