Introducing RealityServer

RealityServer Web Services: Default Processing Modules

The following image shows the default execution flow of an HTTP request in the RealityServer Web Services layer.

Image showing the default execution flow for the RealityServer Web Services layer.

In this step the HTTP Processor module takes the incoming request, checks the type of request (static, documentation, or service) and then sends it to one of the following processors:

  • Serve Static Content: In this step the processor module serves static HTTP content from the RSWS content directory.
  • Serve Documentation: In this step the processor module returns a web page that documents all commands available or a WSDL describing them when the HTTP request specifies a particular URL. (RSWS is a self-documenting system.) This information is generated on demand from all registered service commands.
  • Protocol Processing: In this step commands are serialized and deserialized from the HTTP request. Protocol handlers for JSON-RPC and REST are shipped with RealityServer. A protocol handler for SOAP is planned for a later release. Optionally, you can create your own protocol handlers.
    1. The command request supplies the name and parameters of the command. The protocol handler takes the command request and passes it to each registered protocol module in turn.
    2. The module attempts to decode the command request and extract all commands and their parameters.
    3. After a module successfully performs this operation, the commands are sent to neuray Services which is responsible for further processing and execution.
    4. After execution is completed, the results are sent back to the successful module which encodes the results in an HTTP response.