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

⟦67510d9a3⟧ Ada Source

    Length: 8192 (0x2000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Gestion_Orb, seg_0555c8

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



package body Gestion_Orb is
    procedure Traite_Objet (Objet_Traite : in out Transmission_Utils.Objet;
                            Socket_Recep : Transport_Defs.Socket_Id;
                            Host_Recep : Transport_Defs.Host_Id;
                            Socket_Emis : in out Transport_Defs.Socket_Id;
                            Host_Emis : in out Transport_Defs.Host_Id) is
        All_Seen : Boolean;
        Type_Of_Object : Transmission_Utils.Type_Message;
    begin
        -- Type_Of_Object := message.Consulter_Typ (Objet_Traite);
        case Type_Of_Object is
            when Transmission_Utils.Registration =>
                begin
                    Objet_Traite.Expediteur := Registration_Of_Server
                                                  (Socket_Recep, Host_Recep);
                    Objet_Traite.Typ := Transmission_Utils.Answer_Registration;
                    Socket_Emis := Socket_Recep;
                    Host_Emis := Host_Recep;              end;
            when Transmission_Utils.Publication =>
                begin
                    -- Add_Service (V_String.Image
                    --                 (Message.Consulter_Donnee (Objet_Traite)),
                    --              Message.Consulter_Expediteur (Objet_Traite));
                    Objet_Traite.Typ := Transmission_Utils.Service_Added;
                    -- Give_Host_Socket_Of_Indice
                    --    (Message.Consulter_Expediteur (Objet_Traite),
                    --     Host_Emis, Socket_Emis);

                end;
            when Transmission_Utils.Request =>
                begin
                    [statement]
                    -- Get_Host_Soket_Of_Service
                    --    (V_String.Image (Message.Consulter_Donne (Objet_Traite)),
                    --     0, Host_Emis, Socket_Emis, All_Seen);
                    -- Objet_Traite.Typ := Message_For_Server;
                    -- Give_Host_Socket_Of_Indice
                    --    (Message.Consulter_Destinataire (Objet_Traite),
                    --     Host_Emis, Socket_Emis);
                end;
            when Transmission_Utils.Service_Result =>
                begin
                    Objet_Traite.Typ := Transmission_Utils.Your_Answer;
                    -- Give_Host_Socket_Of_Indice
                    --    (Message.Consulter_Expediteur (Objet_Traite),
                    --     Host_Emis, Socket_Emis);

                end;
            when others =>
                begin
                    [statement]
                end;
        end case;
    end Traite_Objet;

    function Registration_Of_Server
                (Nsocket : Transport_Defs.Socket_Id;
                 Hname : Transport_Defs.Host_Id) return Integer is
    begin
        return Gestion_Table.Add_Item_Tab_A (Nsocket, Hname);
    end Registration_Of_Server;

    procedure Add_Service (Competence : String; Ident_I : Integer) is
    begin
        Gestion_Table.Add_Service_Tab_B (Competence, Ident_I);
    end Add_Service;

    procedure Get_Host_Socket_Of_Service
                 (Competence : String;
                  Ordre : in out Integer;
                  Hname : in out Transport_Defs.Host_Id;
                  Socket : in out Transport_Defs.Socket_Id;
                  All_Seen : in out Boolean) is
        Enabled_Ordre : Boolean;
        Indice_Tab_A : Integer;
    begin
        loop
            -- Gestion_Table.Return_Contenu_Liste_Position
            --    (Gestion_Table.Return_Liste_Tab_B (Competence),
            --     Ordre, Indice_Tab_A, Enabled_Ordre, Some_Left);
            exit when (Enabled_Ordre = True or All_Seen = True);
            Ordre := Ordre + 1;
        end loop;
        Gestion_Table.Give_Host_Socket_Tab_A (Indice_Tab_A, Hname, Socket);
    end Get_Host_Socket_Of_Service;

    procedure Give_Host_Socket_Of_Indice
                 (Indice : Integer;
                  Hname : in out Transport_Defs.Host_Id;
                  Socket : in out Transport_Defs.Socket_Id) is
    begin
        Gestion_Table.Give_Host_Socket_Tab_A (Indice, Hname, Socket);  
    end Give_Host_Socket_Of_Indice;

    procedure Init_Tableaux is
    begin
        Gestion_Table.Init_Tab_B;
    end Init_Tableaux;

end Gestion_Orb;

E3 Meta Data

    nblk1=7
    nid=6
    hdr6=c
        [0x00] rec0=14 rec1=00 rec2=01 rec3=002
        [0x01] rec0=00 rec1=00 rec2=07 rec3=002
        [0x02] rec0=13 rec1=00 rec2=05 rec3=04a
        [0x03] rec0=1a rec1=00 rec2=04 rec3=06c
        [0x04] rec0=19 rec1=00 rec2=03 rec3=028
        [0x05] rec0=0d rec1=00 rec2=02 rec3=000
        [0x06] rec0=0a rec1=00 rec2=06 rec3=000
    tail 0x2175f875887bd42a693fa 0x42a00088462060003
Free Block Chain:
  0x6: 0000  00 00 00 f6 00 47 20 20 20 20 20 20 20 20 47 65  ┆     G        Ge┆