001/* 002 * Cobertura - http://cobertura.sourceforge.net/ 003 * 004 * This file was taken from JavaNCSS 005 * http://www.kclee.com/clemens/java/javancss/ 006 * Copyright (C) 2000 Chr. Clemens Lee <clemens a.t kclee d.o.t com> 007 * 008 * Cobertura is free software; you can redistribute it and/or modify 009 * it under the terms of the GNU General Public License as published 010 * by the Free Software Foundation; either version 2 of the License, 011 * or (at your option) any later version. 012 * 013 * Cobertura is distributed in the hope that it will be useful, but 014 * WITHOUT ANY WARRANTY; without even the implied warranty of 015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 016 * General Public License for more details. 017 * 018 * You should have received a copy of the GNU General Public License 019 * along with Cobertura; if not, write to the Free Software 020 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 021 * USA 022 */ 023 024 025/* 026 * 027 * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING 028 * 029 * WARNING TO COBERTURA DEVELOPERS 030 * 031 * DO NOT MODIFY THIS FILE! 032 * 033 * MODIFY THE FILES UNDER THE JAVANCSS DIRECTORY LOCATED AT THE ROOT OF THE COBERTURA PROJECT. 034 * 035 * FOLLOW THE PROCEDURE FOR MERGING THE LATEST JAVANCSS INTO COBERTURA LOCATED AT 036 * javancss/coberturaREADME.txt 037 * 038 * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING 039 */ 040/* 041Copyright (C) 2000 Chr. Clemens Lee <clemens@kclee.com>. 042 043This file is part of JavaNCSS 044(http://www.kclee.com/clemens/java/javancss/). 045 046JavaNCSS is free software; you can redistribute it and/or modify it 047under the terms of the GNU General Public License as published by the 048Free Software Foundation; either version 2, or (at your option) any 049later version. 050 051JavaNCSS is distributed in the hope that it will be useful, but WITHOUT 052ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 053FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 054for more details. 055 056You should have received a copy of the GNU General Public License 057along with JavaNCSS; see the file COPYING. If not, write to 058the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 059Boston, MA 02111-1307, USA. */ 060 061package net.sourceforge.cobertura.javancss; 062 063/** 064 * Base data class to store all metrics common to packages, objects and functions. 065 * 066 * @author Herve Boutemy 067 * @version $Id: Metric.java 195 2009-06-23 21:57:59Z hboutemy $ 068 */ 069public abstract class Metric implements Comparable 070{ 071 public String name = "."; 072 /** Non Commenting Source Statements (NCSS). */ 073 public int ncss = 0; 074 public int firstLine = 0; 075 public int javadocs = 0; 076 public int javadocsLn = 0; 077 public int singleLn = 0; 078 public int multiLn = 0; 079 080 public Metric() 081 { 082 super(); 083 } 084 085 public void clear() 086 { 087 name = "."; 088 ncss = 0; 089 javadocs = 0; 090 javadocsLn = 0; 091 singleLn = 0; 092 multiLn = 0; 093 } 094 095 public String toString() { 096 return name; 097 } 098 099 public int compareTo( Object o ) 100 { 101 return name.compareTo( ((Metric)o).name ); 102 } 103 104 public boolean equals( Object o ) 105 { 106 return compareTo( o ) == 0; 107 } 108 109 public int hashCode() 110 { 111 return name.hashCode(); 112 } 113}