You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by ro...@apache.org on 2005/05/21 17:05:12 UTC
svn commit: r171220 [105/120] - in
/incubator/ibatis/trunk/cs/mapper/CloverReport: ./ files/ files/Commands/
files/Configuration/ files/Configuration/Alias/ files/Configuration/Cache/
files/Configuration/Cache/Fifo/ files/Configuration/Cache/Lru/
files/Configuration/Cache/Memory/ files/Configuration/ParameterMapping/
files/Configuration/ResultMapping/ files/Configuration/Sql/
files/Configuration/Sql/Dynamic/ files/Configuration/Sql/Dynamic/Elements/
files/Configuration/Sql/Dynamic/Handlers/
files/Configuration/Sql/SimpleDynamic/ files/Configuration/Sql/Static/
files/Configuration/Statements/ files/Exceptions/ files/Logging/
files/MappedStatements/ files/Pagination/ files/Scope/
files/SessionContainer/ files/Transaction/ files/TypeHandlers/
files/Utilities/ files/Utilities/Objects/ files/Utilities/TypesResolver/
img/ namespaces/ namespaces/IBatisNet.Common.Exceptions/
namespaces/IBatisNet.Common.Logging/ namespaces/IBatisNet.Common.Pagination/
namespaces/IBatisNet.Common.Transaction/
namespaces/IBatisNet.Common.Utilities.Objects/
namespaces/IBatisNet.Common.Utilities.TypesResolver/
namespaces/IBatisNet.Common.Utilities/ namespaces/IBatisNet.Common/
namespaces/IBatisNet.DataMapper.Commands/
namespaces/IBatisNet.DataMapper.Configuration.Alias/
namespaces/IBatisNet.DataMapper.Configuration.Cache.Fifo/
namespaces/IBatisNet.DataMapper.Configuration.Cache.Lru/
namespaces/IBatisNet.DataMapper.Configuration.Cache.Memory/
namespaces/IBatisNet.DataMapper.Configuration.Cache/
namespaces/IBatisNet.DataMapper.Configuration.ParameterMapping/
namespaces/IBatisNet.DataMapper.Configuration.ResultMapping/
namespaces/IBatisNet.DataMapper.Configuration.Sql.Dynamic.Elements/
namespaces/IBatisNet.DataMapper.Configuration.Sql.Dynamic.Handlers/
namespaces/IBatisNet.DataMapper.Configuration.Sql.Dynamic/
namespaces/IBatisNet.DataMapper.Configuration.Sql.SimpleDynamic/
namespaces/IBatisNet.DataMapper.Configuration.Sql.Static/
namespaces/IBatisNet.DataMapper.Configuration.Sql/
namespaces/IBatisNet.DataMapper.Configuration.Statements/
namespaces/IBatisNet.DataMapper.Configuration/
namespaces/IBatisNet.DataMapper.Exceptions/
namespaces/IBatisNet.DataMapper.MappedStatements/
namespaces/IBatisNet.DataMapper.Scope/
namespaces/IBatisNet.DataMapper.SessionContainer/
namespaces/IBatisNet.DataMapper.TypeHandlers/
namespaces/IBatisNet.DataMapper/
Added: incubator/ibatis/trunk/cs/mapper/CloverReport/files/Utilities/ConfigWatcherHandler.html
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/CloverReport/files/Utilities/ConfigWatcherHandler.html?rev=171220&view=auto
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/CloverReport/files/Utilities/ConfigWatcherHandler.html (added)
+++ incubator/ibatis/trunk/cs/mapper/CloverReport/files/Utilities/ConfigWatcherHandler.html Sat May 21 08:05:06 2005
@@ -0,0 +1,2073 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>Coverage</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+ <link rel="stylesheet" type="text/css" href="../../style.css"/>
+ <link rel="stylesheet" type="text/css" href="../../print.css" media="print"/>
+ </head>
+ <body>
+ <table class="coverageTable" cellspacing="0" cellpadding="2">
+ <tr><td class="reportHeader" colspan="6">
+ <table width="100%">
+ <tr><td valign="top">
+ <h1 class="titleText">
+ Clover.NET coverage report -
+ Coverage
+ </h1>
+ <p class="timestamp">
+ <span class="heading">Coverage timestamp:</span> Friday, May 20, 2005 9:17:00 PM
+ </p>
+ <p class="navBar">
+ <a class="navBarModeLink" href="../../overview.html">Overview</a>
+
+ <a class="navBarModeLink" href="../../namespaces/IBatisNet.Common.Utilities/ns-summary.html">Namespace</a>
+
+ <span class="navBarCurrent">File</span>
+ </p>
+ <p class="navBar">
+
+ <a class="navBarLink" href="../../index.html" target="_top">FRAMES</a>
+ <a class="navBarLink" href="../../files/Utilities/ConfigWatcherHandler.html" target="_top">NO FRAMES</a>
+ </p>
+
+ </td><td align="right" valign="top" class="stats">
+ <table cellpadding="1">
+ <tr>
+ <td rowspan="3" valign="top">File Stats:</td>
+ <td align="right">LOC:</td>
+ <td align="right">213</td>
+ <td rowspan="3"> </td>
+ <td align="right">Methods:</td>
+ <td align="right">5</td>
+ </tr>
+ <tr>
+ <td align="right">NCLOC:</td>
+ <td align="right">78</td>
+ <td align="right">Classes:</td>
+ <td align="right">2</td>
+ </tr>
+ </table>
+ </td></tr>
+ </table>
+</td></tr>
+
+
+ <tr><td class="hbreak" colspan="6"> </td></tr>
+
+ <tr>
+ <td class="graphHeaderLeft">Source File</td>
+ <td class="graphHeader">Conditionals</td>
+ <td class="graphHeader">Statements</td>
+ <td class="graphHeader">Methods</td>
+ <td class="graphBarHeader" colspan="2">TOTAL</td>
+ </tr>
+ <tr>
+ <td class="graphItem">
+ Utilities\ConfigWatcherHandler.cs
+ </td>
+
+ <td class="graphPercent">50.0 %</td>
+ <td class="graphPercent">76.0 %</td>
+ <td class="graphPercent">60.0 %</td>
+ <td class="graphBarLeft">68.4 %</td>
+ <td class="graphBar">
+ <table cellspacing="0" cellpadding="0">
+ <tr>
+ <td class="covered"><img alt="coverage" src="../../img/green.gif"
+ width="136" height="12"/></td>
+ <td class="uncovered"><img alt="coverage" src="../../img/red.gif"
+ width="64" height="12"/></td>
+ </tr>
+ </table>
+ </td>
+ </tr> </table>
+
+ <table cellspacing="0" cellpadding="0" class="srcView">
+ <tr>
+ <td class="lineNumber">
+ 1
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 2
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="ppdirec">#region Apache Notice</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 3
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment">/*****************************************************************************</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 4
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * $Header: $</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 5
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * $Revision: $</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 6
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * $Date: $</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 7
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * </span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 8
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * iBATIS.NET Data Mapper</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 9
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * Copyright (C) 2004 - Gilles Bayon</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 10
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * </span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 11
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * </span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 12
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * Licensed under the Apache License, Version 2.0 (the "License");</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 13
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * you may not use this file except in compliance with the License.</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 14
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * You may obtain a copy of the License at</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 15
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * </span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 16
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * http://www.apache.org/licenses/LICENSE-2.0</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 17
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * </span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 18
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * Unless required by applicable law or agreed to in writing, software</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 19
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * distributed under the License is distributed on an "AS IS" BASIS,</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 20
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 21
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * See the License for the specific language governing permissions and</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 22
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * limitations under the License.</span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 23
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> * </span></span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 24
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="blockComment"> ********************************************************************************/</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 25
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="ppdirec">#endregion</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 26
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 27
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="keyword">using</span> System;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 28
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="keyword">using</span> System.Collections;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 29
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="keyword">using</span> System.IO;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 30
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="keyword">using</span> System.Threading;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 31
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 32
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="keyword">using</span> log4net;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 33
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 34
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"><span class="keyword">namespace</span> IBatisNet.Common.Utilities
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 35
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">{
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 36
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 37
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 38
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Represents the method that handles calls from Configure.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 39
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 40
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 41
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">obj is a null object in a DaoManager context.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 42
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">obj is the reconfigured sqlMap in a SqlMap context.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 43
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 44
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">public</span> <span class="keyword">delegate</span> <span class="keyword">void</span> ConfigureHandler(<span class="keyword">object</span> obj);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 45
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 46
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 47
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 48
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 49
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">public</span> <span class="keyword">struct</span> StateConfig
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 50
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 51
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 52
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Master Config File name.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 53
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 54
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">public</span> <span class="keyword">string</span> fileName;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 55
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 56
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Delegate called when a file is changed, use it to rebuild.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 57
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 58
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">public</span> ConfigureHandler configureHandler;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 59
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 60
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 61
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 62
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Class used to watch config files.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 63
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 64
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 65
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Uses the </span><see cref="FileSystemWatcher"/> <span class="docContent">to monitor</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 66
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">changes to a specified file. Because multiple change notifications</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 67
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">may be raised when the file is modified, a timer is used to</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 68
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">compress the notifications into a single event. The timer</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 69
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">waits for </span><see cref="TimoutMillis"/> <span class="docContent">time before delivering</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 70
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">the event notification. If any further </span><see cref="FileSystemWatcher"/></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 71
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">change notifications arrive while the timer is waiting it</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 72
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">is reset and waits again for </span><see cref="TimoutMillis"/> <span class="docContent">to</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 73
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">elaps.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 74
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 75
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">public</span> <span class="keyword">sealed</span> <span class="keyword">class</span> ConfigWatcherHandler
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 76
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 77
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="ppdirec">#region Fields</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 78
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">readonly</span> ILog _logger = LogManager.GetLogger( System.Reflection.MethodBase.GetCurrentMethod().DeclaringType );
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 79
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 80
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 81
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">The timer used to compress the notification events.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 82
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 83
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">private</span> Timer _timer = <span class="keyword">null</span>;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 84
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 85
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 86
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">A list of configuration files to watch.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 87
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 88
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">private</span> <span class="keyword">static</span> ArrayList _filesToWatch = <span class="keyword">new</span> ArrayList();
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 89
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 90
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 91
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">The list of FileSystemWatcher.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 92
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 93
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">private</span> <span class="keyword">static</span> ArrayList _filesWatcher = <span class="keyword">new</span> ArrayList();
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 94
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 95
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 96
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">The default amount of time to wait after receiving notification</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 97
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">before reloading the config file.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 98
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 99
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="keyword">private</span> <span class="keyword">const</span> <span class="keyword">int</span> TimoutMillis = 500;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 100
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="ppdirec">#endregion</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 101
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 102
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="ppdirec">#region Constructor (s) / Destructor</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 103
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 104
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">///<span class="docContent">-</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 105
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 106
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="state"></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 107
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Represent the call context of the SqlMap or DaoManager ConfigureAndWatch method call.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 108
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 109
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="onWhatchedFileChange"></param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 110
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 110: Constructor ConfigWatcherHandler entered 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 110: Constructor ConfigWatcherHandler entered 170 times."> <span class="keyword">public</span> ConfigWatcherHandler(TimerCallback onWhatchedFileChange, StateConfig state)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 111
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 110: Constructor ConfigWatcherHandler entered 170 times."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 112
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 112: Expression evaluated to true 170 times, false 170 times.">340</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Expression evaluated to true 170 times, false 170 times."> <span class="keyword">for</span>(<span class="keyword">int</span> index = 0; index < _filesToWatch.Count; index++)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 113
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 114
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 114: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 114: Statement executed 170 times."> FileInfo configFile = (FileInfo)_filesToWatch[index];
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 115
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 116
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> <span class="lineComment">// Create a new FileSystemWatcher and set its properties.</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 117
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 117: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 117: Statement executed 170 times."> FileSystemWatcher watcher = <span class="keyword">new</span> FileSystemWatcher();
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 118
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 119
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 119: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 119: Statement executed 170 times."> watcher.Path = configFile.DirectoryName;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 120
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 120: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 120: Statement executed 170 times."> watcher.Filter = configFile.Name;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 121
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 122
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> <span class="lineComment">// Set the notification filters</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 123
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 123: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 123: Statement executed 170 times."> watcher.NotifyFilter = NotifyFilters.CreationTime | NotifyFilters.LastWrite | NotifyFilters.FileName;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 124
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 125
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> <span class="lineComment">// Add event handlers. OnChanged will do for all event handlers that fire a FileSystemEventArgs</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 126
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 126: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 126: Statement executed 170 times."> watcher.Changed += <span class="keyword">new</span> FileSystemEventHandler(ConfigWatcherHandler_OnChanged);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 127
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 127: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 127: Statement executed 170 times."> watcher.Created += <span class="keyword">new</span> FileSystemEventHandler(ConfigWatcherHandler_OnChanged);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 128
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 128: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 128: Statement executed 170 times."> watcher.Deleted += <span class="keyword">new</span> FileSystemEventHandler(ConfigWatcherHandler_OnChanged);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 129
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 129: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 129: Statement executed 170 times."> watcher.Renamed += <span class="keyword">new</span> RenamedEventHandler(ConfigWatcherHandler_OnRenamed);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 130
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 131
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> <span class="lineComment">// Begin watching.</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 132
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 132: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 132: Statement executed 170 times."> watcher.EnableRaisingEvents = <span class="keyword">true</span>;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 133
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 134
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 134: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 134: Statement executed 170 times."> _filesWatcher.Add( watcher );
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 135
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 136
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> <span class="lineComment">// Create the timer that will be used to deliver events. Set as disabled</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 137
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 137: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 137: Statement executed 170 times."> _timer = <span class="keyword">new</span> Timer(onWhatchedFileChange, state, Timeout.Infinite, Timeout.Infinite);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 138
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 112: Statement executed 170 times."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 139
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 110: Constructor ConfigWatcherHandler entered 170 times."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 140
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="ppdirec">#endregion</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 141
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 142
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="ppdirec">#region Methods</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 143
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 144
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Add a file to be monitored.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 145
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 146
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="configFile"></param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 147
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 147: Method AddFileToWatch entered 2040 times.">2040</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 147: Method AddFileToWatch entered 2040 times."> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> AddFileToWatch(FileInfo configFile)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 148
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 147: Method AddFileToWatch entered 2040 times."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 149
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 149: Statement executed 2040 times.">2040</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 149: Statement executed 2040 times."> _filesToWatch.Add( configFile );
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 150
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 147: Method AddFileToWatch entered 2040 times."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 151
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 152
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 153
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 154
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Reset the list of files being monitored.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 155
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 156
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 156: Method ClearFilesMonitored entered 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 156: Method ClearFilesMonitored entered 170 times."> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> ClearFilesMonitored()
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 157
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 156: Method ClearFilesMonitored entered 170 times."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 158
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 158: Statement executed 170 times.">170</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 158: Statement executed 170 times."> _filesToWatch.Clear();
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 159
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 156: Method ClearFilesMonitored entered 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 160
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 156: Method ClearFilesMonitored entered 170 times."> <span class="lineComment">// Kill all FileSystemWatcher</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 161
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 161: Expression evaluated to true 14365 times, false 170 times.">14535</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 161: Expression evaluated to true 14365 times, false 170 times."> <span class="keyword">for</span>(<span class="keyword">int</span> index = 0; index < _filesWatcher.Count; index++)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 162
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 161: Statement executed 170 times."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 163
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 163: Statement executed 14365 times.">14365</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 163: Statement executed 14365 times."> FileSystemWatcher fileWatcher = (FileSystemWatcher)_filesWatcher[index];
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 164
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 161: Statement executed 170 times.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 165
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 165: Statement executed 14365 times.">14365</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 165: Statement executed 14365 times."> fileWatcher.EnableRaisingEvents = <span class="keyword">false</span>;
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 166
+ </td>
+ <td class="coverageCountHilight">
+ <a title="Line 166: Statement executed 14365 times.">14365</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 166: Statement executed 14365 times."> fileWatcher.Dispose();
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 167
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 161: Statement executed 170 times."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 168
+ </td>
+ <td class="coverageCountHilight"> </td>
+ <td class="srcCell">
+ <span class="srcLine" title="Line 156: Method ClearFilesMonitored entered 170 times."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 169
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 170
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 171
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Event handler used by </span><see cref="ConfigWatcherHandler"/><span class="docContent">.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 172
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 173
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="source"><span class="docContent">The </span><see cref="FileSystemWatcher"/> <span class="docContent">firing the event.</span></param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 174
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="e"><span class="docContent">The argument indicates the file that caused the event to be fired.</span></param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 175
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 176
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">This handler reloads the configuration from the file when the event is fired.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 177
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 178
+ </td>
+ <td class="coverageCountWarning">
+ <a title="Line 178: Method ConfigWatcherHandler_OnChanged not entered.">0</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> <span class="keyword">private</span> <span class="keyword">void</span> ConfigWatcherHandler_OnChanged(<span class="keyword">object</span> source, FileSystemEventArgs e)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 179
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 180
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> <span class="keyword">if</span> (_logger.IsDebugEnabled)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 181
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 182
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> _logger.Debug(<span class="string">"ConfigWatcherHandler : "</span>+e.ChangeType+<span class="string">" ["</span> + e.Name + <span class="string">"]"</span>);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 183
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 184
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered.">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 185
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> <span class="lineComment">// Deliver the event in TimoutMillis time</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 186
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> <span class="lineComment">// timer will fire only once</span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 187
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> _timer.Change(TimoutMillis, Timeout.Infinite);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 188
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 178: Method ConfigWatcherHandler_OnChanged not entered."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 189
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine">
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 190
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 191
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">Event handler used by </span><see cref="ConfigWatcherHandler"/><span class="docContent">.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 192
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </summary></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 193
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="source"><span class="docContent">The </span><see cref="FileSystemWatcher"/> <span class="docContent">firing the event.</span></param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 194
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <param name="e"><span class="docContent">The argument indicates the file that caused the event to be fired.</span></param></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 195
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 196
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// <span class="docContent">This handler reloads the configuration from the file when the event is fired.</span></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumber">
+ 197
+ </td>
+ <td class="coverageCount"> </td>
+ <td class="srcCell">
+ <span class="srcLine"> <span class="docComment">/// </remarks></span>
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 198
+ </td>
+ <td class="coverageCountWarning">
+ <a title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered.">0</a>
+ </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered."> <span class="keyword">private</span> <span class="keyword">void</span> ConfigWatcherHandler_OnRenamed(<span class="keyword">object</span> source, RenamedEventArgs e)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 199
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 200
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered."> <span class="keyword">if</span> (_logger.IsDebugEnabled)
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 201
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered."> {
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 202
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered."> _logger.Debug(<span class="string">"ConfigWatcherHandler : "</span> + e.ChangeType + <span class="string">" ["</span> + e.OldName + <span class="string">"/"</span> +e.Name +<span class="string">"]"</span>);
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 203
+ </td>
+ <td class="coverageCountWarning"> </td>
+ <td class="srcCell">
+ <span class="srcLineWarning" title="Line 198: Method ConfigWatcherHandler_OnRenamed not entered."> }
</span>
+ </td>
+ </tr>
+ <tr>
+ <td class="lineNumberHilight">
+ 204
+ </td>
+ <td class="coverageCountWarning"> </td>
[... 108 lines stripped ...]