public interface InfoStore
A store of info objects (packages, classes, fields, methods, and annotations).
Modifier and Type | Method and Description |
---|---|
void |
close() |
ClassSource_Aggregate |
getClassSource() |
ClassInfo |
getDelayableClassInfo(java.lang.String name)
Answer (possibly delayed) class info object for a specified class name.
|
java.lang.String |
getHashText()
Answer a print string for the receiver, for use in debugging.
|
InfoStoreFactory |
getInfoStoreFactory() |
PackageInfo |
getPackageInfo(java.lang.String name)
Answer the package info object for a specified package name.
|
long |
getRuleTime()
Answer the total time, in milliseconds, spent doing rule processing.
|
long |
getScanTime()
Answer the total time, in milliseconds, spent scanning classes.
|
long |
getStreamCount()
Answer the number of entries to stream processing.
|
long |
getStreamTime()
Answer the total time, in milliseconds, doing stream processing.
|
java.lang.String |
internClassName(java.lang.String className)
Answer the interned copy of a specified class name.
|
java.lang.String |
internDescription(java.lang.String description)
Answer the interned copy of a specified description.
|
java.lang.String |
internPackageName(java.lang.String packageName)
Answer the interned copy of a specified package name.
|
void |
log(com.ibm.websphere.ras.TraceComponent logger)
Log the receiver to the specified logger.
|
void |
open() |
java.lang.String getHashText()
Answer a print string for the receiver, for use in debugging. The value is guaranteed to be unique during the lifetime of the receiver, and, for frequently created types, will be created on demand.
void log(com.ibm.websphere.ras.TraceComponent logger)
Log the receiver to the specified logger.
logger
- The logger to receive the display of the receiver.InfoStoreFactory getInfoStoreFactory()
ClassSource_Aggregate getClassSource()
void open() throws InfoStoreException
InfoStoreException
void close() throws InfoStoreException
InfoStoreException
java.lang.String internDescription(java.lang.String description)
Answer the interned copy of a specified description.
description
- The string description value which is to be interned.internPackageName(String)
,
internClassName(String)
,
#internQualifiedFieldName(String)
,
#internQualifiedMethodName(String)
java.lang.String internPackageName(java.lang.String packageName)
Answer the interned copy of a specified package name.
packageName
- The package name which is to be interned.internDescription(String)
,
internClassName(String)
,
#internQualifiedFieldName(String)
,
#internQualifiedMethodName(String)
java.lang.String internClassName(java.lang.String className)
Answer the interned copy of a specified class name.
Each store has a string store used to guarantee unique of string values. Maintenance of a string store is necessary because the process of loading class and annotations information does not guarantee identical instances for strings which have the same value, and because collections of related classes tend to produce many of the same string values. For example, the reference of a class to a super type, or to an interface, uses the same string value as the declaration of the super type, or of the interface.
Interning string values leads to dramatically smaller overall string allocations.
className
- The string class name which is to be interned.internDescription(String)
,
#internQualifiedFieldName(String)
,
#internQualifiedMethodName(String)
PackageInfo getPackageInfo(java.lang.String name)
Answer the package info object for a specified package name.
ClassInfo getDelayableClassInfo(java.lang.String name)
Answer (possibly delayed) class info object for a specified class name.
long getStreamCount()
Answer the number of entries to stream processing.
long getStreamTime()
Answer the total time, in milliseconds, doing stream processing.
getRuleTime()
long getScanTime()
Answer the total time, in milliseconds, spent scanning classes.
getRuleTime()
long getRuleTime()
Answer the total time, in milliseconds, spent doing rule processing.
getScanTime()