Class JFRLegacyEventClassGenerator


  • public class JFRLegacyEventClassGenerator
    extends java.lang.Object
    • Field Detail

      • CLASS_NAME_INSTANT_EVENT

        private static final java.lang.String CLASS_NAME_INSTANT_EVENT
        See Also:
        Constant Field Values
      • CLASS_NAME_DURATION_EVENT

        private static final java.lang.String CLASS_NAME_DURATION_EVENT
        See Also:
        Constant Field Values
      • CLASS_NAME_TIMED_EVENT

        private static final java.lang.String CLASS_NAME_TIMED_EVENT
        See Also:
        Constant Field Values
    • Constructor Detail

      • JFRLegacyEventClassGenerator

        public JFRLegacyEventClassGenerator()
    • Method Detail

      • generateEventClass

        public static byte[] generateEventClass​(JFRTransformDescriptor td,
                                                java.lang.Class<?> classBeingRedefined)
                                         throws java.lang.Exception
        Generates an event class.
        Parameters:
        td - the transform descriptor describing the transform.
        Returns:
        returns the byte code for the generated class.
        Throws:
        java.lang.Exception - if the event class could not be generated.
      • createField

        private static void createField​(org.objectweb.asm.ClassWriter cw,
                                        JFRTransformDescriptor td,
                                        Attribute attribute,
                                        org.objectweb.asm.Type type)
      • createField

        private static void createField​(org.objectweb.asm.ClassWriter cw,
                                        JFRTransformDescriptor td,
                                        org.objectweb.asm.Type type)
      • getFieldType

        private static java.lang.String getFieldType​(org.objectweb.asm.Type type)
      • generateInit

        private static void generateInit​(org.objectweb.asm.ClassWriter cw,
                                         java.lang.String className,
                                         java.lang.String parameterizedClassName)
      • generateClinit

        private static void generateClinit​(org.objectweb.asm.ClassWriter cw,
                                           java.lang.String className,
                                           java.lang.String parameterizedClassName)
      • generateTokenField

        private static void generateTokenField​(org.objectweb.asm.ClassWriter cw)
      • generateClassAnnotations

        private static void generateClassAnnotations​(org.objectweb.asm.ClassWriter cw,
                                                     JFRTransformDescriptor td)
      • getEventTypeName

        private static java.lang.String getEventTypeName​(JFRLegacyEventType eventType)