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

⟦5a652e2ba⟧ Ada Source

    Length: 5120 (0x1400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, function Subscribe_Service, seg_05441f, separate Service_Toolbox

Derivation

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

E3 Source Code



separate (Service_Toolbox)

function Subscribe_Service
            (The_Subscribe_Data : in Orb_Defs.Message;
             Agent_Reference : in Service_Manager_Defs.Number_Of_Agent)
            return Boolean is  
    Number_Of_Class, Number_Of_Function : Integer;
    Class_Iterator, Function_Iterator : Integer;  
    Current_Char : Positive := 1;  
    Current_Class : Orb_Defs.Class;
    Current_Function : Orb_Defs.Funct;
    Error : Boolean := True;
begin  
    Text_Io.Put_Line ("Service_Toolbox.Subscribe_Service");
    Number_Of_Class := Integer'Value (The_Subscribe_Data (1 .. 4));
    Current_Char := 5;
    Text_Io.Put_Line (The_Subscribe_Data (1 .. 4) & " - " &
                      Integer'Image (Number_Of_Class));
    for Class_Iterator in 1 .. Number_Of_Class loop  
        Current_Class := The_Subscribe_Data (Current_Char .. Current_Char + 3);
        Text_Io.Put_Line (The_Subscribe_Data
                             (Current_Char .. Current_Char + 3));
        Current_Char := Current_Char + 4;
        Number_Of_Function :=
           Integer'Value (The_Subscribe_Data
                             (Current_Char .. Current_Char + 3));
        Text_Io.Put_Line (The_Subscribe_Data
                             (Current_Char .. Current_Char + 3) &
                          " - " & Integer'Image (Number_Of_Function));
        Current_Char := Current_Char + 4;

        for Function_Iterator in 1 .. Number_Of_Function loop
            Text_Io.Put_Line ("On va appeler Service_toolbox.Add_Service");
            Current_Function := The_Subscribe_Data
                                   (Current_Char .. Current_Char + 3);
            Error := Error and Add_Service (Service_Class => Current_Class,
                                            Service_Fct => Current_Function,
                                            Agent_Reference => Agent_Reference);
            Text_Io.Put_Line ("Erreur :" & Boolean'Image (Error));
            Text_Io.Put_Line (The_Subscribe_Data
                                 (Current_Char .. Current_Char + 3));
            Current_Char := Current_Char + 4;
        end loop;

    end loop;

    return Error;
end Subscribe_Service;


E3 Meta Data

    nblk1=4
    nid=3
    hdr6=6
        [0x00] rec0=17 rec1=00 rec2=01 rec3=07a
        [0x01] rec0=12 rec1=00 rec2=04 rec3=00e
        [0x02] rec0=0a rec1=00 rec2=02 rec3=000
        [0x03] rec0=04 rec1=c6 rec2=9a rec3=442
    tail 0x2154d021c87b66980ff92 0x42a00088462060003
Free Block Chain:
  0x3: 0000  00 00 00 cc 80 3c 20 20 20 20 20 20 20 20 20 20  ┆     <          ┆