|
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: 51200 (0xc800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Dtia_Client, pragma Module_Name 4 3997, pragma Subsystem Tools_Integration, seg_00f29f
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Action; with Device_Independent_Io; with Directory; with Gateway_Object; with Profile; with Simple_Status; with System; with System_Utilities; package Dtia_Client is -- This is the package that provides the interface from DTIA -- integration products and the DTIA mechanisms themselves. -- Integration products instantiate the generic. Environment -- operations will then call the generic formals when various -- common commands are executed from the environment. type Error_Counts is record Warnings : Natural := 0; Errors : Natural := 0; Fatal : Boolean := False; end record; -- -- Error_Counts is used to accumulate errors made on successive calls -- to certain operations. It provides a convenient way to store -- error counts for later examination. You can set Fatal to indicate -- that the operation should stop. -- Types and constants for server termination operation. See -- Dtia_Client_Operations.Terminate_Server for details. -- subtype Termination_Condition is Natural range 0 .. 63; -- Unknown_Condition : constant Termination_Condition := 0; Session_Ends : constant Termination_Condition := 1; Gateway_Class_Deactivated : constant Termination_Condition := 2; function Image (C : Termination_Condition) return String; type Image_Id is private; Nil_Image : constant Image_Id; -- -- Identifies an image. Passed to each operation to identify the -- image from which the command is being issued. Can be used only for -- the lifetime of that call. type Cursor is private; type Selection is private; Nil_Cursor : constant Cursor; Nil_Selection : constant Selection; -- Image_Identity is used to uniquely identify images so that the editor -- can find out if it already has a particular image. The general use -- is to set I1 to the Directory.Unique of the object if there is one -- and to set I2 to zero or some number if there are variants of the -- image that are to be treated as separate images. -- If the image is not based on a directory object, then some number -- is chosen for I1 and I2 such that the same numbers are chosen each -- time the specific variant of the display is specified. type Image_Identity is record I1, I2 : Long_Integer; end record; -- Editor image access -- -- Lines in the image are numbered starting at 1 -- -- A Cursor identifies a point in the image. -- A Selection is a region of the image starting and ending at some points. function Line (C : Cursor) return Integer; -- Returns line corresponding to cursor; negative if in header, -- positive if in rest of image, 0 if nil. -- The line's text is obtained via Header_Contents (-result) -- or Line_Contents (result) as appropriate. function Column (C : Cursor) return Natural; function Line_Contents (Id : Image_Id; C : Cursor) return String; -- function Line_Contents (Id : Image_Id; Line : Positive) return String; -- Return the specified line of the image. Return null string if -- past the end of the image. -- function Header_Contents (Id : Image_Id; Line : Positive) return String; -- Return the specified line of the header. Return null string if -- past the end of the header. function Selection_Start (S : Selection) return Cursor; function Selection_End (S : Selection) return Cursor; function Selection_Contents (Id : Image_Id; S : Selection) return String; function Selection_Is_Line (S : Selection) return Boolean; type Booleans is array (Positive range <>) of Boolean; procedure Insert_Lines (Image : Image_Id; After_Line : in out Natural; Text : String); -- -- Insert text into image after After_Line. Subsequent lines -- are "pushed down". -- Use After_Line = 0 to insert text at the beginning of the image. -- Use After_Line = Natural'Last to append text to end of image. -- -- On return, After_Line is the line number of the last inserted line. -- A subsequent call using the returned After_Line will insert -- text just after the text inserted by -- this call. procedure Insert_Enhanced_Lines (Image : Image_Id; After_Line : in out Natural; Text : String; Underlines : Booleans; Prompts : Booleans); -- Same as Insert_Lines except that the characters inserted can be -- underlined or emprompted. Underlines and Prompts are in 1-1 -- correspondence with Text and each element indicates whether -- to underline or enprompt the corresponding character of Text. -- -- Within Text, Ascii.lf denotes a line break. The Ascii.lf does not -- appear in the image. Other control characters appear as inverse -- video. Underlining and emprompting of Ascii.Lf characters -- is ignored. -- -- One line will be inserted, plus 1 line for every Ascii.lf in Text. procedure Replace_Header (Image : Image_Id; Header : String); -- -- Place the string as a non-editable header at the top of the image; -- replaces any previous header line(s). Note that line 0 from the -- Insert_ and Replace_ operations always follow this header, or, -- equivalently, lines in the header are not numbered. -- -- If Header is null, no header lines will be added, having the effect -- of deleting any existing header. -- Otherwise, 1 header line will be added, plus 1 line for every Ascii.lf -- in Header. procedure Append (Image : Image_Id; Text : String); -- Append the string as editable text to the bottom of the image; does -- not replace any text. procedure Delete_Lines (Image : Image_Id; Starting_Line : Positive; Number_Of_Lines : Natural); -- Delete the specified lines. procedure Replace_Lines (Image : Image_Id; Starting_Line : Positive; Number_Of_Lines : Natural; New_Text : String); -- Replaces number_of_lines starting with starting_line with New_Text. -- First deletes Number_Of_Lines starting with Starting_Line; then, -- inserts the new text at Starting_Line. procedure Replace_With_Enhanced_Lines (Image : Image_Id; Starting_Line : Positive; Number_Of_Lines : Natural; New_Text : String; Underlines : Booleans; Prompts : Booleans); -- Deletes Number_Of_Lines starting with Starting_Line; -- inserts New_Text in their place. -- One line will be inserted, plus 1 line for every Ascii.lf in New_Text. function Is_Read_Only (Image : Image_Id) return Boolean; -- return true if image is read-only procedure Make_Read_Only (Image : Image_Id); -- set image's editor state to read-only subtype Gateway_Handle is Gateway_Object.Handle; function Objects_Name (Image : Image_Id) return String; -- Return the name of the underlying object being displayed, -- if any. Returns null string if none. function Object_Id (Image : Image_Id) return Directory.Object; -- Similar to Object_Name but returns Directory.Object of -- the gateway object. -- Default 'Undefined' instantiation parameters for the -- operations generic. procedure Undefined (Handle : Gateway_Handle; Visible : Boolean; Read_Only : Boolean; No_Image : out Boolean; Show_Property_Image : out Boolean; Id : out Image_Identity); procedure Undefined (Handle : Gateway_Handle; Visible : Boolean; In_Place : Boolean; First_Time : Boolean; Read_Only : in out Boolean; Image : Image_Id; No_Image : out Boolean; Underlying_Object : out Directory.Object); procedure Undefined (Handle : Gateway_Handle; Image : Image_Id); procedure Undefined (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor); procedure Undefined (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Predicate : Boolean); procedure Undefined_In_Place (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Predicate : Boolean; In_Place : Boolean); procedure Undefined (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Visible : Boolean; Allow_Edit : out Boolean); procedure Undefined (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Count : Integer); procedure Undefined_Deletion (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Predicate : out Boolean); procedure Undefined (Handle : Gateway_Handle; Subobject : Directory.Object; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts); procedure Undefined_Check_Out (Handle : Gateway_Handle; Subobject : Directory.Object; Allow_Implicit_Accept_Changes : Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts); procedure Undefined (Handle : Gateway_Handle; Subobject : Directory.Object; Release : Boolean; Controlled : Boolean; Joined : Boolean; Source_View : Directory.Object; Destination_View : Directory.Object; First_Call : Boolean; Do_Not_Copy : out Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts); procedure Undefined (Handle : Gateway_Handle; Subobject : Directory.Object; Source_Object : Directory.Object; Release : Boolean; Controlled : Boolean; Joined : Boolean; Source_View : Directory.Object; Destination_View : Directory.Object; First_Call : Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts); procedure Undefined (Handle : Gateway_Handle; Subobject : Directory.Object; Save_Source : Boolean; Allow_Controlled : out Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts); -- Default actuals for I/O related generic formals. Each -- of these operations raises an appropriate exception if -- called as a result of specifying 'External' for I/O -- operations in the gateway's operation map. procedure Undefined (File : in out Device_Independent_Io.File_Type; Mode : Device_Independent_Io.File_Mode; Handle : Gateway_Handle; Form : String; Action_Id : Action.Id); procedure Undefined (File : Device_Independent_Io.File_Type; Item : out System.Byte_String; Count : out Natural); procedure Undefined (File : Device_Independent_Io.File_Type; Item : out String; Count : out Natural); procedure Undefined (File : Device_Independent_Io.File_Type; Item : System.Byte_String); procedure Undefined (File : Device_Independent_Io.File_Type; Item : String); function Undefined (File : Device_Independent_Io.File_Type) return Boolean; procedure Undefined (File : in out Device_Independent_Io.File_Type); procedure Undefined (File : in out Device_Independent_Io.File_Type; Mode : Device_Independent_Io.File_Mode); generic Class_Name : String; -- Name of the class instantiation is -- handling. Session_Server : Boolean; -- True if the instantiation is to -- handle only requests from the specific session on which this -- package is elaborated. -- When these operations are invoked, the Handle parameter -- will refer to the gateway object under which the editor -- is running an image. -- -- Note that these operation are invoked by a task that has -- the invoking user's login identity. Thus, for access control -- purposes, they run with the same access as the user. -- -- For editor operations, the editor will release -- its read lock on the object underlying the image (if any) -- during the execution of the generic formals below. The same -- is not true of the gateway handle. If the gateway object is -- to be updated, it must first be closed, and then reopened -- for update. If the underlying object is updated, it must be -- closed prior to return of the generic formal procedure after -- which the editor will automatically redraw the image. with procedure Image_Name (Handle : Gateway_Handle; Visible : Boolean; Read_Only : Boolean; No_Image : out Boolean; Show_Property_Image : out Boolean; Id : out Image_Identity) is Undefined; -- -- Called when an image is to be created for the specified Gateway. -- If no image is to be built, set No_Image. If No_Image is -- true, Show_Property_Image can be set true to cause the editor -- to bring up the gateway property image directly. Build_Image -- will not be called in this case. Otherwise, Build_Image will be -- called to create the image or run workstation tools. -- -- Read_Only indicates that the image is ro be read only when made. -- It is false when the image is being constructed as a result of -- Common.Edit being run. with procedure Build_Image (Handle : Gateway_Handle; Visible : Boolean; In_Place : Boolean; First_Time : Boolean; Read_Only : in out Boolean; Image : Image_Id; No_Image : out Boolean; Underlying_Object : out Directory.Object) is Undefined; -- -- Called when an image is to be created for the object designated by -- Handle (First_Time = true) or re-built as part of the Revert -- operation (First_Time = false). -- Visible is from the definition or edit command. -- In_Place indicates that the current window should be used and -- this applies in the case when some other environment operation -- ends up being called. Read_Only is true if the image is a result -- of Definition or Gateway.Edit, and not Common.Edit. -- No_Image should be set the same as Image_Name. If there is -- an underlying object for the image, set Underlying_Object -- to this value. If not, set it to Directory.Nil. -- If Read_Only is false on entry, Build_Image checks that the class -- allows editing, and sets Read_Only to true if it does not. with procedure Post_Commit (Handle : Gateway_Handle; Image : Image_Id) is Undefined; -- -- Called after a commit operation is run. If the object was -- actually open for update, the update is committed and the -- object is available at the time this procedure is called. -- If the image was constructed by the instantiation of Build_Image -- then this procedure is responsible for saving any changes that -- need to be saved. with procedure Semanticize (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor) is Undefined; -- -- Called when Common.Semanticize is run on the image. -- The image can be modified by calling operations in the -- Image_Update package below. with procedure Complete (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Menu : Boolean) is Undefined; -- -- Called when Common.Complete is called, Menu is the parameter -- passed to Common.Complete. with procedure Edit (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Visible : Boolean; Allow_Edit : out Boolean) is Undefined; -- -- Called when Edit is run from the image. Does not apply when -- edit is run from some other way (such as LOE image). -- Visible is as passed to the command. -- -- On return, Allow_Edit is used to determine if the image should -- be allowed to be edited. Note that this is ignored if the -- class forbids editing. with procedure Definition (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Visible : Boolean; In_Place : Boolean) is Undefined_In_Place; -- -- If a new window is to be brought up, call the normal -- definition operation to do it. In_Place indicates that, -- if a new R1000 window is to be brought up, it should -- overwrite this one. with procedure Enclosing_Object (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Library : Boolean; In_Place : Boolean) is Undefined_In_Place; -- Bring up the enclosing object as appropriate. If a new -- R1000 window is to be brought up, In_Place indicates that -- it should replace the current window. with procedure Elide (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Repeat : Positive) is Undefined; with procedure Expand (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Repeat : Positive) is Undefined; with procedure Undo (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Repeat : Positive) is Undefined; with procedure Redo (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Repeat : Positive) is Undefined; with procedure Promote (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor) is Undefined; with procedure Demote (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor) is Undefined; with procedure Format (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor) is Undefined; with procedure Revert (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor) is Undefined; -- Called when the Common.Revert is executed. Following -- execution of this procedure (the Revert actual), the image will -- be regenerated by taking the Build_Image action as defined -- in the operations map for the gateway class. If this action -- is external, then the Build_Image actual will be called. -- -- This procedure should delete the current image contents if the -- subsequent actions cannot deal with there being previous -- image contents. Deletion is not required for images automatically -- regenerated from an object (i.e., not via the Build_Image -- procedure). -- -- In addition, Revert should take whatever action is required to -- get the data "up to date" as defined by the integration -- product semantics for revert. with procedure Sort_Image (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Format : Integer) is Undefined; with procedure Delete (Handle : Gateway_Handle; Image : Image_Id; S : Selection; C : Cursor; Remove_Image : out Boolean) is Undefined_Deletion; with procedure Pre_Check_In (Handle : Gateway_Handle; Subobject : Directory.Object; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined; -- -- Called during CMVC.Check_In prior to the object actually -- being checked_in. This operation may update the -- R1000 or workstation object as desired. -- -- Set Errors.Fatal to true to cause the check in to terminate. -- Messages should be written to Log_File using Log.Put_Line. -- This is the log file being generated by CMVC. -- Action is an action_id that will be abandoned if the overall -- Check_In operation fails and committed if it succeeds. with procedure Post_Check_In (Handle : Gateway_Handle; Subobject : Directory.Object; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined; -- -- Called during CMVC.Check_In after the object is -- checked_in. This operation may not update the -- R1000 object, but may update the workstation object as desired. -- Note, however, that the action has not been committed at this -- point so that there is no guarantee the the object will -- in fact end up checked-in. -- -- Set Errors.Fatal to true to cause the check in to terminate. -- Messages should be written to Log_File using Log.Put_Line. -- This is the log file being generated by CMVC. -- Action is an action_id that will be abandoned if the overall -- Check_In operation fails and committed if it succeeds. with procedure Pre_Check_Out (Handle : Gateway_Handle; Subobject : Directory.Object; Allow_Implicit_Accept_Changes : Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined_Check_Out; -- -- Called during Cmvc.Check_Out prior to the object actually -- being checked out. Allows placement of messages -- into log prior to check_out and forbidding of check_out. Set -- Errors.Fatal to true to cause the check_out to not happen. -- Messages should be written to the log file using Log.Put_Line -- with response profile Response. This is the log file being -- generated by CMVC. -- Allow_Implicit_Accept_Changes is the parameter as passed to -- Cmvc.Check_Out. -- Action is an action_id that will be abandoned if the overall -- Check_Out operation fails and committed if it succeeds. with procedure Post_Check_Out (Handle : Gateway_Handle; Subobject : Directory.Object; Allow_Implicit_Accept_Changes : Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined_Check_Out; -- -- Called after cmvc.check_out. Allows placement of messages -- into log after check out. Set Errors.Fatal to true to cause -- the check out to be abandoned. This should be done only in -- the case of serious, thought-to-be unrecoverable problems. -- The gateway object can be modified at this time. -- -- Messages should be written to the log file using Log.Put_Line -- with response profile Response. This is the log file being -- generated by CMVC. -- Allow_Implicit_Accept_Changes is the parameter as passed to -- Cmvc.Check_Out. -- Action is an action_id that will be abandoned if the overall -- Check_Out operation fails and committed if it succeeds. with procedure Pre_Cmvc_Copy (Handle : Gateway_Handle; Subobject : Directory.Object; Release : Boolean; Controlled : Boolean; Joined : Boolean; Source_View : Directory.Object; Destination_View : Directory.Object; First_Call : Boolean; Do_Not_Copy : out Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined; -- -- Called prior to Cmvc.Copy of any form that is copying this -- gateway object. -- -- Warning or error messages should be written to Log_File -- using Log.Put_Line. This is the log file being generated -- by CMVC. -- -- Parameters and their meaning: -- Release => the operation is a release operation in which -- the object will end up frozen. -- Controlled => the object being copied is Cmvc controlled. -- Joined => the object being copied will be joined to -- source view. (This is always the same for -- all objects copied in a single view copy.) -- Source_View = View being copied. -- Destination_View = view being created with copies from -- Source_View. -- First_Call => This is the first object being copied by -- this Cmvc copy operation. False other times. -- -- If the object should not be copied, then set Do_Not_Copy to -- true, else to false. -- -- Action is an action_id that will be abandoned if the overall -- Copy operation fails and committed if it succeeds. with procedure Post_Cmvc_Copy (Handle : Gateway_Handle; Subobject : Directory.Object; Source_Object : Directory.Object; Release : Boolean; Controlled : Boolean; Joined : Boolean; Source_View : Directory.Object; Destination_View : Directory.Object; First_Call : Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined; -- -- Called after Cmvc.Copy has copied a gateway object. Handle -- is the gateway object in the newly created view. -- The operation may be a release and the object will be frozen -- but at this point, it is not yet frozen. This is an opportunity -- to modify the object before the copy/release is completed. -- If objects or information needs to be added to the -- copy, it can be done at this time. If it needs to be -- removed from the source, this can also be done at this time. -- -- Warning or error messages should be written using Log.Put_Line -- with response profile Response. This is the log file being -- generated by CMVC. Set Errors.Fatal to true to prevent -- copy from completing. -- -- Parameters and their meaning: -- Release => the operation is a release operation in which -- the object will end up frozen. -- Controlled => the object being copied is Cmvc controlled. -- Joined => the object being copied will be joined to -- source view. (This is always the same for -- all objects copied in a single view copy.) -- Source_View = View being copied. -- Destination_View = view being created with copies from -- Source_View. -- First_Call => This is the first object being copied by -- this Cmvc copy operation. False other times. -- -- Action is an action_id that will be abandoned if the overall -- Copy operation fails and committed if it succeeds. with procedure Pre_Make_Controlled (Handle : Gateway_Handle; Subobject : Directory.Object; Save_Source : Boolean; Allow_Controlled : out Boolean; Response : Profile.Response_Profile; Action_Id : Action.Id; Errors : in out Dtia_Client.Error_Counts) is Undefined; -- -- Called when, but before, the object designated by Handle is -- to be made controlled. Set Allow_Controlled if it is ok to -- proceed with this object. If not, emit error messages to -- Log_File, and indicate an error or warning in Errors (warning -- would be best), and set Allow_Controlled to false. -- Save_Source is the value of the parameter to the Cmvc -- command and indicates if the source is to be saved in the -- CMVC database. -------------------------- -- Input/Output Formals -- -------------------------- -- -- Client applications should provide non-default actuals -- for the following formals when non-standard I/O control -- on gateway objects is required. -- -- These operations are called whenever I/O operations -- are applied to a gateway object whose Dispatch_Map or -- Io.Form_Map property specifies the value 'External'. -- -- Each of these formals operate on the File_Type object -- declared in Device_Independent_Io and should behave -- in a way consistent with the corresponding operations -- in that package. This includes the propagation of -- exceptions, which must be limited to those exported -- from Device_Independent_Io. -- -- N.B. A Device_Independent_Io.Device_Specific control block -- is associated with the File objects passed to these -- formals. Clients must restrict their use of control -- blocks to Device_Independent_Io.Client_Specific, if -- they need to associate client specific attributes with -- the File object. with procedure Io_Create (File : in out Device_Independent_Io.File_Type; Mode : Device_Independent_Io.File_Mode; Handle : Gateway_Handle; Form : String; Action_Id : Action.Id) is Undefined; -- -- Called when a Create operation is applied to a gateway -- object as specified above. The client must initialize -- the File object such that Is_Open (File) = True and -- Mode (File) = Mode. When this is not possible, an -- exception from Device_Independent_Io suitable for -- Create should be raised. with procedure Io_Open (File : in out Device_Independent_Io.File_Type; Mode : Device_Independent_Io.File_Mode; Handle : Gateway_Handle; Form : String; Action_Id : Action.Id) is Undefined; -- -- Called when an Open operation is applied to a gateway -- object as specified above. The client must initialize -- the File object such that Is_Open (File) = True and -- Mode (File) = Mode. When this is not possible, an -- exception from Device_Independent_Io suitable for Open -- should be raised. with procedure Io_Read_Bytes (File : Device_Independent_Io.File_Type; Item : out System.Byte_String; Count : out Natural) is Undefined; -- -- Called when an I/O request to read bytes from File is made. -- Clients may supply Device_Independent_Io.Read for this formal -- if File was initialized to a directly accessible file during -- Io_Create or Io_Open above. with procedure Io_Read_String (File : Device_Independent_Io.File_Type; Item : out String; Count : out Natural) is Undefined; -- -- Called when an I/O request to read characters from File is -- made. Clients may supply Device_Independent_Io.Read for this -- formal if File was initialized to a directly accessible file -- during Io_Create or Io_Open above. with procedure Io_Write_Bytes (File : Device_Independent_Io.File_Type; Item : System.Byte_String) is Undefined; -- -- Called when an I/O request to write bytes to File is made. -- Clients may supply Device_Independent_Io.Write for this -- formal if File was initialized to a directly accessible file -- during Io_Create or Io_Open above. with procedure Io_Write_String (File : Device_Independent_Io.File_Type; Item : String) is Undefined; -- -- Called when an I/O request to write characters to File is -- made. Clients may supply Device_Independent_Io.Write for -- this formal if File was initialized to a directly accessible -- file during Io_Create or Io_Open above. with function Io_End_Of_File (File : Device_Independent_Io.File_Type) return Boolean is Undefined; -- -- Called when an end of file query is made on File. Clients -- may supply Device_Independent_Io.End_Of_File for this formal -- if File was initialized to a directly accessible file during -- Io_Create or Io_Open above. with procedure Io_Delete (File : in out Device_Independent_Io.File_Type) is Undefined; -- -- Called when an I/O request to delete File is made. Clients -- may supply Device_Independent_Io.Delete for this formal if -- File was initialized to a directly accessible file during -- Io_Create or Io_Open above and no additional reclamation of -- resources is required. with procedure Io_Reset (File : in out Device_Independent_Io.File_Type; Mode : Device_Independent_Io.File_Mode) is Undefined; -- -- Called when an I/O request to reset File is made. Clients -- may supply Device_Independent_Io.Reset for this formal if -- File was initialized to a directly accessible file during -- Io_Create or Io_Open above and no additional reclamation of -- resources is required. with procedure Io_Close (File : in out Device_Independent_Io.File_Type) is Undefined; -- -- Called when an I/O request to close File is made. Clients -- may supply Device_Independent_Io.Close for this formal if -- File was initialized to a directly accessible file during -- Io_Create or Io_Open above and no additional reclamation of -- resources is required. ------------------------ -- Server Termination -- ------------------------ with procedure Terminate_Server (Reason : Termination_Condition); -- -- Called when the server should terminate. Reason indicates -- why. In general, the server should close down its connections -- and terminate when this call is made. The work that -- can be done by this call is limited to 5 minutes of elapsed -- time. -- -- The reasons are: -- Session_Ends: There are no more jobs started from the session -- that started the server and hence, no more calles -- can occur. -- Gateway_Class_Deactivated: The gateway class is being -- deactivated and the server should terminate -- (whether there are outstanding requests or not). package Dtia_Client_Operations is -- Here are things that the generic formal procedures can do -- when they are called: -- -- 1. Send (error) messages to Io.Current_Error. -- 2. Send output to current output. This is not typically -- done for the editor-style commands. -- 3. Send Log.Put_Line messages to the log file. -- 4. Modify the image using procedures above. -- 5. Perform external operations, possibly contacting the -- workstation and possibly updating the object that -- underlies the image. -- procedure Check_If_Registration_Succeeded (Status : in out Simple_Status.Condition); -- Returns an error status indicating if the instantiation and -- registration of the client was successful, and, if not, -- what the error was. Common errors indicated below. end Dtia_Client_Operations; Gateway_Class_Not_Active : constant String := "Gateway class not active"; Server_Already_Exists : constant String := "Server already exists"; function Line_Contents (Id : Image_Id; Line : Positive) return String; -- Return the specified line of the image. Return null string if -- past the end of the image. function Header_Contents (Id : Image_Id; Line : Positive) return String; -- Return the specified line of the header. Return null string if -- past the end of the header. function Last_Line (Id : Image_Id) return Natural; -- Return the number of the last line of the image, 0 if none. function Last_Header_Line (Id : Image_Id) return Natural; -- Return the number of the last header line of the image, 0 if none. function Is_Modified (Image : Image_Id) return Boolean; -- return true if image is modified procedure Commit (Image : Image_Id; Success : out Boolean); -- equivalent to Common.Commit: -- If Image is modified, writes the image to the underlying object and -- call Dispatch.Post_Commit; set Success false if any problem. -- Otherwise, set Success true. pragma Subsystem (Tools_Integration); pragma Module_Name (4, 3997); pragma Bias_Key (29); end Dtia_Client;
nblk1=31 nid=0 hdr6=62 [0x00] rec0=1f rec1=00 rec2=01 rec3=030 [0x01] rec0=00 rec1=00 rec2=31 rec3=00a [0x02] rec0=1b rec1=00 rec2=02 rec3=062 [0x03] rec0=00 rec1=00 rec2=30 rec3=032 [0x04] rec0=19 rec1=00 rec2=03 rec3=00c [0x05] rec0=15 rec1=00 rec2=04 rec3=024 [0x06] rec0=02 rec1=00 rec2=2f rec3=004 [0x07] rec0=11 rec1=00 rec2=05 rec3=084 [0x08] rec0=16 rec1=00 rec2=06 rec3=026 [0x09] rec0=15 rec1=00 rec2=07 rec3=082 [0x0a] rec0=17 rec1=00 rec2=08 rec3=02c [0x0b] rec0=14 rec1=00 rec2=09 rec3=08c [0x0c] rec0=18 rec1=00 rec2=0a rec3=062 [0x0d] rec0=17 rec1=00 rec2=0b rec3=036 [0x0e] rec0=11 rec1=00 rec2=0c rec3=018 [0x0f] rec0=0f rec1=00 rec2=0d rec3=076 [0x10] rec0=13 rec1=00 rec2=0e rec3=044 [0x11] rec0=14 rec1=00 rec2=0f rec3=060 [0x12] rec0=17 rec1=00 rec2=10 rec3=08c [0x13] rec0=12 rec1=00 rec2=11 rec3=030 [0x14] rec0=12 rec1=00 rec2=12 rec3=006 [0x15] rec0=11 rec1=00 rec2=13 rec3=042 [0x16] rec0=13 rec1=00 rec2=14 rec3=054 [0x17] rec0=15 rec1=00 rec2=15 rec3=054 [0x18] rec0=13 rec1=00 rec2=16 rec3=014 [0x19] rec0=16 rec1=00 rec2=17 rec3=004 [0x1a] rec0=15 rec1=00 rec2=18 rec3=06a [0x1b] rec0=11 rec1=00 rec2=19 rec3=076 [0x1c] rec0=15 rec1=00 rec2=1a rec3=008 [0x1d] rec0=12 rec1=00 rec2=1b rec3=070 [0x1e] rec0=13 rec1=00 rec2=1c rec3=07a [0x1f] rec0=13 rec1=00 rec2=1d rec3=02a [0x20] rec0=11 rec1=00 rec2=1e rec3=08c [0x21] rec0=16 rec1=00 rec2=1f rec3=00c [0x22] rec0=12 rec1=00 rec2=20 rec3=002 [0x23] rec0=14 rec1=00 rec2=21 rec3=014 [0x24] rec0=12 rec1=00 rec2=22 rec3=038 [0x25] rec0=11 rec1=00 rec2=23 rec3=05c [0x26] rec0=16 rec1=00 rec2=24 rec3=002 [0x27] rec0=12 rec1=00 rec2=25 rec3=01e [0x28] rec0=13 rec1=00 rec2=26 rec3=032 [0x29] rec0=13 rec1=00 rec2=27 rec3=082 [0x2a] rec0=14 rec1=00 rec2=28 rec3=04a [0x2b] rec0=15 rec1=00 rec2=29 rec3=00e [0x2c] rec0=14 rec1=00 rec2=2a rec3=026 [0x2d] rec0=17 rec1=00 rec2=2b rec3=05e [0x2e] rec0=17 rec1=00 rec2=2c rec3=01e [0x2f] rec0=16 rec1=00 rec2=2d rec3=05e [0x30] rec0=11 rec1=00 rec2=2e rec3=000 tail 0x2150b2dbc822a62a13241 0x42a00088462065003