|
|
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: 2254 (0x8ce)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
with Cmvc_Implementation;
with Directory_Tools;
with Action, System_Utilities;
function Check_Out_Ok (What_Object : String) return Boolean is
package Ci renames Cmvc_Implementation;
package Dt renames Directory_Tools;
package Traversal renames Dt.Traversal;
package Object renames Dt.Object;
package Naming renames Dt.Naming;
Obj : Directory_Tools.Object.Handle := Dt.Naming.Resolution (What_Object);
Version_Set : Ci.Version_Set;
Config : Ci.Configuration;
Element : Ci.Element;
Db : Ci.Database;
Status : Ci.Error_Status;
View : Object.Handle;
Subsystem : Object.Handle;
Is_Out : Boolean := False;
begin
if not Object.Is_Bad (Obj) then
View := Traversal.Enclosing_World (Obj);
Subsystem := Traversal.Parent (View);
Ci.Database_Operations.Open
(Naming.Full_Name (Subsystem) & ".state.cmvc_database",
Action.Null_Id, Db, Status);
if Status = 0 then
Ci.Configuration_Operations.Open
(Naming.Simple_Name (View), Config, Status, Db);
if Status = 0 then
if Dt.Ada_Object.Is_Visible_Part (Obj) then
Ci.Element_Operations.Open
("units." & Naming.Simple_Name (Obj) & "'spec",
Element, Status, Db);
else
Ci.Element_Operations.Open
("units." & Naming.Simple_Name (Obj) & "'body",
Element, Status, Db);
end if;
if Status = 0 then
Ci.Version_Set_Operations.Open
(Element, Version_Set, Status, Config);
if Status = 0 then
Is_Out := Ci.History_Operations.Is_Checked_Out
(Version_Set) and
Ci.History_Operations.Who_Checked_Out
(Version_Set) = System_Utilities.User_Name;
end if;
end if;
end if;
Ci.Database_Operations.Close
(Db => Db, Status => Status, Prevent_Commit => False);
end if;
end if;
return Is_Out;
end Check_Out_Ok;