|
|
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, procedure Import_Postprocess, seg_03be5b, separate Library_Extensions
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
separate (Library_Extensions)
procedure Import_Postprocess
(Views_To_Import : Directory.Naming.Iterator;
Into_View : String;
Status : in out Simple_Status.Condition) is
Views_2_Import : Naming.Iterator := Views_To_Import;
Machine_Result : constant Library_Interface.String_Result :=
Library_Interface.Remote_Machine (View => Into_View);
Directory_Result : constant Library_Interface.String_Result :=
Library_Interface.Remote_Directory (View => Into_View);
Remote_Machine : constant String :=
Machine_Result.Result (1 .. Machine_Result.Size);
Remote_Directory : constant String :=
Directory_Result.Result (1 .. Directory_Result.Size);
Old_Context : Directory.Naming.Context;
procedure Display_Information is
begin
if Remote_Machine = "" then
Log.Put_Line (Message => "A null remote machine name was provided.",
Kind => Profile.Warning_Msg);
end if;
if Remote_Directory = "" then
Log.Put_Line (Message =>
"A null remote directory name was provided.",
Kind => Profile.Warning_Msg);
end if;
end Display_Information;
begin
Log.Put_Line
(Message => "Import_Postprocess ( Views_To_Import =>",
Kind => Profile.Sharp_Msg);
Naming.Reset (Views_2_Import);
while not Naming.Done (Views_2_Import) loop
Log.Put_Line
(Message => Naming.Source_Name (Views_2_Import),
Kind => Profile.Sharp_Msg);
Naming.Next (Views_2_Import);
end loop;
Log.Put_Line
(Message => "into_view => " & Into_View & ")",
Kind => Profile.Sharp_Msg);
Simple_Status.Initialize (Status);
-- Sanity checks
Naming.Reset (Views_2_Import);
if Naming.Done (Views_2_Import) then
return; -- there are no views to import!
end if;
if Remote_Machine = "" or else Remote_Directory = "" then
Display_Information;
Set_Status
(Status => Status,
Message => "Insufficient remote program library information.",
Severity => Simple_Status.Problem);
return;
end if;
Set_Context
(Old_Context => Old_Context,
View => Into_View,
Status => Status);
if not Simple_Status.Error (Status) then
declare
Remote_Connection : Rci.Context;
begin
Acquire_Connection
(Remote_Connection => Remote_Connection,
Remote_Machine => Remote_Machine,
Status => Status);
if not Simple_Status.Error (Status) then
declare
View_Object : Directory.Object;
Naming_Status : Directory.Error_Status :=
Directory.Successful;
begin
Naming.Reset (Views_2_Import);
while not Naming.Done (Views_2_Import) loop
Naming.Get_Object (Iter => Views_2_Import,
The_Object => View_Object,
Status => Naming_Status);
if Directory."=" (Naming_Status,
Directory.Successful) then
declare
Immediate_Import : constant String :=
Naming.Get_Full_Name (Entity => View_Object);
begin
Acquire_Visibility
(Imported_View => Immediate_Import,
Into_View => Into_View,
Remote_Connection => Remote_Connection,
Status => Status);
end;
else
Log.Put_Line (Message => Simple_Status.Message
(Status => Status),
Kind => Profile.Negative_Msg);
end if;
Naming.Next (Views_2_Import);
end loop;
exception
when others =>
Rci.Release
(Remote_Connection => Remote_Connection,
Status => Status,
Trace_Command => Trace_Rci_Commands);
raise;
end;
Rci.Release
(Remote_Connection => Remote_Connection,
Status => Status,
Trace_Command => Trace_Rci_Commands);
end if;
exception
when others =>
Reset_Context (Old_Context);
raise;
end;
Reset_Context (Old_Context);
end if;
exception
when others =>
Unhandled_Exception (Status, "Import_Postprocess");
end Import_Postprocess;
nblk1=6
nid=0
hdr6=c
[0x00] rec0=1b rec1=00 rec2=01 rec3=098
[0x01] rec0=23 rec1=00 rec2=02 rec3=014
[0x02] rec0=1f rec1=00 rec2=03 rec3=06a
[0x03] rec0=13 rec1=00 rec2=04 rec3=05c
[0x04] rec0=15 rec1=00 rec2=05 rec3=03a
[0x05] rec0=14 rec1=00 rec2=06 rec3=000
tail 0x215348216856575170517 0x42a00088462062803