orangeqs.juice.messaging._rpc._server#

Module Contents#

Classes#

UnixStreamXMLRPCRequestHandler

Simple XML-RPC request handler class.

UnixStreamXMLRPCServer

Base class for various socket-based server classes.

API#

class orangeqs.juice.messaging._rpc._server.UnixStreamXMLRPCRequestHandler(request, client_address, server)#

Bases: xmlrpc.server.SimpleXMLRPCRequestHandler

Simple XML-RPC request handler class.

Handles all HTTP POST requests and attempts to decode them as XML-RPC requests.

disable_nagle_algorithm#

False

address_string() Any#

Return the client address.

class orangeqs.juice.messaging._rpc._server.UnixStreamXMLRPCServer(socket_path: str, log_requests: bool = True, allow_none: bool = True, encoding: str | None = None, bind_and_activate: bool = True, use_builtin_types: bool = True)#

Bases: socketserver.UnixStreamServer, xmlrpc.server.SimpleXMLRPCDispatcher

Base class for various socket-based server classes.

Defaults to synchronous IP stream (i.e., TCP).

Methods for the caller:

  • init(server_address, RequestHandlerClass, bind_and_activate=True)

  • serve_forever(poll_interval=0.5)

  • shutdown()

  • handle_request() # if you don’t use serve_forever()

  • fileno() -> int # for selector

Methods that may be overridden:

  • server_bind()

  • server_activate()

  • get_request() -> request, client_address

  • handle_timeout()

  • verify_request(request, client_address)

  • process_request(request, client_address)

  • shutdown_request(request)

  • close_request(request)

  • handle_error()

Methods for derived classes:

  • finish_request(request, client_address)

Class variables that may be overridden by derived classes or instances:

  • timeout

  • address_family

  • socket_type

  • request_queue_size (only for stream sockets)

  • allow_reuse_address

  • allow_reuse_port

Instance variables:

  • server_address

  • RequestHandlerClass

  • socket

server_close() None#

Clean up the unix socket file on server shutdown.