Package edu.umd.cs.findbugs.util
Class ClassName
- java.lang.Object
-
- edu.umd.cs.findbugs.util.ClassName
-
public abstract class ClassName extends java.lang.ObjectUtility methods for working with class names.- Author:
- David Hovemeyer
-
-
Constructor Summary
Constructors Constructor Description ClassName()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringassertIsDotted(java.lang.String className)static java.lang.StringassertIsSlashed(java.lang.String className)static java.lang.StringextractClassName(java.lang.String originalName)Extract a slashed classname from a JVM classname or signature.static java.lang.StringextractPackageName(java.lang.String className)extract the package name from a dotted class name.static java.lang.StringextractPackagePrefix(java.lang.String packageName, int count)static java.lang.StringextractSimpleName(java.lang.String className)static java.lang.StringfromFieldSignature(java.lang.String signature)Converts from signature to slashed class name (e.g., from Ljava/lang/String; to java/lang/String).static java.lang.StringgetPrimitiveType(java.lang.String cls)static booleanisAnonymous(java.lang.String className)Does a class name appear to designate an anonymous class? Only the name is analyzed.static booleanisMathClass(java.lang.String className)static booleanisValidClassName(java.lang.String className)Return whether or not the given class name is valid.static booleanmatchedPrefixes(java.lang.String[] classSearchStrings, java.lang.String className)static java.lang.StringtoDottedClassName(java.lang.String className)Convert class name to dotted format.static java.lang.StringtoSignature(java.lang.String className)static java.lang.StringtoSlashedClassName(java.lang.Class<?> class1)static java.lang.StringtoSlashedClassName(java.lang.String className)Convert class name to slashed format.
-
-
-
Method Detail
-
isMathClass
public static boolean isMathClass(@SlashedClassName java.lang.String className)
-
assertIsDotted
@DottedClassName public static java.lang.String assertIsDotted(@DottedClassName java.lang.String className)
-
assertIsSlashed
@SlashedClassName public static java.lang.String assertIsSlashed(@SlashedClassName java.lang.String className)
-
toSignature
public static java.lang.String toSignature(@SlashedClassName java.lang.String className)
-
getPrimitiveType
@CheckForNull public static java.lang.String getPrimitiveType(@SlashedClassName java.lang.String cls)
-
fromFieldSignature
@CheckForNull @SlashedClassName public static java.lang.String fromFieldSignature(java.lang.String signature)
Converts from signature to slashed class name (e.g., from Ljava/lang/String; to java/lang/String). Returns null if it is the signature for an array or primitive type.
-
toSlashedClassName
@SlashedClassName public static java.lang.String toSlashedClassName(@SlashedClassName(when=UNKNOWN) java.lang.String className)
Convert class name to slashed format. If the class name is already in slashed format, it is returned unmodified.- Parameters:
className- a class name- Returns:
- the same class name in slashed format
-
toDottedClassName
@DottedClassName public static java.lang.String toDottedClassName(@SlashedClassName(when=UNKNOWN) java.lang.String className)
Convert class name to dotted format. If the class name is already in dotted format, it is returned unmodified.- Parameters:
className- a class name- Returns:
- the same class name in dotted format
-
extractPackageName
@DottedClassName public static java.lang.String extractPackageName(@DottedClassName java.lang.String className)
extract the package name from a dotted class name. Package names are always in dotted format.- Parameters:
className- a dotted class name- Returns:
- the name of the package containing the class
-
extractSimpleName
public static java.lang.String extractSimpleName(@DottedClassName java.lang.String className)
-
isValidClassName
public static boolean isValidClassName(java.lang.String className)
Return whether or not the given class name is valid.- Parameters:
className- a possible class name- Returns:
- true if it's a valid class name, false otherwise
-
isAnonymous
public static boolean isAnonymous(java.lang.String className)
Does a class name appear to designate an anonymous class? Only the name is analyzed. No classes are loaded or looked up.- Parameters:
className- class name, slashed or dotted, fully qualified or unqualified- Returns:
- true if className is the name of an anonymous class
-
extractClassName
@SlashedClassName public static java.lang.String extractClassName(java.lang.String originalName)
Extract a slashed classname from a JVM classname or signature.- Parameters:
originalName- JVM classname or signature- Returns:
- a slashed classname
-
extractPackagePrefix
public static java.lang.String extractPackagePrefix(java.lang.String packageName, int count)
-
matchedPrefixes
public static boolean matchedPrefixes(java.lang.String[] classSearchStrings, @DottedClassName java.lang.String className)
-
toSlashedClassName
@SlashedClassName public static java.lang.String toSlashedClassName(java.lang.Class<?> class1)
-
-