From RAD Studio API Documentation
Jump to: navigation, search



TRIO = class(TComponent, IInterface, IRIOAccess)


class PASCALIMPLEMENTATION TRIO : public System::Classes::TComponent


Type Visibility Source Unit Parent
class public
Soap.Rio Soap.Rio


TRIO is the base class for components that generate calls to remote interfaced objects.

Use TRIO as a base class for components that generate statically-linked calls to invokable interfaces. When an application casts a TRIO descendant to a registered invokable interface, it dynamically generates an in-memory method table, providing an implementation to that invokable interface. TRIO uses two helper objects when generating this implementation. These helper objects implement the IOPConvert and IWebNode interfaces. IOPConvert handles the marshaling and unmarshaling of calls to methods on the generated method table, and IWebNode receives the marshaled message call, executes it (typically by sending it to a remote server application), and returns the results of executing the call. These interfaces do not assume any particular encoding or transport protocol. Each TRIO descendant uses its own protocol-specific helper objects to implement these interfaces.

Before TRIO can generate a method table for an invokable interface, the interface must be registered with the invocation registry. To register an invokable interface, use the global InvRegistry function to obtain access to the registry, and call its RegisterInterface method.

Do not create instances of TRIO. To add a component that generates calls to a registered invokable interface, use a TRIO descendant such as THTTPRIO.

See Also