[hide private]
[frames] | no frames]

[ Module Hierarchy | Class Hierarchy ]

# Class Hierarchy

- SocketServer.BaseRequestHandler: Base class for request handler classes.
  - SocketServer.StreamRequestHandler: Define self.rfile and self.wfile for stream sockets.
    - ivy.ivy.IvyHandler: An IvyHandler is associated to one IvyClient connected to our server.
- SocketServer.BaseServer: Base class for server classes.
  - SocketServer.TCPServer: Base class for various socket-based server classes.
    - SocketServer.ThreadingTCPServer
      - ivy.ivy.IvyServer: An Ivy server is responsible for receiving and handling the messages that other clients send on an Ivy bus to a given agent.
- ivy.ivy.IvyClient: Represents a client connected to the bus. Every callback methods registered by an agent receive an object of this type as their first parameter, so that they know which agent on the bus is the cause of the event which triggered the callback.
- SocketServer.ThreadingMixIn: Mix-in class to handle each request in a new thread.
  - SocketServer.ThreadingTCPServer
    - ivy.ivy.IvyServer: An Ivy server is responsible for receiving and handling the messages that other clients send on an Ivy bus to a given agent.
- object: The most base type
  - exceptions.BaseException: Common base class for all exceptions
    - exceptions.Exception: Common base class for all non-exit exceptions.
      - ivy.ivy.IvyMalformedMessage
      - ivy.ivy.IvyProtocolError
      - exceptions.StandardError: Base class for all standard Python exceptions that do not represent interpreter exiting.
        - exceptions.RuntimeError: Unspecified run-time error.
          - ivy.ivy.IvyIllegalStateError
  - threading._Verbose
    - threading.Thread: A class that represents a thread of control.
      - ivy.ivy.IvyTimer: An IvyTimer object is responsible for calling a function regularly. It is bound to an IvyServer and stops when its server stops.