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

⟦338e8ab5a⟧ TextFile

    Length: 3045 (0xbe5)
    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 Log;
with Cmvc;
with Errors;
with Profile;
with Subtypes;
use Subtypes;
with Library;
with Pathnames;
with Debug_Tools;
with Directory_Tools;
procedure Initialize_Free_Form  
             (This_Item : in String := "<SELECTION>";
              Is_Proprietary : in Boolean;
              Response : in String := "<PROFILE>") is
    --
    Old_Response_Profile : Profile.Response_Profile := Profile.Get;
    New_Response_Profile : Profile.Response_Profile := Profile.Value (Response);
    --
    package Error is new Errors  
                            (Old_Response_Profile, New_Response_Profile,
                             "Initialize_Free_Form");
    --
begin
    Profile.Set (New_Response_Profile);
    Log.Put_Line ("[Initialize_Free_Form (This_Item => """ & This_Item &
                  ", Is_Proprietary => " & Boolean'Image (Is_Proprietary) &
                  ", Response => """ & Response & """)]",
                  Profile.Auxiliary_Msg);
    declare
        The_Physical_Item : Directory_Tools.Object.Handle :=
           Directory_Tools.Naming.Resolution (This_Item);
        The_Item : constant Full_Name :=
           Directory_Tools.Naming.Full_Name (The_Physical_Item);
    begin
        Pathnames.Assert_Is_Valid_Item_Name (The_Item);
        Log.Put_Line ("Deleting any pre-existing boilerplate files");
        declare
            The_Boilerplate_Files : constant String :=
               Pathnames.All_Boilerplate_Files_In (The_Item);
        begin
            Cmvc.Make_Uncontrolled (What_Object => The_Boilerplate_Files,  
                                    Response => "<PROFILE>");
            Library.Delete (Existing => The_Boilerplate_Files,
                            Limit => "<ALL_WORLDS>",
                            Response => "<PROFILE>");
            Library.Expunge (Existing => The_Boilerplate_Files,
                             Response => "<PROFILE>");
            Log.Put_Line ("Creating boilerplate file");
            if (Is_Proprietary) then
                Library.Copy
                   (From => Pathnames.Proprietary_Boilerplate_File_Template,
                    To => Pathnames.Free_Form_Proprietary_Boilerplate_File
                             (For_Item => The_Item),
                    Response => "PROPAGATE," & Response);
            else
                Library.Copy
                   (From => Pathnames.Public_Domain_Boilerplate_File_Template,
                    To => Pathnames.Free_Form_Public_Domain_Boilerplate_File
                             (For_Item => The_Item),
                    Response => "PROPAGATE," & Response);
            end if;
        end;
    end;
    Log.Put_Line
       ("[end of Initialize_Free_Form operation--no error(s) detected]");
    Profile.Set (Old_Response_Profile);
    --
exception
    when Error.Propagate =>
        raise;  
    when Error.Quit =>
        null;
    when others =>
        Error.Report ("EXCEPTION: " & Debug_Tools.Get_Exception_Name,
                      Profile.Exception_Msg);
        --
end Initialize_Free_Form;