1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html><head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
<meta http-equiv="Content-Script-Type" content="text/javascript"/>
<title>
File: alog-facilities-file_descriptor.ads
</title>
<link rel='stylesheet' href='support/docgen.css' type='text/css'/>
<script src='support/docgen.js' type='text/javascript' charset='utf-8'></script>
</head>
<body onload="onloadDoc();">
<div id='leftSide'>
<div id='leftSideInside'>
<div id='header'>
<h2 class="button">Documentation</h2>
<a href='index.html'><div class="button2">Table of Contents</div></a>
<a href='tree.html'><div class="button2">Class Inheritance Tree</div></a>
</div>
</div>
</div> <!-- leftSide -->
<div class='subprograms'>
<div class='details'><ol><li id="l1"><pre><span class="comment">--</span> </pre></li>
<li id="l2"><pre><span class="comment">-- Copyright (c) 2008-2009,</span> </pre></li>
<li id="l3"><pre><span class="comment">-- Reto Buerki, Adrian-Ken Rueegsegger</span> </pre></li>
<li id="l4"><pre><span class="comment">-- secunet SwissIT AG</span> </pre></li>
<li id="l5"><pre><span class="comment">--</span> </pre></li>
<li id="l6"><pre><span class="comment">-- This file is part of Alog.</span> </pre></li>
<li id="l7"><pre><span class="comment">--</span> </pre></li>
<li id="l8"><pre><span class="comment">-- Alog is free software; you can redistribute it and/or modify</span> </pre></li>
<li id="l9"><pre><span class="comment">-- it under the terms of the GNU Lesser General Public License as published</span> </pre></li>
<li id="l10"><pre><span class="comment">-- by the Free Software Foundation; either version 2.1 of the License, or</span> </pre></li>
<li id="l11"><pre><span class="comment">-- (at your option) any later version.</span> </pre></li>
<li id="l12"><pre><span class="comment">--</span> </pre></li>
<li id="l13"><pre><span class="comment">-- Alog is distributed in the hope that it will be useful,</span> </pre></li>
<li id="l14"><pre><span class="comment">-- but WITHOUT ANY WARRANTY; without even the implied warranty of</span> </pre></li>
<li id="l15"><pre><span class="comment">-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span> </pre></li>
<li id="l16"><pre><span class="comment">-- GNU Lesser General Public License for more details.</span> </pre></li>
<li id="l17"><pre><span class="comment">--</span> </pre></li>
<li id="l18"><pre><span class="comment">-- You should have received a copy of the GNU Lesser General Public License</span> </pre></li>
<li id="l19"><pre><span class="comment">-- along with Alog; if not, write to the Free Software</span> </pre></li>
<li id="l20"><pre><span class="comment">-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,</span> </pre></li>
<li id="l21"><pre><span class="comment">-- MA 02110-1301 USA</span> </pre></li>
<li id="l22"><pre><span class="comment">--</span> </pre></li>
<li id="l23"><pre> </pre></li>
<li id="l24"><pre><span class="keyword">with</span> Ada.Text_IO; </pre></li>
<li id="l25"><pre> </pre></li>
<li id="l26"><pre><span class="comment">-- File_Descriptor facility. Used to log to a console or file. If no file is</span> </pre></li>
<li id="l27"><pre><span class="comment">-- specified by a Set_Logfile()-call, console logging is used.</span> </pre></li>
<li id="l28"><pre><span class="keyword">package</span> <span class="droplink">Alog.Facilities.File_Descriptor<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:28:25" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l28" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l27" title="To body">To body</a></li></ul></span> <span class="keyword">is</span> </pre></li>
<li id="l29"><pre> </pre></li>
<li id="l30"><pre> <span class="keyword">type</span> <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span> <span class="keyword">is</span> <span class="keyword">new</span> <span class="droplink">Alog.Facilities.Instance<ul><li><a href="alog-facilities.ads.html#alog-facilities.ads:38:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities.ads.html#l38" title="To spec">To spec</a></li><li><a href="src_alog-facilities.ads.html#l127" title="To body">To body</a></li></ul></span> <span class="keyword">with</span> <span class="keyword">private</span>; </pre></li>
<li id="l31"><pre> <span class="comment">-- File Descriptor based logging facility.</span> </pre></li>
<li id="l32"><pre> </pre></li>
<li id="l33"><pre> <span class="keyword">type</span> <a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:33:9" title="defined at alog-facilities-file_descriptor.ads:33:9">Handle</a> <span class="keyword">is</span> <span class="keyword">access</span> <span class="keyword">all</span> <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span>; </pre></li>
<li id="l34"><pre> </pre></li>
<li id="l35"><pre> <span class="keyword">overriding</span> </pre></li>
<li id="l36"><pre> <span class="keyword">procedure</span> <span class="droplink">Teardown<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:36:14" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l100" title="To body">To body</a></li></ul></span> (<span class="droplink">Facility<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:36:24" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l100" title="To body">To body</a></li></ul></span> : <span class="keyword">in</span> <span class="keyword">out</span> <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span>); </pre></li>
<li id="l37"><pre> <span class="comment">-- Implementation of Teardown-procedure.</span> </pre></li>
<li id="l38"><pre> </pre></li>
<li id="l39"><pre> <span class="keyword">procedure</span> <span class="droplink">Set_Logfile<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:39:14" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l59" title="To body">To body</a></li></ul></span> </pre></li>
<li id="l40"><pre> (<span class="droplink">Facility<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:40:7" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l60" title="To body">To body</a></li></ul></span> : <span class="keyword">in</span> <span class="keyword">out</span> <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span>; </pre></li>
<li id="l41"><pre> <a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:41:7" title="defined at alog-facilities-file_descriptor.ads:41:7">Path</a> : String; </pre></li>
<li id="l42"><pre> <a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:42:7" title="defined at alog-facilities-file_descriptor.ads:42:7">Append</a> : Boolean := True); </pre></li>
<li id="l43"><pre> <span class="comment">-- Set logfile to use. If not set, standard output is used for logging.</span> </pre></li>
<li id="l44"><pre> <span class="comment">-- Set Append to False if an existing logfile should be overwritten.</span> </pre></li>
<li id="l45"><pre> </pre></li>
<li id="l46"><pre> <span class="keyword">function</span> <span class="droplink">Get_Logfile<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:46:13" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l51" title="To body">To body</a></li></ul></span> (<span class="droplink">Facility<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:46:26" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l51" title="To body">To body</a></li></ul></span> : <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span>) <span class="keyword">return</span> Ada.Text_IO.File_Access; </pre></li>
<li id="l47"><pre> <span class="comment">-- Get currently used logfile.</span> </pre></li>
<li id="l48"><pre> </pre></li>
<li id="l49"><pre> <span class="keyword">procedure</span> <span class="droplink">Close_Logfile<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:49:14" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l31" title="To body">To body</a></li></ul></span> </pre></li>
<li id="l50"><pre> (<span class="droplink">Facility<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:50:7" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l32" title="To body">To body</a></li></ul></span> : <span class="keyword">in</span> <span class="keyword">out</span> <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span>; </pre></li>
<li id="l51"><pre> <a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:51:7" title="defined at alog-facilities-file_descriptor.ads:51:7">Remove</a> : Boolean := False); </pre></li>
<li id="l52"><pre> <span class="comment">-- Close opened logfile.</span> </pre></li>
<li id="l53"><pre> </pre></li>
<li id="l54"><pre> <a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:54:4" title="defined at alog-facilities-file_descriptor.ads:54:4">Open_File_Error</a> : <span class="keyword">exception</span>; </pre></li>
<li id="l55"><pre> <span class="comment">-- This exception is raised if an error occurs while trying to open a</span> </pre></li>
<li id="l56"><pre> <span class="comment">-- logfile.</span> </pre></li>
<li id="l57"><pre> </pre></li>
<li id="l58"><pre><span class="keyword">private</span> </pre></li>
<li id="l59"><pre> </pre></li>
<li id="l60"><pre> <span class="keyword">overriding</span> </pre></li>
<li id="l61"><pre> <span class="keyword">procedure</span> Write </pre></li>
<li id="l62"><pre> (Facility : <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l67" title="To body">To body</a></li></ul></span>; </pre></li>
<li id="l63"><pre> Level : <span class="droplink">Log_Level<ul><li><a href="alog.ads.html#alog.ads:32:9" title="To API doc">To API doc</a></li><li><a href="src_alog.ads.html#l32" title="To spec">To spec</a></li></ul></span> := Info; </pre></li>
<li id="l64"><pre> Msg : String); </pre></li>
<li id="l65"><pre> <span class="comment">-- Implementation of the Write procedure for FD.</span> </pre></li>
<li id="l66"><pre> </pre></li>
<li id="l67"><pre> <span class="keyword">type</span> <span class="droplink">Instance<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:30:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l30" title="To spec">To spec</a></li></ul></span> <span class="keyword">is</span> <span class="keyword">new</span> <span class="droplink">Alog.Facilities.Instance<ul><li><a href="alog-facilities.ads.html#alog-facilities.ads:38:9" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities.ads.html#l38" title="To spec">To spec</a></li><li><a href="src_alog-facilities.ads.html#l127" title="To body">To body</a></li></ul></span> <span class="keyword">with</span> <span class="keyword">record</span> </pre></li>
<li id="l68"><pre> Log_File : <span class="keyword">aliased</span> Ada.Text_IO.File_Type; </pre></li>
<li id="l69"><pre> <span class="comment">-- Logfile used for file based logging.</span> </pre></li>
<li id="l70"><pre> </pre></li>
<li id="l71"><pre> Log_File_Ptr : Ada.Text_IO.File_Access := </pre></li>
<li id="l72"><pre> Ada.Text_IO.Standard_Output; </pre></li>
<li id="l73"><pre> <span class="comment">-- Reference to actual log file. Default is Standard_Output.</span> </pre></li>
<li id="l74"><pre> </pre></li>
<li id="l75"><pre> Log_File_Name : BS_Path.Bounded_String := </pre></li>
<li id="l76"><pre> To_Bounded_String (<span class="string">"none"</span>); </pre></li>
<li id="l77"><pre> <span class="comment">-- File name of log file.</span> </pre></li>
<li id="l78"><pre> <span class="keyword">end</span> <span class="keyword">record</span>; </pre></li>
<li id="l79"><pre> </pre></li>
<li id="l80"><pre><span class="keyword">end</span> <span class="droplink">Alog.Facilities.File_Descriptor<ul><li><a href="alog-facilities-file_descriptor.ads.html#alog-facilities-file_descriptor.ads:28:25" title="To API doc">To API doc</a></li><li><a href="src_alog-facilities-file_descriptor.ads.html#l28" title="To spec">To spec</a></li><li><a href="src_alog-facilities-file_descriptor.adb.html#l27" title="To body">To body</a></li></ul></span>; </pre></li>
</ol></div>
</div>
</body>
</html>
|