|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 3646 (0xe3e)
Types: TextFile
Names: »B«
└─⟦25882cbde⟧ Bits:30000536 8mm tape, Rational 1000, RCI_RS6000_AIX_IBM 2_0_2
└─⟦b8efda8ac⟧ »DATA«
└─⟦7061b4ee8⟧
└─⟦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);
Directory_Result : constant Library_Interface.String_Result :=
Library_Interface.Remote_Directory (View => Host_Path_Name);
Library_Result : constant Library_Interface.String_Result :=
Library_Interface.Remote_Library (View => Host_Path_Name);
Remote_Machine : constant String :=
Machine_Result.Result (1 .. Machine_Result.Size);
Remote_Directory : constant String :=
Directory_Result.Result (1 .. Directory_Result.Size);
Remote_Library : constant String :=
Library_Result.Result (1 .. Library_Result.Size);
Old_Context : Directory.Naming.Context;
Dir_Exists : Boolean := True;
View_Obj : Directory.Object := Es.Get_View (Host_Path_Name);
Trace_On : constant Boolean := Rsi.Trace_On (View_Obj);
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
if Rci_Switch_Implementation.Is_Host_Only (Get_View (Host_Path_Name)) then
Log.Put_Line (Message => "Not executing Destroy_View_Preprocess. " &
Host_Path_Name & " is a Host_Only View. ",
Kind => Profile.Note_Msg);
Simple_Status.Initialize (Status);
return;
else
Log.Put_Line (Message => "Executing Destroy_View_Preprocess",
Kind => Profile.Note_Msg);
end if;
Set_Context (Old_Context => Old_Context,
View => Host_Path_Name,
Status => Status);
if Remote_Machine = "" or else Remote_Directory = "" then
Display_Information;
Set_Status (Status => Status,
Message => "Insufficient remote library information.",
Severity => Simple_Status.Problem);
Reset_Context (Old_Context);
return;
end if;
Directory_Exists (Remote_Directory => Remote_Directory,
Remote_Machine => Remote_Machine,
Status => Status,
Trace_On => Trace_On,
Exists => Dir_Exists);
if Dir_Exists then
Destroy_Remote_Library (Remote_Directory => Remote_Directory,
Remote_Machine => Remote_Machine,
Trace_On => Trace_On,
Status => Status);
else
Log.Put_Line (Message =>
"The remote directory, " & Remote_Directory &
" does not exist on machine, " & Remote_Machine,
Kind => Profile.Negative_Msg);
Set_Status
(Status => Status,
Message => "Unable to destroy remote directory/program library.",
Severity => Simple_Status.Problem);
end if;
Reset_Context (Old_Context);
exception
when others =>
Reset_Context (Old_Context);
Unhandled_Exception (Status, "Destroy_View_Preprocess");
end Destroy_View_Preprocess;