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

⟦bdeaa35f2⟧ Ada Source

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

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



with Behavior_Defs;
with Identifier;
with Message;
with Message_Transport;
with Method;
with Parameter;
with Server;
with Time_Utilities;


with Text_Io;
use Text_Io;
package body Date_Bis is


    procedure Publish (Self : Identifier.Object) is
        Status : Message_Transport.Status_Code;
    begin
        Behavior_Defs.Send_Message
           (Message => Message.Create
                          (Class => Message.Publication,
                           Addressee => Identifier.Hash
                                           (Id => Identifier.Broker),
                           Sender => Identifier.Hash (Id => Self),
                           Method => "date",
                           Parameter_Name => "date",
                           Parameter_Class => "string",
                           Parameter_Value => Parameter.Void),
            Status => Status);
    end Publish;


    procedure Process_Message (Message : Standard.Message.Object);


    package S is new Server (Publish, Process_Message);


    procedure Process_Message (Message : Standard.Message.Object) is
        Time : constant String := Time_Utilities.Image
                                     (Date => Time_Utilities.Get_Time,
                                      Date_Style => Time_Utilities.Expanded,
                                      Time_Style => Time_Utilities.Expanded,
                                      Contents => Time_Utilities.Both);

        Status : Message_Transport.Status_Code;

        use Message_Transport;
    begin
        if Method.Get_Name (Standard.Message.Get_Method (Message)) = "DATE" then
            New_Line;
            Put_Line ("+++ satisfying request for date");
            Behavior_Defs.Send_Message
               (Message => Standard.Message.Create
                              (Class => Standard.Message.Forward,
                               Addressee =>
                                  Standard.Message.Get_Sender (Message),
                               Sender => Identifier.Hash (S.Get_Identity),
                               Method => "date",
                               Parameter_Name => "date",
                               Parameter_Class => "string",
                               Parameter_Value => Time),
                Status => Status);
            if Status = Ok then
                Put_Line ("--- asking broker to forward");
            else
                Put_Line ("*** failed asking broker to forward");
            end if;
        end if;

    end Process_Message;


    procedure Start is
    begin
        Put_Line ("+++ Starting Date");
        S.Start;
    end Start;

end Date_Bis;

E3 Meta Data

    nblk1=7
    nid=6
    hdr6=6
        [0x00] rec0=22 rec1=00 rec2=01 rec3=070
        [0x01] rec0=18 rec1=00 rec2=07 rec3=032
        [0x02] rec0=18 rec1=00 rec2=04 rec3=000
        [0x03] rec0=1c rec1=00 rec2=03 rec3=000
        [0x04] rec0=80 rec1=00 rec2=00 rec3=100
        [0x05] rec0=42 rec1=02 rec2=35 rec3=5d9
        [0x06] rec0=84 rec1=e4 rec2=00 rec3=003
    tail 0x21524d55a8404794dc755 0x42a00088462060003
Free Block Chain:
  0x6: 0000  00 03 00 ee 80 0b 20 20 20 20 65 6e 64 20 69 66  ┆          end if┆
  0x3: 0000  00 02 03 fc 00 38 20 20 20 20 20 20 20 20 20 20  ┆     8          ┆
  0x2: 0000  00 05 03 f9 80 0f 73 61 67 65 2e 4f 62 6a 65 63  ┆      sage.Objec┆
  0x5: 0000  00 00 00 eb 80 08 20 65 6e 64 20 69 66 3b 08 00  ┆       end if;  ┆