Package

molecule

net

Permalink

package net

This package permits to create clients and servers for UDP and TCP protocols using streaming I/O channels.

Linear Supertypes
ProcessFactories, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. net
  2. ProcessFactories
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. abstract class Channel extends AnyRef

    Permalink

    Minimal interface for selectable channel

  2. abstract class IOSelector extends AnyRef

    Permalink
  3. trait InputChannel[T] extends Channel

    Permalink

    Base trait for Socket input channels.

  4. abstract class NetSystem extends AnyRef

    Permalink

    This class encapsulates a selector thread that dispatches tasks on sockets in a non-blocking manner.

    This class encapsulates a selector thread that dispatches tasks on sockets in a non-blocking manner. The number of connection that can be handled by a selector is limited to FD_SETSIZE, which is OS specific. See http://www.kegel.com/c10k.html#nb.select.

    See also how to change registry settings on windows here: http://www.gridgainsystems.com/wiki/display/GG15UG/Troubleshooting#Troubleshooting-java.net.BindExceptionOnWindows

    If you want to handle many connections, either increase the value or create several NetSystems (last solution scales much better in terms of performance).

  5. type NetworkHandler[R] = (IChan[ByteBuffer], OChan[ByteBuffer]) ⇒ Process[R]

    Permalink

    Standard network handler process type.

  6. trait NioSignal extends Signal with ErrorSignal

    Permalink
  7. trait OutputChannel[T] extends Channel

    Permalink

    Base trait for Socket output channels.

  8. type ProcessFactory0x0[+R] = () ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  9. type ProcessFactory0x1[+E, +R] = (OChan[E]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  10. type ProcessFactory0x2[+E, +F, +R] = (OChan[E], OChan[F]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  11. type ProcessFactory0x3[+E, +F, +G, +R] = (OChan[E], OChan[F], OChan[G]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  12. type ProcessFactory1x0[-A, +R] = (IChan[A]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  13. type ProcessFactory1x1[-A, +E, +R] = (IChan[A], OChan[E]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  14. type ProcessFactory1x2[-A, +E, +F, +R] = (IChan[A], OChan[E], OChan[F]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  15. type ProcessFactory1x3[-A, +E, +F, +G, +R] = (IChan[A], OChan[E], OChan[F], OChan[G]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  16. type ProcessFactory2x0[-A, -B, +R] = (IChan[A], IChan[B]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  17. type ProcessFactory2x1[-A, -B, +E, +R] = (IChan[A], IChan[B], OChan[E]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  18. type ProcessFactory2x2[-A, -B, +E, +F, +R] = (IChan[A], IChan[B], OChan[E], OChan[F]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  19. type ProcessFactory2x3[-A, -B, +E, +F, +G, +R] = (IChan[A], IChan[B], OChan[E], OChan[F], OChan[G]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  20. type ProcessFactory3x0[-A, -B, -C, +R] = (IChan[A], IChan[B], IChan[C]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  21. type ProcessFactory3x1[-A, -B, -C, +E, +R] = (IChan[A], IChan[B], IChan[C], OChan[E]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  22. type ProcessFactory3x2[-A, -B, -C, +E, +F, +R] = (IChan[A], IChan[B], IChan[C], OChan[E], OChan[F]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  23. type ProcessFactory3x3[-A, -B, -C, +E, +F, +G, +R] = (IChan[A], IChan[B], IChan[C], OChan[E], OChan[F], OChan[G]) ⇒ Process[R]

    Permalink
    Definition Classes
    ProcessFactories
  24. abstract class Socket[T] extends Channel

    Permalink

    Base class for Molecule sockets.

    Base class for Molecule sockets.

    Molecule Sockets consist in an input stream and an output stream of byte buffers. The socket is automatically closed when both streams are poisoned.

  25. class SocketConfig extends AnyRef

    Permalink

    Socket configuration class.

  26. abstract class SocketHandle extends AnyRef

    Permalink

    Class providing general information about a Molecule socket.

  27. trait SocketOption extends AnyRef

    Permalink

    Socket options.

    Socket options.

    See companion object for available options.

  28. case class SocketReadSignal(exception: IOException) extends Signal with NioSignal with Product with Serializable

    Permalink
  29. case class SocketWriteSignal(exception: IOException) extends Signal with NioSignal with Product with Serializable

    Permalink
  30. class TcpClientConfig extends SocketConfig

    Permalink

    Client channel configuration class.

  31. class TcpServerConfig extends AnyRef

    Permalink

    Server channel configuration class.

    Server channel configuration class.

    If the address is null, then the system will pick up an ephemeral port and a valid local address to bind the socket.

    The backlog argument must be a positive value greater than 0. If the value passed if equal or less than 0, then the default value will be assumed.

Value Members

  1. object Channel

    Permalink
  2. object DatagramSocket

    Permalink

    Factory for DatagramSockets

  3. object IOSelector

    Permalink
  4. object NetSystem

    Permalink

    Factory for NetSystems

  5. object Socket

    Permalink

    Companion object

    Companion object

    Provide utility methods to assemble Molecule Sockets.

  6. object SocketConfig

    Permalink
  7. object SocketHandle

    Permalink

    Factory methods for creating Socket handles.

  8. object SocketOption

    Permalink
  9. object StreamSocket

    Permalink

    Factory methods for creating TCP sockets.

  10. object TcpAcceptChannel

    Permalink

    Factory methods for TCP server channels

  11. object TcpClientConfig

    Permalink
  12. object TcpConnectChannel

    Permalink

    Factory methods for client sockets

  13. object TcpServerConfig

    Permalink
  14. object UDP

    Permalink

    Misc UDP related factory methods

  15. object Utils

    Permalink

    Some utilities.

Inherited from ProcessFactories

Inherited from AnyRef

Inherited from Any

Ungrouped