|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7168 (0x1c00)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Control_Manager, seg_0574a5
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Frame_Defs;
with Service_Manager;
with Orb_Defs;
with Mail_Sender;
with Text_Io;
package body Control_Manager is
package Frame_Sender is new Mail_Sender
(Frame_Defs.Frame, Frame_Defs.Get_Frame);
task Control_Manager_Task is
entry Dispose;
end Control_Manager_Task;
task body Control_Manager_Task is
The_Connection_Id : Orb_Defs.Connection_Id;
The_Host_Id : Orb_Defs.Host_Id;
The_Socket_Id : Orb_Defs.Socket_Id;
The_Error, The_Success : Boolean := True;
The_Time_Out : Positive := 30;
The_Test_Frame : Frame_Defs.Frame;
Done : Boolean := False;
begin
Text_Io.Put_Line ("Control Manager is alive !!");
loop
select
accept Dispose do
Done := True;
end Dispose;
else
The_Error := True;
while The_Error = True loop
delay (60.0);
Service_Manager.Ask_Agent_To_Test
(The_Connection_Id, The_Host_Id,
The_Socket_Id, The_Error);
if The_Error = True then
Text_Io.Put_Line ("Control Manager : no agent to test");
else
Text_Io.Put_Line
("Control Manager : there is a agent to test");
end if;
end loop;
Frame_Defs.Init_Frame
("orb ", The_Socket_Id, The_Host_Id,
Orb_Defs.Default_Orb_Socket,
Orb_Defs.Default_Orb_Host, 0, 0, "chck", "chck",
"Agent, are you alive ??", The_Test_Frame);
Text_Io.Put_Line
("Control Manager is going to send the frame :");
Text_Io.Put_Line (Frame_Defs.Image (The_Test_Frame));
Frame_Sender.Send_Mail (The_Connection_Id, The_Host_Id,
The_Socket_Id, The_Time_Out,
The_Success, The_Test_Frame);
if The_Success = True then
Service_Manager.Set_Agent_To_Ok
(The_Host_Id, The_Socket_Id);
Text_Io.Put_Line ("Control Manager : the agent is Ok");
else
Text_Io.Put_Line ("going to set agent to failure");
Service_Manager.Set_Agent_To_Failure
(The_Host_Id, The_Socket_Id);
Text_Io.Put_Line
("Control Manager : the agent is set to failure");
end if;
end select;
exit when Done = True;
Text_Io.Put_Line ("Control Manager is alive !!");
delay (10.0);
end loop;
end Control_Manager_Task;
procedure Dispose is
begin
Control_Manager_Task.Dispose;
end Dispose;
end Control_Manager;
nblk1=6
nid=4
hdr6=8
[0x00] rec0=2a rec1=00 rec2=01 rec3=00e
[0x01] rec0=15 rec1=00 rec2=06 rec3=054
[0x02] rec0=1a rec1=00 rec2=02 rec3=014
[0x03] rec0=0b rec1=00 rec2=05 rec3=000
[0x04] rec0=07 rec1=00 rec2=02 rec3=000
[0x05] rec0=01 rec1=00 rec2=03 rec3=000
tail 0x2176459cc87c78351275d 0x42a00088462060003
Free Block Chain:
0x4: 0000 00 03 00 59 80 23 20 20 20 20 20 20 43 6f 6e 74 ┆ Y # Cont┆
0x3: 0000 00 00 00 0a 80 04 67 65 72 3b 04 00 00 00 53 6f ┆ ger; So┆