1 /* 2 Copyright (C) 2000 Chr. Clemens Lee <clemens@kclee.com>. 3 4 This file is part of JavaNCSS 5 (http://www.kclee.com/clemens/java/javancss/). 6 7 JavaNCSS is free software; you can redistribute it and/or modify it 8 under the terms of the GNU General Public License as published by the 9 Free Software Foundation; either version 2, or (at your option) any 10 later version. 11 12 JavaNCSS is distributed in the hope that it will be useful, but WITHOUT 13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15 for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with JavaNCSS; see the file COPYING. If not, write to 19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 20 Boston, MA 02111-1307, USA. */ 21 22 package javancss; 23 24 /** 25 * Base data class to store all metrics common to packages, objects and functions. 26 * 27 * @author Hervé Boutemy 28 * @version $Id: Metric.java 121 2009-01-17 22:19:45Z hboutemy $ 29 */ 30 public abstract class Metric implements Comparable 31 { 32 public String name = "."; 33 /** Non Commenting Source Statements (NCSS). */ 34 public int ncss = 0; 35 public int javadocs = 0; 36 public int javadocsLn = 0; 37 public int singleLn = 0; 38 public int multiLn = 0; 39 40 public Metric() 41 { 42 super(); 43 } 44 45 public void clear() 46 { 47 name = "."; 48 ncss = 0; 49 javadocs = 0; 50 javadocsLn = 0; 51 singleLn = 0; 52 multiLn = 0; 53 } 54 55 public String toString() { 56 return name; 57 } 58 59 public int compareTo( Object o ) 60 { 61 return name.compareTo( ((Metric)o).name ); 62 } 63 64 public boolean equals( Object o ) 65 { 66 return compareTo( o ) == 0; 67 } 68 69 public int hashCode() 70 { 71 return name.hashCode(); 72 } 73 }