public final class FlightRecordingLoader
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private static byte[] |
FLIGHT_RECORDER_MAGIC |
private static java.util.logging.Logger |
LOGGER |
private static int |
MIN_MEMORY_PER_THREAD |
private static java.lang.String |
SINGLE_THREADED_PARSER_PROPERTY_KEY |
private static short |
VERSION_0 |
private static short |
VERSION_1 |
private static short |
VERSION_2 |
Constructor and Description |
---|
FlightRecordingLoader() |
Modifier and Type | Method and Description |
---|---|
private static Chunk |
createChunkInput(java.io.DataInput input,
int firstByte,
byte[] reusableBuffer) |
private static IChunkLoader |
createChunkLoader(IChunkSupplier chunkSupplier,
LoaderContext context,
byte[] buffer,
boolean ignoreTruncatedChunk) |
static IChunkSupplier |
createChunkSupplier(java.io.InputStream input) |
static IChunkSupplier |
createChunkSupplier(java.io.RandomAccessFile input) |
static IChunkSupplier |
createChunkSupplier(java.io.RandomAccessFile input,
java.util.Collection<ChunkInfo> chunks) |
private static ChunkInfo |
getChunkInfo(Chunk nextChunk,
long nextChunkPos) |
static EventArrays |
loadStream(java.io.InputStream stream,
boolean hideExperimentals,
boolean ignoreTruncatedChunk) |
static EventArrays |
loadStream(java.io.InputStream stream,
java.util.List<? extends IParserExtension> extensions,
boolean hideExperimentals,
boolean ignoreTruncatedChunk)
Read events from an input stream of JFR data.
|
static java.util.List<ChunkInfo> |
readChunkInfo(IChunkSupplier chunkSupplier) |
static EventArrays |
readChunks(java.lang.Runnable monitor,
IChunkSupplier chunkSupplier,
boolean hideExperimentals,
boolean ignoreTruncatedChunk) |
static EventArrays |
readChunks(java.lang.Runnable monitor,
java.util.List<? extends IParserExtension> extensions,
IChunkSupplier chunkSupplier,
boolean hideExperimentals,
boolean ignoreTruncatedChunk) |
private static void |
sendProgress(java.lang.Runnable listener) |
private static final java.util.logging.Logger LOGGER
private static final java.lang.String SINGLE_THREADED_PARSER_PROPERTY_KEY
private static final int MIN_MEMORY_PER_THREAD
private static final short VERSION_0
private static final short VERSION_1
private static final short VERSION_2
private static final byte[] FLIGHT_RECORDER_MAGIC
public static EventArrays loadStream(java.io.InputStream stream, boolean hideExperimentals, boolean ignoreTruncatedChunk) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
public static EventArrays loadStream(java.io.InputStream stream, java.util.List<? extends IParserExtension> extensions, boolean hideExperimentals, boolean ignoreTruncatedChunk) throws CouldNotLoadRecordingException, java.io.IOException
stream
- input streamextensions
- the extensions to use when parsing the datahideExperimentals
- if true
, then events of types marked as experimental will be ignored when
reading the dataCouldNotLoadRecordingException
java.io.IOException
public static IChunkSupplier createChunkSupplier(java.io.InputStream input) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
public static IChunkSupplier createChunkSupplier(java.io.RandomAccessFile input) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
public static IChunkSupplier createChunkSupplier(java.io.RandomAccessFile input, java.util.Collection<ChunkInfo> chunks) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
private static Chunk createChunkInput(java.io.DataInput input, int firstByte, byte[] reusableBuffer) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
public static java.util.List<ChunkInfo> readChunkInfo(IChunkSupplier chunkSupplier) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
private static ChunkInfo getChunkInfo(Chunk nextChunk, long nextChunkPos) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
public static EventArrays readChunks(java.lang.Runnable monitor, IChunkSupplier chunkSupplier, boolean hideExperimentals, boolean ignoreTruncatedChunk) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
public static EventArrays readChunks(java.lang.Runnable monitor, java.util.List<? extends IParserExtension> extensions, IChunkSupplier chunkSupplier, boolean hideExperimentals, boolean ignoreTruncatedChunk) throws CouldNotLoadRecordingException, java.io.IOException
CouldNotLoadRecordingException
java.io.IOException
private static void sendProgress(java.lang.Runnable listener)
private static IChunkLoader createChunkLoader(IChunkSupplier chunkSupplier, LoaderContext context, byte[] buffer, boolean ignoreTruncatedChunk) throws CouldNotLoadRecordingException, java.io.IOException
chunkSupplier
- chunk data sourcecontext
- loader context that the returned chunk loader will send event data tobuffer
- Initial byte array to use for storing chunk data. See
IChunkSupplier.getNextChunk(byte[])
.ignoreTruncatedChunk
- if true, then any exceptions caused by getting and reading the next chunk will be
ignored and instead make the method return nullCouldNotLoadRecordingException
java.io.IOException