DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 3632 (0xe30) Types: TextFile Names: »V«
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦458657fb6⟧ └─⟦a5bbbb819⟧ └─⟦this⟧ └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦9b46a407a⟧ └─⟦eec0a994f⟧ └─⟦this⟧
with Rpc; with Transport; with Transport_Stream; package Rpc_Server is pragma Subsystem (Network, Private_Part => Closed); pragma Module_Name (4, 2519); procedure Begin_Response (Stream : Transport_Stream.Stream_Id; Id : Rpc.Transaction_Id); generic Program : Rpc.Program_Number; Supported : Rpc.Version_Range := (0, Rpc.Version_Number'Last); with procedure Process_Call (Stream : Transport_Stream.Stream_Id; Id : Rpc.Transaction_Id; Version : Rpc.Version_Number; Proc : Rpc.Procedure_Number) is <>; -- Process one procedure call: get the arguments from -- the STREAM, make the call, call BEGIN_RESPONSE -- (STREAM, ID), and put the results into the stream. -- If an exception is raised, call RETURN_EXCEPTION. -- If an unexpected exception is raised, simply let it -- propagate. The caller will catch it. The caller -- will also take care of flushing the stream transmit -- buffer on return. procedure Serve (Connection : Transport.Connection_Id); -- Serve an incoming RPC connection: Allocate a transport -- stream. Check the incoming package and version. If -- they don't match, transmit an exception. If they -- match, process calls until the connection is -- disconnected. On each call, catch any propagated -- exceptions and transmit them, and flush the transmit -- buffer. When the connection is disconnected, or a -- protocol error occurs, deallocate the transport stream -- and return. procedure Return_Exception (Stream : Transport_Stream.Stream_Id; Id : Rpc.Transaction_Id; Excep : Rpc.Exception_Number); -- Like Begin_Response (above) except that it returns an exception. -- The server must NOT return any data following the exception. generic Program : Rpc.Program_Number; Supported : Rpc.Version_Range := (0, Rpc.Version_Number'Last); with procedure Process_Call (Stream : Transport_Stream.Stream_Id; Id : Rpc.Transaction_Id; Version : Rpc.Version_Number; Proc : Rpc.Procedure_Number; Username : String; Password : String) is <>; -- Process one procedure call: assume the identity -- of the given Username, get the arguments from -- the STREAM, make the call, call BEGIN_RESPONSE -- (STREAM, ID), and put the results into the stream. -- If an exception is raised, call RETURN_EXCEPTION. -- If an unexpected exception is raised, simply let it -- propagate. The caller will catch it. The caller -- will also take care of flushing the stream transmit -- buffer on return. procedure Serve_With_Username (Connection : Transport.Connection_Id); -- Serve an incoming RPC connection: Allocate a transport -- stream. Check the incoming package and version. If -- they don't match, transmit an exception. If they -- match, process calls until the connection is -- disconnected. On each call, catch any propagated -- exceptions and transmit them, and flush the transmit -- buffer. When the connection is disconnected, or a -- protocol error occurs, deallocate the transport stream -- and return. end Rpc_Server;