KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sourceforge > groboutils > codecoverage > v2 > logger > SingleSourceLogger


1 /*
2  * @(#)SingleSourceLogger.java
3  *
4  * Copyright (C) 2004 Matt Albrecht
5  * groboclown@users.sourceforge.net
6  * http://groboutils.sourceforge.net
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and associated documentation files (the "Software"),
10  * to deal in the Software without restriction, including without limitation
11  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12  * and/or sell copies of the Software, and to permit persons to whom the
13  * Software is furnished to do so, subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be included in
16  * all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24  * DEALINGS IN THE SOFTWARE.
25  */

26
27 package net.sourceforge.groboutils.codecoverage.v2.logger;
28
29 import net.sourceforge.groboutils.codecoverage.v2.IChannelLogger;
30
31
32 /**
33  * Outputs the marks to the owning source.
34  *
35  * @author Matt Albrecht <a HREF="mailto:groboclown@users.sourceforge.net">groboclown@users.sourceforge.net</a>
36  * @version $Date: 2004/05/14 21:12:12 $
37  * @since April 16, 2004
38  */

39 public class SingleSourceLogger implements IChannelLogger
40 {
41     private short channel;
42     private ISingleSource ss;
43     
44     
45     public SingleSourceLogger( short channelIndex, ISingleSource ss )
46     {
47         this.channel = channelIndex;
48         this.ss = ss;
49     }
50     
51     
52     /**
53      * Records a coverage of a marked bytecode instruction. This method should
54      * never throw an exception.
55      *
56      * @param classSignature a signature of the class file being covered.
57      * this signature includes the fully-qualified name of the class,
58      * along with a checksum to uniquely identify it.
59      * @param methodIndex index for a method within the class. The meta-data
60      * store will know how to translate the index to a method signature.
61      * @param markIndex the index of the bytecode instruction mark for this
62      * particular channel.
63      */

64     public void cover( String JavaDoc classSignature, short methodIndex,
65             short markIndex )
66     {
67         if (this.ss != null)
68         {
69             this.ss.cover( this.channel, classSignature, methodIndex,
70                 markIndex );
71         }
72     }
73 }
74
75
Popular Tags