Package: System.RPC

Dependencies

with Ada.Streams;

Description

Note: this is a dummy implementation which does not support distribution. The GLADE distribution package includes a replacement for this file which has a different private

Header

package System.RPC is
 

Exceptions

Communication_Error

Type Summary

Params_Stream_Type derived from Root_Stream_Type
Overridden Operations:  Read, Write
New Operations:  Do_APC, Do_RPC
Partition_ID
RPC_Receiver

Other Items:

type Partition_ID is range 0 .. 63;
This type must not be modified without checking the code in a-except.adb, since it expects a Partition_ID whose string representation fits on two characters.

type Params_Stream_Type
  (Initial_Size : Ada.Streams.Stream_Element_Count) is new
    Ada.Streams.Root_Stream_Type with private;

procedure Read
  (Stream : in out Params_Stream_Type;
   Item   : out Ada.Streams.Stream_Element_Array;
   Last   : out Ada.Streams.Stream_Element_Offset);

procedure Write
  (Stream : in out Params_Stream_Type;
   Item   : in Ada.Streams.Stream_Element_Array);
Synchronous call

procedure Do_RPC
  (Partition  : in Partition_ID;
   Params     : access Params_Stream_Type;
   Result     : access Params_Stream_Type);
Asynchronous call

procedure Do_APC
  (Partition  : in Partition_ID;
   Params     : access Params_Stream_Type);
The handler for incoming RPCs.

type RPC_Receiver is
  access procedure
    (Params     : access Params_Stream_Type;
     Result     : access Params_Stream_Type);

procedure Establish_RPC_Receiver (
   Partition : in Partition_ID;
   Receiver  : in RPC_Receiver);

private

   --  Implementation-defined ...
end System.RPC;