File: src_alog-facilities-file_descriptor.ads.html

package info (click to toggle)
libalog 0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 2,056 kB
  • ctags: 465
  • sloc: ada: 5,203; makefile: 166; sql: 9; sh: 2
file content (112 lines) | stat: -rw-r--r-- 15,335 bytes parent folder | download
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">&quot;none&quot;</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>