
Table of Contents
Service Lookup | 44 |
Service Reports | 47 |
Publishing Reports | 48 |
Monitoring Reports | 48 |
Lifetime of Reports | 50 |
Identity of Subscribers | 52 |
Existence of Publishers | 54 |
Service Requests | 57 |
Sending a Request | 57 |
Handling a Response | 59 |
Identifying a Response | 60 |
Detecting a Failure | 61 |
Lack of Response | 63 |
Servicing a Request | 64 |
Generating a Failure | 65 |
Delaying a Response | 66 |
Identity of the Sender | 68 |
Invalid Request Method | 69 |
Local Service Requests | 69 |
Message Exchange | 71 |
Exchange Initialisation | 72 |
Service Availability | 72 |
Connection Announcements | 74 |
Authorisation of Clients | 75 |
Distributed Exchange Server | 75 |
Multiple Exchange Groups | 76 |
Scalability of the Framework | 78 |
Message Encoding | 79 |
Supported Data Types | 80 |
Mapping of Scalar Types | 81 |
User Defined Types | 83 |
Adding New Mappings | 83 |
Handling Structured Types | .............. 85 |
Servlet Framework | 87 |
Framework Overview | 87 |
The HTTP Daemon | 88 |
The File Server | 89 |
Client Authorisation | 90 |
User Authorisation | 91 |
HTTP Server Objects | 91 |
The Error Servlet | 92 |
The Redirect Servlet | 93 |
The Echo Servlet | 93 |
The File Servlet | 93 |
Logging of Requests | 94 |
Servlet Objects | 95 |
Processing a Request | 95 |
Persistent Connections | 96 |
Delaying a Response | 97 |
Destruction of Servlets | 98 |
Processing Content | 99 |
The Form Servlet | 100 |
Slow HTTP Clients | 101 |
Servlet Plugins | 105 |
Python Plugin | 105 |
Module Caching | 107 |
Writing a Plugin | 108 |
Plugin Aliasing | 108 |
Remote Access | 111 |
The RPC Gateway | 112 |
The Client Application | 113 |
Restricting Client Access | 113 |
Duplicate Services | 114 |
User Defined Types | 115 |
4