DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦964ec764e⟧ Ada Source

    Length: 6144 (0x1800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Sub_Contrat, seg_054dbd

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



with Message;
with List_Generic;
with Bounded_String;
with String_Utilities;
with Identification;

package Sub_Contrat is

    subtype Tnom_Contrat is Bounded_String.Variable_String (246);

    type Tcontrat is
        record
            Nom_Contrat : Tnom_Contrat;
            -- nom ou type de contrat ex: date, math, ...
            Id : Identification.Tclient_Id;
            -- id de l'orb satisfaisant le type de contrat
        end record;

    package Contrat_List is new List_Generic (Element => Tcontrat);



    function Is_Publication (Mess : in Message.Tmessage) return Boolean;
    -- le message est un Publication ?

    function Is_Unpublication (Mess : in Message.Tmessage) return Boolean;
    -- le message est un unPublication ?

    procedure Fill_Contrat (Mess : in Message.Tmessage; Contrat : out Tcontrat);
    -- remplit un contrat a partir d'un message

    procedure Add_Contrat (List_Of_Contrats : in out Contrat_List.List;
                           Contrat : in Tcontrat);
    -- ajoute un contrat a la liste des contrats

    procedure Remove_Contrat (List_Of_Contrats : in out Contrat_List.List;
                              Nom : in Tnom_Contrat);
    -- retire un contrat de la liste

    function Contrat_Exists
                (List_Of_Contrats : Contrat_List.List; Nom : in Tnom_Contrat)
                return Boolean;
    -- un contrat de ce nom(type) existe deja ?

    function Contrat_Provider
                (List_Of_Contrats : Contrat_List.List; Nom : in Tnom_Contrat)
                return Identification.Tclient_Id;
    -- retourne l'id de l'orb satisfaisant un contrat de type nom

    type Tsubscription is
        record
            Who : Identification.Tclient_Id;
            To : Identification.Tclient_Id;
        end record;

    package Sub_List is new List_Generic (Element => Tsubscription);

    function Is_Subscription (Mess : in Message.Tmessage) return Boolean;
    -- le message est un subscription ?

    function Is_Unsubscription (Mess : in Message.Tmessage) return Boolean;
    -- le message est un unsubscription ?

    procedure Fill_Sub (Mess : in Message.Tmessage; Sub : out Tsubscription);
    -- remplit une sub a partir d'un message

    procedure Add_Sub (List_Of_Sub : in out Sub_List.List;
                       Sub : in Tsubscription);
    -- ajoute une sub a la liste des subs

    procedure Remove_Sub (List_Of_Sub : in out Sub_List.List;
                          Who : in Identification.Tclient_Id);
    -- retire une sub de la liste

    function Subscription_Exists
                (List_Of_Sub : Sub_List.List; To : in Identification.Tclient_Id)
                return Boolean;
    -- il existe un abonne aux messages partant de l'objet to

    function Subscripter (List_Of_Sub : Sub_List.List;
                          To : in Identification.Tclient_Id)
                         return Identification.Tclient_Id;
    -- et voila cet abonne


end Sub_Contrat;

E3 Meta Data

    nblk1=5
    nid=3
    hdr6=8
        [0x00] rec0=21 rec1=00 rec2=01 rec3=08e
        [0x01] rec0=1a rec1=00 rec2=04 rec3=084
        [0x02] rec0=18 rec1=00 rec2=05 rec3=054
        [0x03] rec0=05 rec1=00 rec2=02 rec3=000
        [0x04] rec0=c0 rec1=00 rec2=00 rec3=100
    tail 0x2175e1d7c87b9620aa059 0x42a00088462060003
Free Block Chain:
  0x3: 0000  00 00 00 07 80 01 3b 01 00 00 00 70 74 69 6f 6e  ┆      ;    ption┆