edu.umd.cs.findbugs.model
public class ClassFeatureSet extends Object implements XMLWriteable
Field Summary | |
---|---|
static String | CLASS_NAME_KEY |
static String | CODE_LENGTH_KEY |
static String | ELEMENT_NAME |
static double | EXACT_CLASS_NAME_MATCH
Similarity of classes which don't have enough features to match
exactly, but whose class names match exactly. |
static String | FEATURE_ELEMENT_NAME |
static String | FIELD_NAME_KEY |
static String | METHOD_NAME_KEY |
static int | MIN_CODE_LENGTH
Minimum code length required to add a CodeLength feature. |
static int | MIN_FEATURES
Minimum number of features which must be present in order
to declare two classes similar. |
static double | MIN_MATCH
Minimum similarity required to declare two classes similar. |
Constructor Summary | |
---|---|
ClassFeatureSet()
Constructor.
|
Method Summary | |
---|---|
void | addFeature(String feature) |
Iterator<String> | featureIterator() |
String | getClassName() |
int | getNumFeatures() |
boolean | hasFeature(String feature) |
ClassFeatureSet | initialize(JavaClass javaClass)
Initialize from given JavaClass.
|
boolean | isInterface() |
static boolean | isUnlikelyToBeRenamed(String pkg)
Return true if classes in the given package is unlikely to be renamed:
e.g., because they are part of a public API.
|
static void | main(String[] args) |
void | setClassName(String className) |
void | setInterface(boolean isInterface) |
static double | similarity(ClassFeatureSet a, ClassFeatureSet b) |
boolean | similarTo(ClassFeatureSet other) |
static String | transformClassName(String className)
Transform a class name by stripping its package name.
|
static String | transformMethodSignature(String signature)
Transform a method signature to allow it to be compared even if
any of its parameter types are moved to another package.
|
static String | transformSignature(String signature)
Transform a field or method parameter signature to allow it to be
compared even if it is moved to another package.
|
void | writeXML(XMLOutput xmlOutput) |
Returns: Returns the className.
Parameters: javaClass the JavaClass
Returns: this object
Returns: Returns the isInterface.
Parameters: pkg the package name
Returns: true if classes in the package is unlikely to be renamed
Parameters: className The className to set.
Parameters: isInterface The isInterface to set.
Parameters: className a class name
Returns: the transformed class name
Parameters: signature a method signature
Returns: the transformed signature
Parameters: signature the signature
Returns: the transformed signature