|
|
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: 10240 (0x2800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Destroy_View_Preprocess, seg_03be55, 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 Destroy_View_Preprocess (Host_Path_Name : String;
Status : in out Simple_Status.Condition) is
Machine_Result : constant Library_Interface.String_Result :=
Library_Interface.Remote_Machine (View => Host_Path_Name);
Remote_Machine : constant String :=
Machine_Result.Result (1 .. Machine_Result.Size);
Directory_Result : constant Library_Interface.String_Result :=
Library_Interface.Remote_Directory (View => Host_Path_Name);
View_Directory : constant String :=
Su.Lower_Case (Directory_Result.Result (1 .. Directory_Result.Size));
Remote_Connection : Remote_Command_Interface.Context;
Delete_Lib_Command : constant String := "a.rmlib -f " & View_Directory;
Unfreeze_Command : constant String := "chmod 777 " & View_Directory;
Remove_Recursive_Command : constant String := "rm -r " & View_Directory;
Unfreeze_Recursive_Command : constant String :=
"chmod -R 777 " & View_Directory;
begin
Log.Put_Line
(Message => "Destroy_View_Preprocess ( host_path_name =>" &
Naming.Get_Simple_Name (Host_Path_Name) & ")",
Kind => Profile.Sharp_Msg);
Simple_Status.Initialize (Status);
-- Acquire a remote connection to the target
Acquire_Connection
(Remote_Connection => Remote_Connection,
Remote_Machine => Remote_Machine,
Status => Status);
if not Simple_Status.Error (Status) then
begin
-- Delete the Ada libraries contained in the view directory.
-- Then remove the view directory and everything
-- contained therein.
-- Open all protections under the View_Directory.
Log.Put_Line
(Message => "Executing remote command: " &
Unfreeze_Recursive_Command,
Kind => Profile.Note_Msg);
Rci.Execute_Command
(Command_Line => Unfreeze_Recursive_Command,
Remote_Connection => Remote_Connection,
Status => Status,
Error_Pattern => "",
Parse_Error_Output => False,
Parse_Standard_Output => False,
Show_Parsed_Output => True,
Trace_Command => Trace_Rci_Commands);
if Simple_Status.Error (Status) then
Log.Put_Line
(Message => Simple_Status.Message (Status),
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message => "Remote Execution Unsuccessful.");
end if;
-- Open the protections for the View_Directory itself.
Log.Put_Line
(Message => "Executing remote command: " & Unfreeze_Command,
Kind => Profile.Note_Msg);
Rci.Execute_Command
(Command_Line => Unfreeze_Command,
Remote_Connection => Remote_Connection,
Status => Status,
Error_Pattern => "",
Parse_Error_Output => False,
Parse_Standard_Output => False,
Show_Parsed_Output => True,
Trace_Command => Trace_Rci_Commands);
if Simple_Status.Error (Status) then
Log.Put_Line
(Message => Simple_Status.Message (Status),
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message => "Remote Execution Unsuccessful.");
end if;
Log.Put_Line
(Message => "Executing remote command: " & Delete_Lib_Command,
Kind => Profile.Position_Msg);
Rci.Execute_Command
(Command_Line => Delete_Lib_Command,
Remote_Connection => Remote_Connection,
Status => Status,
Error_Pattern => "",
Parse_Error_Output => False,
Parse_Standard_Output => False,
Show_Parsed_Output => True,
Trace_Command => Trace_Rci_Commands);
if Simple_Status.Error (Status) then
Log.Put_Line
(Message => Simple_Status.Message (Status),
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message =>
"Unable to remove the contents of the Ada library in " &
View_Directory);
else
Log.Put_Line
(Message => "Executing remote command: " &
Remove_Recursive_Command,
Kind => Profile.Position_Msg);
Rci.Execute_Command
(Command_Line => Remove_Recursive_Command,
Remote_Connection => Remote_Connection,
Status => Status,
Error_Pattern => "",
Parse_Error_Output => False,
Parse_Standard_Output => False,
Show_Parsed_Output => True,
Trace_Command => Trace_Rci_Commands);
if Simple_Status.Error (Status) then
Log.Put_Line
(Message => Simple_Status.Message (Status),
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message => "Unable to remove the contents of " &
View_Directory);
end if;
end if;
end;
Rci.Release
(Remote_Connection => Remote_Connection,
Status => Status,
Trace_Command => Trace_Rci_Commands);
else
Log.Put_Line
(Message => Simple_Status.Message (Status),
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message => "Unable to acquire connection to " & Remote_Machine);
end if;
exception
when others =>
Unhandled_Exception (Status, "Destroy_View_Preprocess");
begin
Rci.Release
(Remote_Connection => Remote_Connection,
Status => Status,
Trace_Command => Trace_Rci_Commands);
exception
when others =>
null;
end;
end Destroy_View_Preprocess;
nblk1=9
nid=0
hdr6=12
[0x00] rec0=16 rec1=00 rec2=01 rec3=038
[0x01] rec0=00 rec1=00 rec2=09 rec3=00c
[0x02] rec0=1d rec1=00 rec2=02 rec3=022
[0x03] rec0=17 rec1=00 rec2=03 rec3=03c
[0x04] rec0=17 rec1=00 rec2=04 rec3=058
[0x05] rec0=17 rec1=00 rec2=05 rec3=016
[0x06] rec0=15 rec1=00 rec2=06 rec3=024
[0x07] rec0=1f rec1=00 rec2=07 rec3=004
[0x08] rec0=06 rec1=00 rec2=08 rec3=000
tail 0x2153481da8565750e7e27 0x42a00088462062803