Interface DebuggerPlatformService


public interface DebuggerPlatformService
A service to manage the current mapper for active traces
  • Method Details

    • getCurrentMapperFor

      DebuggerPlatformMapper getCurrentMapperFor(Trace trace)
      Get the current mapper for the given trace
      Parameters:
      trace - the trace
      Returns:
      the mapper, or null
    • getMapper

      DebuggerPlatformMapper getMapper(Trace trace, TraceObject object, long snap)
      Get a mapper applicable to the given object

      If the trace's current mapper is applicable to the object, it will be returned. Otherwise, the service will query the opinions for a new mapper, as in getNewMapper(Trace, TraceObject, long) and set it as the current mapper before returning. If a new mapper is set, the trace is also initialized for that mapper.

      Parameters:
      trace - the trace
      object - the object for which a mapper is desired
      snap - the snap, usually the current snap
      Returns:
      the mapper, or null if no offer was provided
    • getNewMapper

      DebuggerPlatformMapper getNewMapper(Trace trace, TraceObject object, long snap)
      Get a new mapper for the given object, ignoring the trace's current mapper

      This will not replace the trace's current mapper, nor will it initialize the trace for the mapper.

      Parameters:
      trace - the trace
      object - the object for which a mapper is desired
      snap - the snap, usually the current snap
      Returns:
      the mapper, or null if no offer was provided
    • setCurrentMapperFor

      void setCurrentMapperFor(Trace trace, TraceObject focus, DebuggerPlatformMapper mapper, long snap)
      Set the current mapper for the trace and initialize the trace for the mapper
      Parameters:
      trace - the trace whose mapper to assign and initialize
      focus - the object of focus
      mapper - the mapper
      snap - the snap for initializing the trace