DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: B T

⟦86d9ed00a⟧ TextFile

    Length: 2920 (0xb68)
    Types: TextFile
    Names: »B«

Derivation

└─⟦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⟧ 

TextFile

with Calendar;
with Directory_Tools;
with String_Utilities;
with System_Utilities;
package body Training_Names is

    package Dir_Names renames Directory_Tools.Naming;
    package Statistics renames Directory_Tools.Statistics;
    package Strings renames String_Utilities;

    No_Objects : exception;   -- raised by Most_Recent_Object

    function Most_Recent_Object
                (Within_Objects : in String := "@") return Dir_Object.Handle;


    function Courses_Lib_Pathname return String is
    begin
        return "!Training.Software_Releases";
    end Courses_Lib_Pathname;


    function Tools_Lib_Pathname return String is
    begin
        return
           "!SOFTWARE_CATALOGS.CATALOGS.CUSTOMER.SECTIONS.TRAINING_TOOLS.TRAINING_SCRIPTS.Rev1_working.Units";
--        return
        --         "!SOFTWARE_CATALOGS.CATALOGS.CUSTOMER.SECTIONS.TRAINING_TOOLS.TRAINING_SCRIPTS.@.Units'view";
    end Tools_Lib_Pathname;


    function Live_Job_File_Pathname return String is
    begin
        return Tools_Lib_Pathname & ".Live_Job_Files." &
                  System_Utilities.User_Name & "_" &
                  System_Utilities.Session_Name;
    end Live_Job_File_Pathname;


    function Script_Text_File_Pathname (For_Course : in String) return String is

        Script_File_Pathname : constant String :=
           Tools_Lib_Pathname & ".script_texts." & For_Course;
        Script_File_Object : Dir_Object.Handle :=
           Dir_Names.Resolution (Script_File_Pathname);
    begin
        if Dir_Object.Is_Bad (Script_File_Object) then
            raise Bad_Script_Text_File_Name;
        else
            return Dir_Names.Unique_Full_Name (Script_File_Object);
        end if;
    end Script_Text_File_Pathname;


    -- local use only
    -- return the most recently-dated directory object from a set
    -- raises an exception of a null object set is specified
    --
    function Most_Recent_Object
                (Within_Objects : in String := "@") return Dir_Object.Handle is
        All_Objects : Dir_Object.Iterator :=
           Dir_Names.Resolution (Within_Objects);
        An_Object : Dir_Object.Handle;
        The_Most_Recent_Object : Dir_Object.Handle;
    begin
        if Dir_Object.Is_Bad (All_Objects) then
            raise No_Objects;
        end if;
        The_Most_Recent_Object := Dir_Object.Value (All_Objects);
        Dir_Object.Next (All_Objects);
        while not Dir_Object.Done (All_Objects) loop
            An_Object := Dir_Object.Value (All_Objects);
            if Calendar."<" (Statistics.Time_Of_Creation
                                (The_Most_Recent_Object),
                             Statistics.Time_Of_Creation (An_Object)) then
                The_Most_Recent_Object := An_Object;
            end if;
            Dir_Object.Next (All_Objects);
        end loop;
        return The_Most_Recent_Object;
    end Most_Recent_Object;


end Training_Names;