Class ClassLeakingRule
- java.lang.Object
-
- org.openjdk.jmc.flightrecorder.rules.jdk.general.ClassLeakingRule
-
- All Implemented Interfaces:
IRule
public class ClassLeakingRule extends Object implements IRule
This rule looks at the loaded classes to try to figure out if multiple classes with the same name has been loaded. Note that this rule can get fairly expensive if you have load events with many (thousands) of unique classes.
-
-
Field Summary
Fields Modifier and Type Field Description static TypedPreference<IQuantity>
ClassLeakingRule_MAX_TIMEOUT
static TypedCollectionResult<ClassEntry>
LOADED_CLASSES
static TypedPreference<IQuantity>
MAX_NUMBER_OF_CLASSES_TO_REPORT
static TypedResult<IMCType>
MOST_LOADED_CLASS
static TypedResult<IQuantity>
MOST_LOADED_CLASS_TIMES
static TypedPreference<IQuantity>
WARNING_LIMIT
-
Constructor Summary
Constructors Constructor Description ClassLeakingRule()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RunnableFuture<IResult>
createEvaluation(IItemCollection items, IPreferenceValueProvider preferenceValueProvider, IResultValueProvider dependencyResults)
Collection<TypedPreference<?>>
getConfigurationAttributes()
String
getId()
String
getName()
Map<String,RulesToolkit.EventAvailability>
getRequiredEvents()
Collection<TypedResult<?>>
getResults()
String
getTopic()
-
-
-
Field Detail
-
WARNING_LIMIT
public static final TypedPreference<IQuantity> WARNING_LIMIT
-
MAX_NUMBER_OF_CLASSES_TO_REPORT
public static final TypedPreference<IQuantity> MAX_NUMBER_OF_CLASSES_TO_REPORT
-
ClassLeakingRule_MAX_TIMEOUT
public static final TypedPreference<IQuantity> ClassLeakingRule_MAX_TIMEOUT
-
LOADED_CLASSES
public static final TypedCollectionResult<ClassEntry> LOADED_CLASSES
-
MOST_LOADED_CLASS
public static final TypedResult<IMCType> MOST_LOADED_CLASS
-
MOST_LOADED_CLASS_TIMES
public static final TypedResult<IQuantity> MOST_LOADED_CLASS_TIMES
-
-
Method Detail
-
getRequiredEvents
public Map<String,RulesToolkit.EventAvailability> getRequiredEvents()
- Specified by:
getRequiredEvents
in interfaceIRule
-
createEvaluation
public RunnableFuture<IResult> createEvaluation(IItemCollection items, IPreferenceValueProvider preferenceValueProvider, IResultValueProvider dependencyResults)
- Specified by:
createEvaluation
in interfaceIRule
-
getConfigurationAttributes
public Collection<TypedPreference<?>> getConfigurationAttributes()
- Specified by:
getConfigurationAttributes
in interfaceIRule
-
getResults
public Collection<TypedResult<?>> getResults()
- Specified by:
getResults
in interfaceIRule
-
-