Package org.openjdk.jmc.common.unit
Class UnitLookup
- java.lang.Object
-
- org.openjdk.jmc.common.unit.UnitLookup
-
public final class UnitLookup extends java.lang.Object
This class is responsible for configuring the different units that are available in Mission Control.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
UnitLookup.LeafContentType<T>
-
Field Summary
-
Constructor Summary
Constructors Constructor Description UnitLookup()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static void
addQuantities(java.util.Collection<ITypedQuantity<LinearUnit>> result, LinearUnit unit, java.lang.Number... numbers)
private static LinearKindOfQuantity
createAddress()
private static ContentType<java.lang.Number>
createCount()
private static ContentType<java.lang.Boolean>
createFlag(java.lang.String id)
private static LinearKindOfQuantity
createFrequency()
private static ContentType<java.lang.Number>
createIdentifier()
private static ContentType<java.lang.Number>
createIndex()
private static ContentType<IMCType>
createJavaTypeContentType(java.lang.String id)
private static LinearKindOfQuantity
createMemory()
private static LinearKindOfQuantity
createNumber()
private static LinearKindOfQuantity
createPercentage()
private static ContentType<java.lang.Long>
createRawLong()
private static ContentType<java.lang.Number>
createRawNumber()
private static ContentType<java.lang.String>
createStringContentType(java.lang.String id)
private static <T> ContentType<T>
createSyntheticContentType(java.lang.String id)
private static LinearKindOfQuantity
createTimespan()
private static TimestampKind
createTimestamp(LinearKindOfQuantity timespan)
private static java.lang.String
formatHexNumber(IQuantity quantity)
static IQuantity
fromDate(java.util.Date timestamp)
static java.util.List<ContentType<?>>
getAllContentTypes()
static ContentType<?>
getContentType(java.lang.String identifier)
static java.util.List<KindOfQuantity<?>>
getKindsOfQuantity()
(package private) static java.util.logging.Logger
getLogger()
static <M extends java.lang.Comparable<? super M>>
RangeContentType<M>getRangeType(ContentType<M> endPointType)
static java.lang.String
getUnitIdentifier(IUnit unit)
static IUnit
getUnitOrDefault(java.lang.String unitIdentifier)
static IUnit
getUnitOrNull(java.lang.String unitIdentifier)
static java.util.Date
toDate(IQuantity timestamp)
-
-
-
Field Detail
-
UNIT_ID_SEPARATOR
private static final java.lang.String UNIT_ID_SEPARATOR
- See Also:
- Constant Field Values
-
MEMORY
public static final LinearKindOfQuantity MEMORY
-
TIMESPAN
public static final LinearKindOfQuantity TIMESPAN
-
COUNT
public static final ContentType<java.lang.Number> COUNT
-
INDEX
public static final ContentType<java.lang.Number> INDEX
-
IDENTIFIER
public static final ContentType<java.lang.Number> IDENTIFIER
-
TIMESTAMP
public static final KindOfQuantity<TimestampUnit> TIMESTAMP
-
PERCENTAGE
public static final LinearKindOfQuantity PERCENTAGE
-
NUMBER
public static final LinearKindOfQuantity NUMBER
-
RAW_NUMBER
public static final ContentType<java.lang.Number> RAW_NUMBER
NOTE: Temporary placeholder for raw numerical values, primitive wrappers. Use sparingly.
-
RAW_LONG
public static final ContentType<java.lang.Long> RAW_LONG
NOTE: Temporary placeholder for raw long values to allow for comparable uses.
-
UNIT
public static final ContentType<IUnit> UNIT
-
UNKNOWN
public static final ContentType<java.lang.Object> UNKNOWN
-
PLAIN_TEXT
public static final ContentType<java.lang.String> PLAIN_TEXT
-
OLD_OBJECT
public static final ContentType<IMCOldObject> OLD_OBJECT
-
OLD_OBJECT_ARRAY
public static final ContentType<IMCOldObjectArray> OLD_OBJECT_ARRAY
-
OLD_OBJECT_FIELD
public static final ContentType<IMCOldObjectField> OLD_OBJECT_FIELD
-
OLD_OBJECT_GC_ROOT
public static final ContentType<IMCOldObjectGcRoot> OLD_OBJECT_GC_ROOT
-
METHOD
public static final ContentType<IMCMethod> METHOD
-
CLASS
public static final ContentType<IMCType> CLASS
-
CLASS_LOADER
public static final ContentType<IMCClassLoader> CLASS_LOADER
-
PACKAGE
public static final ContentType<IMCPackage> PACKAGE
-
MODULE
public static final ContentType<IMCModule> MODULE
-
STACKTRACE
public static final ContentType<IMCStackTrace> STACKTRACE
-
STACKTRACE_FRAME
public static final ContentType<IMCFrame> STACKTRACE_FRAME
-
THREAD
public static final ContentType<IMCThread> THREAD
-
THREAD_GROUP
public static final ContentType<IMCThreadGroup> THREAD_GROUP
-
LABELED_IDENTIFIER
public static final ContentType<LabeledIdentifier> LABELED_IDENTIFIER
-
ADDRESS
public static final LinearKindOfQuantity ADDRESS
-
FREQUENCY
public static final LinearKindOfQuantity FREQUENCY
-
FLAG
public static final ContentType<java.lang.Boolean> FLAG
-
TYPE
public static final ContentType<IType<?>> TYPE
-
EPOCH_MS
public static final TimestampUnit EPOCH_MS
-
EPOCH_NS
public static final TimestampUnit EPOCH_NS
-
EPOCH_S
public static final TimestampUnit EPOCH_S
-
NUMBER_UNITY
public static final LinearUnit NUMBER_UNITY
-
ADDRESS_UNITY
public static final LinearUnit ADDRESS_UNITY
-
PERCENT_UNITY
public static final LinearUnit PERCENT_UNITY
-
PERCENT
public static final LinearUnit PERCENT
-
BYTE
public static final LinearUnit BYTE
-
GIBIBYTE
public static final LinearUnit GIBIBYTE
-
NANOSECOND
public static final LinearUnit NANOSECOND
-
MICROSECOND
public static final LinearUnit MICROSECOND
-
MILLISECOND
public static final LinearUnit MILLISECOND
-
SECOND
public static final LinearUnit SECOND
-
MINUTE
public static final LinearUnit MINUTE
-
HOUR
public static final LinearUnit HOUR
-
DAY
public static final LinearUnit DAY
-
YEAR
public static final LinearUnit YEAR
-
HERTZ
public static final LinearUnit HERTZ
-
NUMERICAL_ATTRIBUTE
public static final IAttribute<java.lang.Number> NUMERICAL_ATTRIBUTE
-
UNIT_ATTRIBUTE
public static final IAttribute<IUnit> UNIT_ATTRIBUTE
-
CONTENT_TYPES
private static final java.util.List<ContentType<?>> CONTENT_TYPES
-
RANGE_CONTENT_TYPES
private static final java.util.Map<java.lang.String,RangeContentType<?>> RANGE_CONTENT_TYPES
-
TIMERANGE
public static final ContentType<IRange<IQuantity>> TIMERANGE
-
-
Method Detail
-
getRangeType
public static <M extends java.lang.Comparable<? super M>> RangeContentType<M> getRangeType(ContentType<M> endPointType)
-
getKindsOfQuantity
public static java.util.List<KindOfQuantity<?>> getKindsOfQuantity()
-
getAllContentTypes
public static java.util.List<ContentType<?>> getAllContentTypes()
-
fromDate
public static IQuantity fromDate(java.util.Date timestamp)
- Parameters:
timestamp
- aDate
instance, ornull
- Returns:
- an
IQuantity
implementation instance, ornull
-
toDate
public static java.util.Date toDate(IQuantity timestamp)
- Parameters:
timestamp
- a timestampIQuantity
, ornull
- Returns:
- a
Date
instance, ornull
- Throws:
java.lang.IllegalArgumentException
- iftimestamp
is not of the timestamp kind
-
getLogger
static java.util.logging.Logger getLogger()
-
createSyntheticContentType
private static <T> ContentType<T> createSyntheticContentType(java.lang.String id)
-
createFlag
private static ContentType<java.lang.Boolean> createFlag(java.lang.String id)
-
createStringContentType
private static ContentType<java.lang.String> createStringContentType(java.lang.String id)
-
createJavaTypeContentType
private static ContentType<IMCType> createJavaTypeContentType(java.lang.String id)
-
createNumber
private static LinearKindOfQuantity createNumber()
-
createAddress
private static LinearKindOfQuantity createAddress()
-
formatHexNumber
private static java.lang.String formatHexNumber(IQuantity quantity)
-
createRawNumber
private static ContentType<java.lang.Number> createRawNumber()
-
createRawLong
private static ContentType<java.lang.Long> createRawLong()
-
createMemory
private static LinearKindOfQuantity createMemory()
-
createFrequency
private static LinearKindOfQuantity createFrequency()
-
addQuantities
private static void addQuantities(java.util.Collection<ITypedQuantity<LinearUnit>> result, LinearUnit unit, java.lang.Number... numbers)
-
createTimespan
private static LinearKindOfQuantity createTimespan()
-
createTimestamp
private static TimestampKind createTimestamp(LinearKindOfQuantity timespan)
-
createPercentage
private static LinearKindOfQuantity createPercentage()
-
createCount
private static ContentType<java.lang.Number> createCount()
-
createIdentifier
private static ContentType<java.lang.Number> createIdentifier()
-
createIndex
private static ContentType<java.lang.Number> createIndex()
-
getUnitIdentifier
public static java.lang.String getUnitIdentifier(IUnit unit)
-
getUnitOrDefault
public static IUnit getUnitOrDefault(java.lang.String unitIdentifier)
-
getUnitOrNull
public static IUnit getUnitOrNull(java.lang.String unitIdentifier)
-
getContentType
public static ContentType<?> getContentType(java.lang.String identifier)
-
-