EasyLogger 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. data/.gitignore +10 -0
  2. data/EasyLogger.gemspec +28 -0
  3. data/EasyLogger.rdoc +62 -0
  4. data/Gemfile +21 -0
  5. data/README.rdoc +64 -0
  6. data/Rakefile +71 -0
  7. data/bin/EasyLogger +104 -0
  8. data/doc/ArubaOverrides.html +204 -0
  9. data/doc/EasyLogger.html +130 -0
  10. data/doc/EasyLogger/EasyLogger.html +188 -0
  11. data/doc/EasyLogger_rdoc.html +207 -0
  12. data/doc/File.html +208 -0
  13. data/doc/Gemfile.html +123 -0
  14. data/doc/README_rdoc.html +211 -0
  15. data/doc/Rakefile.html +136 -0
  16. data/doc/_index.html +101 -0
  17. data/doc/bin/EasyLogger.html +62 -0
  18. data/doc/class_list.html +36 -0
  19. data/doc/created.rid +11 -0
  20. data/doc/css/common.css +1 -0
  21. data/doc/css/full_list.css +53 -0
  22. data/doc/css/style.css +310 -0
  23. data/doc/features/support/env_rb.html +56 -0
  24. data/doc/file.README.html +60 -0
  25. data/doc/file_list.html +38 -0
  26. data/doc/frames.html +13 -0
  27. data/doc/index.html +60 -0
  28. data/doc/js/app.js +202 -0
  29. data/doc/js/full_list.js +149 -0
  30. data/doc/js/jquery.js +154 -0
  31. data/doc/lib/EasyLogger_version_rb.html +52 -0
  32. data/doc/lib/easy_logger/easy_logger_rb.html +52 -0
  33. data/doc/lib/easy_logger_rb.html +54 -0
  34. data/doc/method_list.html +43 -0
  35. data/doc/rdoc.css +706 -0
  36. data/doc/top-level-namespace.html +88 -0
  37. data/features/class_filtering.feature +79 -0
  38. data/features/class_method_filtering.feature +29 -0
  39. data/features/command_line.feature +25 -0
  40. data/features/method_filtering.feature +72 -0
  41. data/features/step_definitions/command_line_steps.rb +1 -0
  42. data/features/support/env.rb +14 -0
  43. data/html/EasyLogger.html +170 -0
  44. data/html/EasyLogger/EasyLogger.html +379 -0
  45. data/html/File.html +200 -0
  46. data/html/Logging.html +280 -0
  47. data/html/README_rdoc.html +212 -0
  48. data/html/bin/EasyLogger.html +64 -0
  49. data/html/created.rid +7 -0
  50. data/html/index.html +198 -0
  51. data/html/lib/EasyLogger_version_rb.html +52 -0
  52. data/html/lib/easy_logger/easy_logger_rb.html +54 -0
  53. data/html/lib/easy_logger/logging_example_rb.html +54 -0
  54. data/html/lib/easy_logger_rb.html +54 -0
  55. data/html/rdoc.css +706 -0
  56. data/lib/EasyLogger_version.rb +3 -0
  57. data/lib/easy_logger.rb +1 -0
  58. data/lib/easy_logger/easy_logger.rb +116 -0
  59. data/lib/easy_logger/logging_example.rb +46 -0
  60. data/spec/EasyLogger/easy_logger_spec.rb +63 -0
  61. data/spec/spec_helper.rb +22 -0
  62. metadata +132 -0
@@ -0,0 +1,379 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
+ <head>
6
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
7
+
8
+ <title>Class: EasyLogger::EasyLogger</title>
9
+
10
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
11
+
12
+ <script src="../js/jquery.js" type="text/javascript"
13
+ charset="utf-8"></script>
14
+ <script src="../js/thickbox-compressed.js" type="text/javascript"
15
+ charset="utf-8"></script>
16
+ <script src="../js/quicksearch.js" type="text/javascript"
17
+ charset="utf-8"></script>
18
+ <script src="../js/darkfish.js" type="text/javascript"
19
+ charset="utf-8"></script>
20
+
21
+ </head>
22
+ <body class="class">
23
+
24
+ <div id="metadata">
25
+ <div id="home-metadata">
26
+ <div id="home-section" class="section">
27
+ <h3 class="section-header">
28
+ <a href="../index.html">Home</a>
29
+ <a href="../index.html#classes">Classes</a>
30
+ <a href="../index.html#methods">Methods</a>
31
+ </h3>
32
+ </div>
33
+ </div>
34
+
35
+ <div id="file-metadata">
36
+ <div id="file-list-section" class="section">
37
+ <h3 class="section-header">In Files</h3>
38
+ <div class="section-body">
39
+ <ul>
40
+
41
+ <li><a href="../lib/easy_logger/easy_logger_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
42
+ class="thickbox" title="lib/easy_logger/easy_logger.rb">lib/easy_logger/easy_logger.rb</a></li>
43
+
44
+ </ul>
45
+ </div>
46
+ </div>
47
+
48
+
49
+ </div>
50
+
51
+ <div id="class-metadata">
52
+
53
+ <!-- Parent Class -->
54
+
55
+ <div id="parent-class-section" class="section">
56
+ <h3 class="section-header">Parent</h3>
57
+
58
+ <p class="link">Object</p>
59
+
60
+ </div>
61
+
62
+
63
+ <!-- Namespace Contents -->
64
+
65
+
66
+ <!-- Method Quickref -->
67
+
68
+ <div id="method-list-section" class="section">
69
+ <h3 class="section-header">Methods</h3>
70
+ <ul class="link-list">
71
+
72
+ <li><a href="#method-i-file">#file</a></li>
73
+
74
+ <li><a href="#method-i-match">#match</a></li>
75
+
76
+ <li><a href="#method-i-tail">#tail</a></li>
77
+
78
+ </ul>
79
+ </div>
80
+
81
+
82
+ <!-- Included Modules -->
83
+
84
+ </div>
85
+
86
+ <div id="project-metadata">
87
+
88
+
89
+ <div id="fileindex-section" class="section project-section">
90
+ <h3 class="section-header">Files</h3>
91
+ <ul>
92
+
93
+ <li class="file"><a href="../README_rdoc.html">README.rdoc</a></li>
94
+
95
+ </ul>
96
+ </div>
97
+
98
+
99
+ <div id="classindex-section" class="section project-section">
100
+ <h3 class="section-header">Class Index
101
+ <span class="search-toggle"><img src="../images/find.png"
102
+ height="16" width="16" alt="[+]"
103
+ title="show/hide quicksearch" /></span></h3>
104
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
105
+ <fieldset>
106
+ <legend>Quicksearch</legend>
107
+ <input type="text" name="quicksearch" value=""
108
+ class="quicksearch-field" />
109
+ </fieldset>
110
+ </form>
111
+
112
+ <ul class="link-list">
113
+
114
+ <li><a href="../EasyLogger.html">EasyLogger</a></li>
115
+
116
+ <li><a href="../EasyLogger/EasyLogger.html">EasyLogger::EasyLogger</a></li>
117
+
118
+ <li><a href="../File.html">File</a></li>
119
+
120
+ <li><a href="../Logging.html">Logging</a></li>
121
+
122
+ </ul>
123
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
124
+ </div>
125
+
126
+
127
+ </div>
128
+ </div>
129
+
130
+ <div id="documentation">
131
+ <h1 class="class">EasyLogger::EasyLogger</h1>
132
+
133
+ <div id="description">
134
+ <h1>Class <a href="EasyLogger.html">EasyLogger</a> which will do all the job of matching the lines and showing it</h1>
135
+ <p>
136
+ @author Sylvain Desbureaux
137
+ </p>
138
+ <h2>Attributes</h2>
139
+ <p>
140
+ @attr_reader [String] log the log file/stream that we&#8217;ll look
141
+ into @attr_reader [Array] classes the classes to match in the log
142
+ @attr_reader [Array] methods the methods to match in the log
143
+ @attr_reader [Boolean] verbose the verbosity of the output @attr_reader
144
+ [String] separator the separator of the values in the log. it&#8217;s
145
+ &#8220;|&#8221; per default
146
+ </p>
147
+ <h2>Use</h2>
148
+ <p>
149
+ There&#8217;s two methods to use the class: file() and tail(). Both of them
150
+ use the same parameters (the attributes of the class). The log file need to
151
+ be correctly formatted. the parser assumes that the log file has this
152
+ format (with &#8217;|&#8217; as separator in the example):
153
+ </p>
154
+ <pre>
155
+ |some tag (example: the date and time)|some tag|...|class|method| free text
156
+ </pre>
157
+ <p>
158
+ The Separator could be at the end of the free text but never in the middle
159
+ so choose it carefully! @see <a href="../Logging.html">Logging</a> a
160
+ working logger example
161
+ </p>
162
+ <h3><a href="../File.html">File</a></h3>
163
+ <p>
164
+ <a href="../File.html">File</a> will open the stream, parse and output the
165
+ matching line and exit
166
+ </p>
167
+ <h3>Tail</h3>
168
+ <p>
169
+ Tail will open the end of the stream and parse and output the matching line
170
+ and exit
171
+ </p>
172
+
173
+ </div>
174
+
175
+ <!-- Constants -->
176
+
177
+
178
+ <!-- Attributes -->
179
+
180
+
181
+ <!-- Methods -->
182
+
183
+ <div id="public-instance-method-details" class="method-section section">
184
+ <h3 class="section-header">Public Instance Methods</h3>
185
+
186
+
187
+ <div id="file-method" class="method-detail ">
188
+ <a name="method-i-file"></a>
189
+
190
+ <div class="method-heading">
191
+
192
+ <span class="method-name">file</span><span
193
+ class="method-args">(log, classes, methods, verbose, separator='|')</span>
194
+ <span class="method-click-advice">click to toggle source</span>
195
+
196
+ </div>
197
+
198
+ <div class="method-description">
199
+
200
+ <p>
201
+ Display the relevant line of the log matching the classes/methods
202
+ </p>
203
+ <p>
204
+ @param [String] log the log file/stream that we&#8217;ll look into
205
+ @param [String] classes the classes to match in the log @param [String]
206
+ methods the methods to match in the log @param [Boolean] verbose the
207
+ verbosity of the output @param [String] separator the separator of the
208
+ values in the log. it&#8217;s &#8220;|&#8221; per default
209
+ </p>
210
+
211
+
212
+
213
+ <div class="method-source-code"
214
+ id="file-source">
215
+ <pre>
216
+ <span class="ruby-comment cmt"># File lib/easy_logger/easy_logger.rb, line 37</span>
217
+ 37: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">file</span>(<span class="ruby-identifier">log</span>, <span class="ruby-identifier">classes</span>, <span class="ruby-identifier">methods</span>, <span class="ruby-identifier">verbose</span>, <span class="ruby-identifier">separator</span>=<span class="ruby-value str">'|'</span>)
218
+ 38: <span class="ruby-identifier">result</span> = <span class="ruby-constant">String</span>.<span class="ruby-identifier">new</span>
219
+ 39: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Looking in #{log} I/O for line matching #{classes} classe(s) and #{methods} method(s) with separator '#{separator}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
220
+ 40: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Looking in #{log} I/O for line #{methods} method(s) with separator '#{separator}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
221
+ 41: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Looking in #{log} I/O for line matching #{classes} classe(s) with separator '#{separator}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
222
+ 42: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Looking in #{log} I/O for all lines&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
223
+ 43: <span class="ruby-identifier">classes</span> =<span class="ruby-identifier">classes</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">','</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span>
224
+ 44: <span class="ruby-identifier">methods</span> =<span class="ruby-identifier">methods</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">','</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
225
+ 45: <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">map!</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">downcase</span>} <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span>
226
+ 46: <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">map!</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">m</span>.<span class="ruby-identifier">downcase</span>} <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
227
+ 47: <span class="ruby-identifier">line_number</span> = <span class="ruby-value">0</span>
228
+ 48: <span class="ruby-identifier">line_match</span> = <span class="ruby-value">0</span>
229
+ 49: <span class="ruby-constant">IO</span>.<span class="ruby-identifier">foreach</span>(<span class="ruby-identifier">log</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
230
+ 50: <span class="ruby-identifier">line_number</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
231
+ 51: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">line</span>,<span class="ruby-identifier">classes</span>,<span class="ruby-identifier">methods</span>, <span class="ruby-identifier">separator</span>)
232
+ 52: <span class="ruby-identifier">puts</span> <span class="ruby-identifier">line</span>
233
+ 53: <span class="ruby-identifier">line_match</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
234
+ 54: <span class="ruby-keyword kw">end</span>
235
+ 55:
236
+ 56: <span class="ruby-keyword kw">end</span>
237
+ 57: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{line_match} lines matched on the #{line_number} lines in the log&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span>
238
+ 58: <span class="ruby-keyword kw">end</span></pre>
239
+ </div>
240
+
241
+ </div>
242
+
243
+
244
+
245
+
246
+ </div>
247
+
248
+
249
+ <div id="match-method" class="method-detail ">
250
+ <a name="method-i-match"></a>
251
+
252
+ <div class="method-heading">
253
+
254
+ <span class="method-name">match</span><span
255
+ class="method-args">(line,classes,methods,separator)</span>
256
+ <span class="method-click-advice">click to toggle source</span>
257
+
258
+ </div>
259
+
260
+ <div class="method-description">
261
+
262
+
263
+
264
+
265
+
266
+ <div class="method-source-code"
267
+ id="match-source">
268
+ <pre>
269
+ <span class="ruby-comment cmt"># File lib/easy_logger/easy_logger.rb, line 105</span>
270
+ 105: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">line</span>,<span class="ruby-identifier">classes</span>,<span class="ruby-identifier">methods</span>,<span class="ruby-identifier">separator</span>)
271
+ 106: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">line</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>].<span class="ruby-identifier">split</span>(<span class="ruby-identifier">separator</span>).<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">3</span>
272
+ 107: <span class="ruby-identifier">methode</span> = <span class="ruby-identifier">line</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>].<span class="ruby-identifier">split</span>(<span class="ruby-identifier">separator</span>)[<span class="ruby-value">2</span>].<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">downcase</span>
273
+ 108: <span class="ruby-identifier">classe</span> = <span class="ruby-identifier">line</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>].<span class="ruby-identifier">split</span>(<span class="ruby-identifier">separator</span>)[<span class="ruby-value">3</span>].<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">downcase</span>
274
+ 109:
275
+ 110: (<span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">classe</span>)) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">methode</span>))
276
+ 111: <span class="ruby-keyword kw">else</span>
277
+ 112: <span class="ruby-keyword kw">false</span>
278
+ 113: <span class="ruby-keyword kw">end</span>
279
+ 114: <span class="ruby-keyword kw">end</span></pre>
280
+ </div>
281
+
282
+ </div>
283
+
284
+
285
+
286
+
287
+ </div>
288
+
289
+
290
+ <div id="tail-method" class="method-detail ">
291
+ <a name="method-i-tail"></a>
292
+
293
+ <div class="method-heading">
294
+
295
+ <span class="method-name">tail</span><span
296
+ class="method-args">(log, classes, methods, verbose, separator='|')</span>
297
+ <span class="method-click-advice">click to toggle source</span>
298
+
299
+ </div>
300
+
301
+ <div class="method-description">
302
+
303
+ <p>
304
+ Display the relevant <u>new</u> lines of the log matching the
305
+ classes/methods
306
+ </p>
307
+ <p>
308
+ @param (see <a href="EasyLogger.html#method-i-file">EasyLogger#file</a>)
309
+ </p>
310
+
311
+
312
+
313
+ <div class="method-source-code"
314
+ id="tail-source">
315
+ <pre>
316
+ <span class="ruby-comment cmt"># File lib/easy_logger/easy_logger.rb, line 63</span>
317
+ 63: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">tail</span>(<span class="ruby-identifier">log</span>, <span class="ruby-identifier">classes</span>, <span class="ruby-identifier">methods</span>, <span class="ruby-identifier">verbose</span>, <span class="ruby-identifier">separator</span>=<span class="ruby-value str">'|'</span>)
318
+ 64: <span class="ruby-identifier">result</span> = <span class="ruby-constant">String</span>.<span class="ruby-identifier">new</span>
319
+ 65: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Tailing in #{log} I/O for line matching #{classes} classe(s) and #{methods} method(s) with separator '#{separator}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
320
+ 66: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Tailing in #{log} I/O for line #{methods} method(s) with separator '#{separator}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
321
+ 67: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Tailing in #{log} I/O for line matching #{classes} classe(s) with separator '#{separator}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
322
+ 68: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Tailing in #{log} I/O for all lines&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
323
+ 69: <span class="ruby-identifier">classes</span> =<span class="ruby-identifier">classes</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">','</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span>
324
+ 70: <span class="ruby-identifier">methods</span> =<span class="ruby-identifier">methods</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">','</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
325
+ 71: <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">map!</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">downcase</span>} <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">nil?</span>
326
+ 72: <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">map!</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">m</span>.<span class="ruby-identifier">downcase</span>} <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">nil?</span>
327
+ 73: <span class="ruby-ivar">@line_number</span> = <span class="ruby-value">0</span>
328
+ 74: <span class="ruby-ivar">@line_match</span> = <span class="ruby-value">0</span>
329
+ 75: <span class="ruby-comment cmt"># interrupted = false</span>
330
+ 76: <span class="ruby-identifier">trap</span>(<span class="ruby-value str">&quot;INT&quot;</span>) <span class="ruby-keyword kw">do</span>
331
+ 77: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{@line_match} lines matched on the #{@line_number} lines in the log&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span>
332
+ 78: <span class="ruby-keyword kw">break</span>
333
+ 79: <span class="ruby-keyword kw">end</span>
334
+ 80: <span class="ruby-keyword kw">begin</span>
335
+ 81: <span class="ruby-constant">File</span><span class="ruby-operator">::</span><span class="ruby-constant">Tail</span><span class="ruby-operator">::</span><span class="ruby-constant">Logfile</span>.<span class="ruby-identifier">tail</span>(<span class="ruby-identifier">log</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
336
+ 82: <span class="ruby-ivar">@line_number</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
337
+ 83: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">line</span>,<span class="ruby-identifier">classes</span>,<span class="ruby-identifier">methods</span>, <span class="ruby-identifier">separator</span>)
338
+ 84: <span class="ruby-identifier">puts</span> <span class="ruby-identifier">line</span>
339
+ 85: <span class="ruby-ivar">@line_match</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
340
+ 86: <span class="ruby-keyword kw">end</span>
341
+ 87: <span class="ruby-comment cmt"># if interrupted</span>
342
+ 88: <span class="ruby-comment cmt"># break</span>
343
+ 89: <span class="ruby-comment cmt"># end</span>
344
+ 90: <span class="ruby-keyword kw">end</span>
345
+ 91: <span class="ruby-keyword kw">rescue</span>
346
+ 92: <span class="ruby-keyword kw">nil</span>
347
+ 93: <span class="ruby-keyword kw">end</span>
348
+ 94: <span class="ruby-keyword kw">end</span></pre>
349
+ </div>
350
+
351
+ </div>
352
+
353
+
354
+
355
+
356
+ </div>
357
+
358
+
359
+ </div>
360
+
361
+
362
+ </div>
363
+
364
+
365
+ <div id="rdoc-debugging-section-dump" class="debugging-section">
366
+
367
+ <p>Disabled; run with --debug to generate this.</p>
368
+
369
+ </div>
370
+
371
+ <div id="validator-badges">
372
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
373
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
374
+ Rdoc Generator</a> 1.1.6</small>.</p>
375
+ </div>
376
+
377
+ </body>
378
+ </html>
379
+
@@ -0,0 +1,200 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
+ <head>
6
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
7
+
8
+ <title>Class: File</title>
9
+
10
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
11
+
12
+ <script src="./js/jquery.js" type="text/javascript"
13
+ charset="utf-8"></script>
14
+ <script src="./js/thickbox-compressed.js" type="text/javascript"
15
+ charset="utf-8"></script>
16
+ <script src="./js/quicksearch.js" type="text/javascript"
17
+ charset="utf-8"></script>
18
+ <script src="./js/darkfish.js" type="text/javascript"
19
+ charset="utf-8"></script>
20
+
21
+ </head>
22
+ <body class="class">
23
+
24
+ <div id="metadata">
25
+ <div id="home-metadata">
26
+ <div id="home-section" class="section">
27
+ <h3 class="section-header">
28
+ <a href="./index.html">Home</a>
29
+ <a href="./index.html#classes">Classes</a>
30
+ <a href="./index.html#methods">Methods</a>
31
+ </h3>
32
+ </div>
33
+ </div>
34
+
35
+ <div id="file-metadata">
36
+ <div id="file-list-section" class="section">
37
+ <h3 class="section-header">In Files</h3>
38
+ <div class="section-body">
39
+ <ul>
40
+
41
+ <li><a href="./bin/EasyLogger.html?TB_iframe=true&amp;height=550&amp;width=785"
42
+ class="thickbox" title="bin/EasyLogger">bin/EasyLogger</a></li>
43
+
44
+ </ul>
45
+ </div>
46
+ </div>
47
+
48
+
49
+ </div>
50
+
51
+ <div id="class-metadata">
52
+
53
+ <!-- Parent Class -->
54
+
55
+ <div id="parent-class-section" class="section">
56
+ <h3 class="section-header">Parent</h3>
57
+
58
+ <p class="link">Object</p>
59
+
60
+ </div>
61
+
62
+
63
+ <!-- Namespace Contents -->
64
+
65
+
66
+ <!-- Method Quickref -->
67
+
68
+ <div id="method-list-section" class="section">
69
+ <h3 class="section-header">Methods</h3>
70
+ <ul class="link-list">
71
+
72
+ <li><a href="#method-c-realpath">::realpath</a></li>
73
+
74
+ </ul>
75
+ </div>
76
+
77
+
78
+ <!-- Included Modules -->
79
+
80
+ </div>
81
+
82
+ <div id="project-metadata">
83
+
84
+
85
+ <div id="fileindex-section" class="section project-section">
86
+ <h3 class="section-header">Files</h3>
87
+ <ul>
88
+
89
+ <li class="file"><a href="./README_rdoc.html">README.rdoc</a></li>
90
+
91
+ </ul>
92
+ </div>
93
+
94
+
95
+ <div id="classindex-section" class="section project-section">
96
+ <h3 class="section-header">Class Index
97
+ <span class="search-toggle"><img src="./images/find.png"
98
+ height="16" width="16" alt="[+]"
99
+ title="show/hide quicksearch" /></span></h3>
100
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
101
+ <fieldset>
102
+ <legend>Quicksearch</legend>
103
+ <input type="text" name="quicksearch" value=""
104
+ class="quicksearch-field" />
105
+ </fieldset>
106
+ </form>
107
+
108
+ <ul class="link-list">
109
+
110
+ <li><a href="./EasyLogger.html">EasyLogger</a></li>
111
+
112
+ <li><a href="./EasyLogger/EasyLogger.html">EasyLogger::EasyLogger</a></li>
113
+
114
+ <li><a href="./File.html">File</a></li>
115
+
116
+ <li><a href="./Logging.html">Logging</a></li>
117
+
118
+ </ul>
119
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
120
+ </div>
121
+
122
+
123
+ </div>
124
+ </div>
125
+
126
+ <div id="documentation">
127
+ <h1 class="class">File</h1>
128
+
129
+ <div id="description">
130
+
131
+ </div>
132
+
133
+ <!-- Constants -->
134
+
135
+
136
+ <!-- Attributes -->
137
+
138
+
139
+ <!-- Methods -->
140
+
141
+ <div id="public-class-method-details" class="method-section section">
142
+ <h3 class="section-header">Public Class Methods</h3>
143
+
144
+
145
+ <div id="realpath-method" class="method-detail ">
146
+ <a name="method-c-realpath"></a>
147
+
148
+ <div class="method-heading">
149
+
150
+ <span class="method-name">realpath</span><span
151
+ class="method-args">(path)</span>
152
+ <span class="method-click-advice">click to toggle source</span>
153
+
154
+ </div>
155
+
156
+ <div class="method-description">
157
+
158
+
159
+
160
+
161
+
162
+ <div class="method-source-code"
163
+ id="realpath-source">
164
+ <pre>
165
+ <span class="ruby-comment cmt"># File bin/EasyLogger, line 7</span>
166
+ 7: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">realpath</span> <span class="ruby-identifier">path</span>
167
+ 8: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">realpath</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">readlink</span>(<span class="ruby-identifier">path</span>)) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">symlink?</span>(<span class="ruby-identifier">path</span>)
168
+ 9: <span class="ruby-identifier">path</span>
169
+ 10: <span class="ruby-keyword kw">end</span></pre>
170
+ </div>
171
+
172
+ </div>
173
+
174
+
175
+
176
+
177
+ </div>
178
+
179
+
180
+ </div>
181
+
182
+
183
+ </div>
184
+
185
+
186
+ <div id="rdoc-debugging-section-dump" class="debugging-section">
187
+
188
+ <p>Disabled; run with --debug to generate this.</p>
189
+
190
+ </div>
191
+
192
+ <div id="validator-badges">
193
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
194
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
195
+ Rdoc Generator</a> 1.1.6</small>.</p>
196
+ </div>
197
+
198
+ </body>
199
+ </html>
200
+