Class ConstantMap
- java.lang.Object
-
- org.openjdk.jmc.flightrecorder.internal.parser.v0.ConstantMap
-
class ConstantMap extends java.lang.Object
A map of objectId->object where each objectId can map to several values, each associated with a timestamp.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
ConstantMap.Key
Same as java.lang.Long, butvalue
can be modified so a lookup instance can be reused and object creation avoidedprivate class
ConstantMap.Reference
-
Field Summary
Fields Modifier and Type Field Description private boolean
allConstantsLoaded
private IPoolFactory<?>
factory
private DataType
keyType
private ConstantMap.Key
lookupKey
private java.util.Map<ConstantMap.Key,ConstantEntryList>
map
private IValueReader
valueReader
-
Constructor Summary
Constructors Constructor Description ConstantMap()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) java.lang.Object
get(long valueId, long atTimestamp)
Returns one of the values identified byvalueId
.(package private) ContentType<?>
getContentType()
private ConstantEntryList
getEntryList(long valueId)
(package private) void
init(IValueReader valueReader, DataType keyType, IPoolFactory<?> factory)
private void
put(long valueId, java.lang.Object value, long timestamp)
(package private) void
readValue(byte[] data, Offset offset, long timestamp)
(package private) static java.lang.Object
resolve(java.lang.Object o, long atTimestamp)
(package private) void
setLoadDone()
(package private) void
touchAll()
-
-
-
Field Detail
-
map
private final java.util.Map<ConstantMap.Key,ConstantEntryList> map
-
allConstantsLoaded
private boolean allConstantsLoaded
-
factory
private IPoolFactory<?> factory
-
lookupKey
private final ConstantMap.Key lookupKey
-
valueReader
private IValueReader valueReader
-
keyType
private DataType keyType
-
-
Method Detail
-
init
void init(IValueReader valueReader, DataType keyType, IPoolFactory<?> factory)
-
setLoadDone
void setLoadDone() throws InvalidJfrFileException
- Throws:
InvalidJfrFileException
-
touchAll
void touchAll()
-
readValue
void readValue(byte[] data, Offset offset, long timestamp) throws InvalidJfrFileException
- Throws:
InvalidJfrFileException
-
put
private void put(long valueId, java.lang.Object value, long timestamp)
-
getContentType
ContentType<?> getContentType()
-
get
java.lang.Object get(long valueId, long atTimestamp)
Returns one of the values identified byvalueId
. The value returned is the value associated with the smallest timestamp larger than or equals toatTimestamp
. If the map doesn't contain a value identified byvalueId
, a dummy object may be returned.
-
getEntryList
private ConstantEntryList getEntryList(long valueId)
-
resolve
static java.lang.Object resolve(java.lang.Object o, long atTimestamp)
-
-