Class ByteBuddyAgent.ProcessProvider.ForCurrentVm.ForJava9CapableVm

java.lang.Object
net.bytebuddy.agent.ByteBuddyAgent.ProcessProvider.ForCurrentVm.ForJava9CapableVm
All Implemented Interfaces:
ByteBuddyAgent.ProcessProvider
Enclosing class:
ByteBuddyAgent.ProcessProvider.ForCurrentVm

protected static class ByteBuddyAgent.ProcessProvider.ForCurrentVm.ForJava9CapableVm extends Object implements ByteBuddyAgent.ProcessProvider
A process provider for a Java 9 capable VM with access to the introduced process API.
  • Field Details

    • current

      private final Method current
      The java.lang.ProcessHandle#current() method.
    • pid

      private final Method pid
      The java.lang.ProcessHandle#pid() method.
  • Constructor Details

    • ForJava9CapableVm

      protected ForJava9CapableVm(Method current, Method pid)
      Creates a new Java 9 capable dispatcher for reading the current process's id.
      Parameters:
      current - The java.lang.ProcessHandle#current() method.
      pid - The java.lang.ProcessHandle#pid() method.
  • Method Details

    • make

      public static ByteBuddyAgent.ProcessProvider make()
      Attempts to create a dispatcher for a Java 9 VM and falls back to a legacy dispatcher if this is not possible.
      Returns:
      A dispatcher for the current VM.
    • resolve

      public String resolve()
      Resolves a process id for the current JVM.
      Specified by:
      resolve in interface ByteBuddyAgent.ProcessProvider
      Returns:
      The resolved process id.