1 /*
   2  * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
   3  *
   4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   5  *
   6  * The contents of this file are subject to the terms of either the Universal Permissive License
   7  * v 1.0 as shown at http://oss.oracle.com/licenses/upl
   8  *
   9  * or the following license:
  10  *
  11  * Redistribution and use in source and binary forms, with or without modification, are permitted
  12  * provided that the following conditions are met:
  13  *
  14  * 1. Redistributions of source code must retain the above copyright notice, this list of conditions
  15  * and the following disclaimer.
  16  *
  17  * 2. Redistributions in binary form must reproduce the above copyright notice, this list of
  18  * conditions and the following disclaimer in the documentation and/or other materials provided with
  19  * the distribution.
  20  *
  21  * 3. Neither the name of the copyright holder nor the names of its contributors may be used to
  22  * endorse or promote products derived from this software without specific prior written permission.
  23  *
  24  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
  25  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  26  * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
  27  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  28  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  29  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  30  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
  31  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  32  */
  33 package org.openjdk.jmc.flightrecorder.parser.synthetic;
  34 
  35 import org.openjdk.jmc.flightrecorder.internal.util.JfrInternalConstants;
  36 import org.openjdk.jmc.flightrecorder.jdk.JdkTypeIDs;
  37 
  38 /**
  39  * Contains type IDs for events that are produced by JDK 7 and 8.
  40  */
  41 @SuppressWarnings({"nls", "unused"})
  42 final class JdkTypeIDsPreJdk11 {
  43         /**
  44          * The prefix used for JDK 11 and later
  45          */
  46         private final static String PREFIX = "jdk.";
  47 
  48         /**
  49          * The prefix used for JDK 9 and 10.
  50          */
  51         private final static String PREFIX_9_10 = "com.oracle.jdk.";
  52 
  53         /*
  54          * Package scope producer id constants
  55          */
  56         private static final String EVENT_ID_ROOT = "http://www.oracle.com/hotspot/"; //$NON-NLS-1$
  57         private static final String JVM_EVENT_ID_ROOT = EVENT_ID_ROOT + "jvm/"; //$NON-NLS-1$
  58         private static final String JDK_EVENT_ID_ROOT = EVENT_ID_ROOT + "jdk/"; //$NON-NLS-1$
  59         private static final String JFR_INFO_EVENT_ID_ROOT = EVENT_ID_ROOT + "jfr-info/"; //$NON-NLS-1$
  60 
  61         /*
  62          * Unused JDK9 constants
  63          */
  64 
  65         // Runtime
  66         /*
  67          * FIXME: VMError is commented out since the build cannot handle warnings on lines containing
  68          * the text 'error'. Restore when we are sure that the build works with it.
  69          */
  70 //      private final static String VMError = PREFIX_9_10 + "VMError"; // "vm.runtime.vm_error";
  71         private final static String ClassLoaderStatistics = PREFIX_9_10 + "ClassLoaderStatistics"; // "java.statistics.class_loaders";
  72 
  73         // GC
  74         private final static String G1HeapSummary = PREFIX_9_10 + "G1HeapSummary"; // "vm.gc.heap.g1_summary";
  75         private final static String GC_G1MMU = PREFIX_9_10 + "GCG1MMU"; // "vm.gc.detailed.g1_mmu_info";
  76         private final static String PromoteObjectInNewPLAB = PREFIX_9_10 + "PromoteObjectInNewPLAB"; // "vm.gc.detailed.object_promotion_in_new_PLAB";
  77         private final static String PromoteObjectOutsidePLAB = PREFIX_9_10 + "PromoteObjectOutsidePLAB"; // "vm.gc.detailed.object_promotion_outside_PLAB";
  78 
  79         // Compiler
  80         private final static String CompilerInlining = PREFIX_9_10 + "CompilerInlining"; // "vm.compiler.optimization.inlining";
  81 
  82         // OS
  83         private final static String LoadedModules = PREFIX_9_10 + "LoadedModules"; // "vm.runtime.loaded_modules";
  84 
  85         // Flight Recorder
  86         private final static String DumpReason = PREFIX_9_10 + "DumpReason"; // "flight_recorder.dump_reason";
  87 
  88         /*
  89          * JDK8 constants
  90          */
  91         private final static String CPU_LOAD = JVM_EVENT_ID_ROOT + "os/processor/cpu_load";
  92         private final static String EXECUTION_SAMPLE = JVM_EVENT_ID_ROOT + "vm/prof/execution_sample";
  93         private final static String EXECUTION_SAMPLING_INFO_EVENT_ID = JVM_EVENT_ID_ROOT
  94                         + "vm/prof/execution_sampling_info";
  95         private final static String PROCESSES = JVM_EVENT_ID_ROOT + "os/system_process";
  96         private final static String OS_MEMORY_SUMMARY = JVM_EVENT_ID_ROOT + "os/memory/physical_memory";
  97         private final static String OS_INFORMATION = JVM_EVENT_ID_ROOT + "os/information";
  98         private final static String CPU_INFORMATION = JVM_EVENT_ID_ROOT + "os/processor/cpu_information";
  99         private final static String THREAD_ALLOCATION_STATISTICS = JVM_EVENT_ID_ROOT + "java/statistics/thread_allocation";
 100         private final static String HEAP_CONF = JVM_EVENT_ID_ROOT + "vm/gc/configuration/heap";
 101         private final static String GC_CONF = JVM_EVENT_ID_ROOT + "vm/gc/configuration/gc";
 102         private final static String HEAP_SUMMARY = JVM_EVENT_ID_ROOT + "vm/gc/heap/summary";
 103         final static String ALLOC_INSIDE_TLAB = JVM_EVENT_ID_ROOT + "java/object_alloc_in_new_TLAB";
 104         final static String ALLOC_OUTSIDE_TLAB = JVM_EVENT_ID_ROOT + "java/object_alloc_outside_TLAB";
 105         private final static String VM_INFO = JVM_EVENT_ID_ROOT + "vm/info";
 106         private final static String CLASS_LOAD = JVM_EVENT_ID_ROOT + "vm/class/load";
 107         private final static String CLASS_UNLOAD = JVM_EVENT_ID_ROOT + "vm/class/unload";
 108         private final static String CLASS_LOAD_STATISTICS = JVM_EVENT_ID_ROOT + "java/statistics/class_loading";
 109         final static String COMPILATION = JVM_EVENT_ID_ROOT + "vm/compiler/compilation";
 110 
 111         private final static String FILE_WRITE = JDK_EVENT_ID_ROOT + "java/file_write";
 112         private final static String FILE_READ = JDK_EVENT_ID_ROOT + "java/file_read";
 113         private final static String SOCKET_WRITE = JDK_EVENT_ID_ROOT + "java/socket_write";
 114         private final static String SOCKET_READ = JDK_EVENT_ID_ROOT + "java/socket_read";
 115 
 116         final static String THREAD_PARK = JVM_EVENT_ID_ROOT + "java/thread_park";
 117         private final static String THREAD_SLEEP = JVM_EVENT_ID_ROOT + "java/thread_sleep";
 118         final static String MONITOR_ENTER = JVM_EVENT_ID_ROOT + "java/monitor_enter";
 119         final static String MONITOR_WAIT = JVM_EVENT_ID_ROOT + "java/monitor_wait";
 120 
 121         private final static String METASPACE_OOM = JVM_EVENT_ID_ROOT + "vm/gc/metaspace/out_of_memory";
 122 
 123         private final static String CODE_CACHE_FULL = JVM_EVENT_ID_ROOT + "vm/code_cache/full";
 124         final static String CODE_CACHE_STATISTICS = JVM_EVENT_ID_ROOT + "vm/code_cache/stats";
 125 
 126         private final static String CODE_SWEEPER_STATISTICS = JVM_EVENT_ID_ROOT + "vm/code_sweeper/stats";
 127         final static String SWEEP_CODE_CACHE = JVM_EVENT_ID_ROOT + "vm/code_sweeper/sweep";
 128 
 129         private final static String ENVIRONMENT_VARIABLE = JVM_EVENT_ID_ROOT + "os/initial_environment_variable";
 130         private final static String SYSTEM_PROPERTIES = JVM_EVENT_ID_ROOT + "vm/initial_system_property";
 131 
 132         final static String OBJECT_COUNT = JVM_EVENT_ID_ROOT + "vm/gc/detailed/object_count";
 133         private final static String GC_REFERENCE_STATISTICS = JVM_EVENT_ID_ROOT + "vm/gc/reference/statistics";
 134 
 135         private final static String OLD_OBJECT_SAMPLE = JVM_EVENT_ID_ROOT + "java/old_object";
 136 
 137         private final static String GC_PAUSE_L3 = JVM_EVENT_ID_ROOT + "vm/gc/phases/pause_level_3";
 138         private final static String GC_PAUSE_L2 = JVM_EVENT_ID_ROOT + "vm/gc/phases/pause_level_2";
 139         private final static String GC_PAUSE_L1 = JVM_EVENT_ID_ROOT + "vm/gc/phases/pause_level_1";
 140         private final static String GC_PAUSE = JVM_EVENT_ID_ROOT + "vm/gc/phases/pause";
 141 
 142         private final static String METASPACE_SUMMARY = JVM_EVENT_ID_ROOT + "vm/gc/heap/metaspace_summary";
 143         private final static String GARBAGE_COLLECTION = JVM_EVENT_ID_ROOT + "vm/gc/collector/garbage_collection";
 144         private final static String CONCURRENT_MODE_FAILURE = JVM_EVENT_ID_ROOT + "vm/gc/detailed/concurrent_mode_failure";
 145 
 146         private final static String THROWABLES_STATISTICS = JDK_EVENT_ID_ROOT + "java/statistics/throwables";
 147         private final static String ERRORS_THROWN = JDK_EVENT_ID_ROOT + "java/error_throw";
 148         private final static String EXCEPTIONS_THROWN = JDK_EVENT_ID_ROOT + "java/exception_throw";
 149 
 150         private final static String COMPILER_STATS = JVM_EVENT_ID_ROOT + "vm/compiler/stats";
 151         final static String COMPILER_FAILURE = JVM_EVENT_ID_ROOT + "vm/compiler/failure";
 152 
 153         private final static String ULONG_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/ulong";
 154         private final static String BOOLEAN_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/boolean";
 155         private final static String STRING_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/string";
 156         private final static String DOUBLE_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/double";
 157         private final static String LONG_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/long";
 158         private final static String INT_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/int";
 159         private final static String UINT_FLAG = JVM_EVENT_ID_ROOT + "vm/flag/uint";
 160 
 161         final static String ULONG_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/ulong_changed";
 162         final static String BOOLEAN_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/boolean_changed";
 163         final static String STRING_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/string_changed";
 164         final static String DOUBLE_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/double_changed";
 165         final static String LONG_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/long_changed";
 166         final static String INT_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/int_changed";
 167         final static String UINT_FLAG_CHANGED = JVM_EVENT_ID_ROOT + "vm/flag/uint_changed";
 168 
 169         private final static String TIME_CONVERSION = JVM_EVENT_ID_ROOT + "os/processor/cpu_tsc";
 170         private final static String THREAD_DUMP = JVM_EVENT_ID_ROOT + "vm/runtime/thread_dump";
 171 
 172         private final static String GC_CONF_YOUNG_GENERATION = JVM_EVENT_ID_ROOT + "vm/gc/configuration/young_generation";
 173         private final static String GC_CONF_SURVIVOR = JVM_EVENT_ID_ROOT + "vm/gc/configuration/survivor";
 174         private final static String GC_CONF_TLAB = JVM_EVENT_ID_ROOT + "vm/gc/configuration/tlab";
 175 
 176         private final static String JAVA_THREAD_START = JVM_EVENT_ID_ROOT + "java/thread_start";
 177         private final static String JAVA_THREAD_END = JVM_EVENT_ID_ROOT + "java/thread_end";
 178         private final static String VM_OPERATIONS = JVM_EVENT_ID_ROOT + "vm/runtime/execute_vm_operation";
 179 
 180         private final static String THREAD_STATISTICS = JVM_EVENT_ID_ROOT + "java/statistics/threads";
 181         private final static String CONTEXT_SWITCH_RATE = JVM_EVENT_ID_ROOT + "os/processor/context_switch_rate";
 182 
 183         private final static String COMPILER_CONFIG = JVM_EVENT_ID_ROOT + "vm/compiler/config";
 184         private final static String CODE_CACHE_CONFIG = JVM_EVENT_ID_ROOT + "vm/code_cache/config";
 185         private final static String CODE_SWEEPER_CONFIG = JVM_EVENT_ID_ROOT + "vm/code_sweeper/config";
 186         final static String COMPILER_PHASE = JVM_EVENT_ID_ROOT + "vm/compiler/phase";
 187         private final static String GC_COLLECTOR_G1_GARBAGE_COLLECTION = JVM_EVENT_ID_ROOT
 188                         + "vm/gc/collector/g1_garbage_collection";
 189         private final static String GC_COLLECTOR_OLD_GARBAGE_COLLECTION = JVM_EVENT_ID_ROOT
 190                         + "vm/gc/collector/old_garbage_collection";
 191         private final static String GC_COLLECTOR_PAROLD_GARBAGE_COLLECTION = JVM_EVENT_ID_ROOT
 192                         + "vm/gc/collector/parold_garbage_collection";
 193         private final static String GC_COLLECTOR_YOUNG_GARBAGE_COLLECTION = JVM_EVENT_ID_ROOT
 194                         + "vm/gc/collector/young_garbage_collection";
 195         private final static String GC_DETAILED_ALLOCATION_REQUIRING_GC = JVM_EVENT_ID_ROOT
 196                         + "vm/gc/detailed/allocation_requiring_gc";
 197         private final static String GC_DETAILED_EVACUATION_FAILED = JVM_EVENT_ID_ROOT + "vm/gc/detailed/evacuation_failed";
 198         final static String GC_DETAILED_EVACUATION_INFO = JVM_EVENT_ID_ROOT + "vm/gc/detailed/evacuation_info";
 199         final static String GC_DETAILED_OBJECT_COUNT_AFTER_GC = JVM_EVENT_ID_ROOT + "vm/gc/detailed/object_count_after_gc";
 200         private final static String GC_DETAILED_PROMOTION_FAILED = JVM_EVENT_ID_ROOT + "vm/gc/detailed/promotion_failed";
 201         private final static String GC_HEAP_PS_SUMMARY = JVM_EVENT_ID_ROOT + "vm/gc/heap/ps_summary";
 202         private final static String GC_METASPACE_ALLOCATION_FAILURE = JVM_EVENT_ID_ROOT
 203                         + "vm/gc/metaspace/allocation_failure";
 204         private final static String GC_METASPACE_CHUNK_FREE_LIST_SUMMARY = JVM_EVENT_ID_ROOT
 205                         + "vm/gc/metaspace/chunk_free_list_summary";
 206         private final static String GC_METASPACE_GC_THRESHOLD = JVM_EVENT_ID_ROOT + "vm/gc/metaspace/gc_threshold";
 207 
 208         final static String RECORDINGS = JFR_INFO_EVENT_ID_ROOT + "recordings/recording";
 209         final static String RECORDING_SETTING = JFR_INFO_EVENT_ID_ROOT + "recordings/recording_setting";
 210 
 211         /**
 212          * Determine if a typeId needs to be transformed into a JDK 11 type id.
 213          *
 214          * @param typeId
 215          *            type id
 216          * @return true if transformation is needed, false otherwise.
 217          */
 218         public static boolean needTransform(String typeId) {
 219                 if (typeId.startsWith(PREFIX)) {
 220                         return false;
 221                 }
 222                 return typeId.startsWith(EVENT_ID_ROOT) || typeId.startsWith(PREFIX_9_10);
 223         }
 224 
 225         /**
 226          * Translate a pre-JDK 11 type id into a JDK 11 type id.
 227          *
 228          * @param typeId
 229          *            Pre-JDK 11 type id
 230          * @return JDK 11 type id
 231          */
 232         public static String translate(String typeId) {
 233                 if (typeId.startsWith(PREFIX_9_10)) {
 234                         if (typeId.endsWith("AllocationRequiringGc")) {
 235                                 return JdkTypeIDs.GC_DETAILED_ALLOCATION_REQUIRING_GC;
 236                         }
 237                         if (typeId.endsWith("GCG1MMU")) {
 238                                 return JdkTypeIDs.GC_G1MMU;
 239                         }
 240                         return PREFIX + typeId.substring(PREFIX_9_10.length());
 241                 }
 242                 switch (typeId) {
 243                 case CPU_LOAD:
 244                         return JdkTypeIDs.CPU_LOAD;
 245                 case EXECUTION_SAMPLE:
 246                         return JdkTypeIDs.EXECUTION_SAMPLE;
 247                 case EXECUTION_SAMPLING_INFO_EVENT_ID:
 248                         return JdkTypeIDs.EXECUTION_SAMPLING_INFO_EVENT_ID;
 249                 case PROCESSES:
 250                         return JdkTypeIDs.PROCESSES;
 251                 case OS_MEMORY_SUMMARY:
 252                         return JdkTypeIDs.OS_MEMORY_SUMMARY;
 253                 case OS_INFORMATION:
 254                         return JdkTypeIDs.OS_INFORMATION;
 255                 case CPU_INFORMATION:
 256                         return JdkTypeIDs.CPU_INFORMATION;
 257                 case THREAD_ALLOCATION_STATISTICS:
 258                         return JdkTypeIDs.THREAD_ALLOCATION_STATISTICS;
 259                 case HEAP_CONF:
 260                         return JdkTypeIDs.HEAP_CONF;
 261                 case GC_CONF:
 262                         return JdkTypeIDs.GC_CONF;
 263                 case HEAP_SUMMARY:
 264                         return JdkTypeIDs.HEAP_SUMMARY;
 265                 case ALLOC_INSIDE_TLAB:
 266                         return JdkTypeIDs.ALLOC_INSIDE_TLAB;
 267                 case ALLOC_OUTSIDE_TLAB:
 268                         return JdkTypeIDs.ALLOC_OUTSIDE_TLAB;
 269                 case VM_INFO:
 270                         return JdkTypeIDs.VM_INFO;
 271                 case CLASS_LOAD:
 272                         return JdkTypeIDs.CLASS_LOAD;
 273                 case CLASS_UNLOAD:
 274                         return JdkTypeIDs.CLASS_UNLOAD;
 275                 case CLASS_LOAD_STATISTICS:
 276                         return JdkTypeIDs.CLASS_LOAD_STATISTICS;
 277                 case COMPILATION:
 278                         return JdkTypeIDs.COMPILATION;
 279                 case FILE_WRITE:
 280                         return JdkTypeIDs.FILE_WRITE;
 281                 case FILE_READ:
 282                         return JdkTypeIDs.FILE_READ;
 283                 case SOCKET_WRITE:
 284                         return JdkTypeIDs.SOCKET_WRITE;
 285                 case SOCKET_READ:
 286                         return JdkTypeIDs.SOCKET_READ;
 287                 case THREAD_PARK:
 288                         return JdkTypeIDs.THREAD_PARK;
 289                 case THREAD_SLEEP:
 290                         return JdkTypeIDs.THREAD_SLEEP;
 291                 case MONITOR_ENTER:
 292                         return JdkTypeIDs.MONITOR_ENTER;
 293                 case MONITOR_WAIT:
 294                         return JdkTypeIDs.MONITOR_WAIT;
 295                 case METASPACE_OOM:
 296                         return JdkTypeIDs.METASPACE_OOM;
 297                 case CODE_CACHE_FULL:
 298                         return JdkTypeIDs.CODE_CACHE_FULL;
 299                 case CODE_CACHE_STATISTICS:
 300                         return JdkTypeIDs.CODE_CACHE_STATISTICS;
 301                 case CODE_SWEEPER_STATISTICS:
 302                         return JdkTypeIDs.CODE_SWEEPER_STATISTICS;
 303                 case SWEEP_CODE_CACHE:
 304                         return JdkTypeIDs.SWEEP_CODE_CACHE;
 305                 case ENVIRONMENT_VARIABLE:
 306                         return JdkTypeIDs.ENVIRONMENT_VARIABLE;
 307                 case SYSTEM_PROPERTIES:
 308                         return JdkTypeIDs.SYSTEM_PROPERTIES;
 309                 case OBJECT_COUNT:
 310                         return JdkTypeIDs.OBJECT_COUNT;
 311                 case GC_REFERENCE_STATISTICS:
 312                         return JdkTypeIDs.GC_REFERENCE_STATISTICS;
 313                 case OLD_OBJECT_SAMPLE:
 314                         return JdkTypeIDs.OLD_OBJECT_SAMPLE;
 315                 case GC_PAUSE_L3:
 316                         return JdkTypeIDs.GC_PAUSE_L3;
 317                 case GC_PAUSE_L2:
 318                         return JdkTypeIDs.GC_PAUSE_L2;
 319                 case GC_PAUSE_L1:
 320                         return JdkTypeIDs.GC_PAUSE_L1;
 321                 case GC_PAUSE:
 322                         return JdkTypeIDs.GC_PAUSE;
 323                 case METASPACE_SUMMARY:
 324                         return JdkTypeIDs.METASPACE_SUMMARY;
 325                 case GARBAGE_COLLECTION:
 326                         return JdkTypeIDs.GARBAGE_COLLECTION;
 327                 case CONCURRENT_MODE_FAILURE:
 328                         return JdkTypeIDs.CONCURRENT_MODE_FAILURE;
 329                 case THROWABLES_STATISTICS:
 330                         return JdkTypeIDs.THROWABLES_STATISTICS;
 331                 case ERRORS_THROWN:
 332                         return JdkTypeIDs.ERRORS_THROWN;
 333                 case EXCEPTIONS_THROWN:
 334                         return JdkTypeIDs.EXCEPTIONS_THROWN;
 335                 case COMPILER_STATS:
 336                         return JdkTypeIDs.COMPILER_STATS;
 337                 case COMPILER_FAILURE:
 338                         return JdkTypeIDs.COMPILER_FAILURE;
 339                 case ULONG_FLAG:
 340                         return JdkTypeIDs.ULONG_FLAG;
 341                 case BOOLEAN_FLAG:
 342                         return JdkTypeIDs.BOOLEAN_FLAG;
 343                 case STRING_FLAG:
 344                         return JdkTypeIDs.STRING_FLAG;
 345                 case DOUBLE_FLAG:
 346                         return JdkTypeIDs.DOUBLE_FLAG;
 347                 case LONG_FLAG:
 348                         return JdkTypeIDs.LONG_FLAG;
 349                 case INT_FLAG:
 350                         return JdkTypeIDs.INT_FLAG;
 351                 case UINT_FLAG:
 352                         return JdkTypeIDs.UINT_FLAG;
 353                 case ULONG_FLAG_CHANGED:
 354                         return JdkTypeIDs.ULONG_FLAG_CHANGED;
 355                 case BOOLEAN_FLAG_CHANGED:
 356                         return JdkTypeIDs.BOOLEAN_FLAG_CHANGED;
 357                 case STRING_FLAG_CHANGED:
 358                         return JdkTypeIDs.STRING_FLAG_CHANGED;
 359                 case DOUBLE_FLAG_CHANGED:
 360                         return JdkTypeIDs.DOUBLE_FLAG_CHANGED;
 361                 case LONG_FLAG_CHANGED:
 362                         return JdkTypeIDs.LONG_FLAG_CHANGED;
 363                 case INT_FLAG_CHANGED:
 364                         return JdkTypeIDs.INT_FLAG_CHANGED;
 365                 case UINT_FLAG_CHANGED:
 366                         return JdkTypeIDs.UINT_FLAG_CHANGED;
 367                 case TIME_CONVERSION:
 368                         return JdkTypeIDs.TIME_CONVERSION;
 369                 case THREAD_DUMP:
 370                         return JdkTypeIDs.THREAD_DUMP;
 371                 case JfrInternalConstants.BUFFER_LOST_TYPE_ID:
 372                         return JdkTypeIDs.JFR_DATA_LOST;
 373                 case GC_CONF_YOUNG_GENERATION:
 374                         return JdkTypeIDs.GC_CONF_YOUNG_GENERATION;
 375                 case GC_CONF_SURVIVOR:
 376                         return JdkTypeIDs.GC_CONF_SURVIVOR;
 377                 case GC_CONF_TLAB:
 378                         return JdkTypeIDs.GC_CONF_TLAB;
 379                 case JAVA_THREAD_START:
 380                         return JdkTypeIDs.JAVA_THREAD_START;
 381                 case JAVA_THREAD_END:
 382                         return JdkTypeIDs.JAVA_THREAD_END;
 383                 case VM_OPERATIONS:
 384                         return JdkTypeIDs.VM_OPERATIONS;
 385                 case THREAD_STATISTICS:
 386                         return JdkTypeIDs.THREAD_STATISTICS;
 387                 case CONTEXT_SWITCH_RATE:
 388                         return JdkTypeIDs.CONTEXT_SWITCH_RATE;
 389                 case COMPILER_CONFIG:
 390                         return JdkTypeIDs.COMPILER_CONFIG;
 391                 case CODE_CACHE_CONFIG:
 392                         return JdkTypeIDs.CODE_CACHE_CONFIG;
 393                 case CODE_SWEEPER_CONFIG:
 394                         return JdkTypeIDs.CODE_SWEEPER_CONFIG;
 395                 case COMPILER_PHASE:
 396                         return JdkTypeIDs.COMPILER_PHASE;
 397                 case GC_COLLECTOR_G1_GARBAGE_COLLECTION:
 398                         return JdkTypeIDs.GC_COLLECTOR_G1_GARBAGE_COLLECTION;
 399                 case GC_COLLECTOR_OLD_GARBAGE_COLLECTION:
 400                         return JdkTypeIDs.GC_COLLECTOR_OLD_GARBAGE_COLLECTION;
 401                 case GC_COLLECTOR_PAROLD_GARBAGE_COLLECTION:
 402                         return JdkTypeIDs.GC_COLLECTOR_PAROLD_GARBAGE_COLLECTION;
 403                 case GC_COLLECTOR_YOUNG_GARBAGE_COLLECTION:
 404                         return JdkTypeIDs.GC_COLLECTOR_YOUNG_GARBAGE_COLLECTION;
 405                 case GC_DETAILED_ALLOCATION_REQUIRING_GC:
 406                         return JdkTypeIDs.GC_DETAILED_ALLOCATION_REQUIRING_GC;
 407                 case GC_DETAILED_EVACUATION_FAILED:
 408                         return JdkTypeIDs.GC_DETAILED_EVACUATION_FAILED;
 409                 case GC_DETAILED_EVACUATION_INFO:
 410                         return JdkTypeIDs.GC_DETAILED_EVACUATION_INFO;
 411                 case GC_DETAILED_OBJECT_COUNT_AFTER_GC:
 412                         return JdkTypeIDs.GC_DETAILED_OBJECT_COUNT_AFTER_GC;
 413                 case GC_DETAILED_PROMOTION_FAILED:
 414                         return JdkTypeIDs.GC_DETAILED_PROMOTION_FAILED;
 415                 case GC_HEAP_PS_SUMMARY:
 416                         return JdkTypeIDs.GC_HEAP_PS_SUMMARY;
 417                 case GC_METASPACE_ALLOCATION_FAILURE:
 418                         return JdkTypeIDs.GC_METASPACE_ALLOCATION_FAILURE;
 419                 case GC_METASPACE_CHUNK_FREE_LIST_SUMMARY:
 420                         return JdkTypeIDs.GC_METASPACE_CHUNK_FREE_LIST_SUMMARY;
 421                 case GC_METASPACE_GC_THRESHOLD:
 422                         return JdkTypeIDs.GC_METASPACE_GC_THRESHOLD;
 423                 case RECORDING_SETTING:
 424                         return JdkTypeIDs.RECORDING_SETTING;
 425                 case RECORDINGS:
 426                         return JdkTypeIDs.RECORDINGS;
 427                 case GC_G1MMU:
 428                         return JdkTypeIDs.GC_G1MMU;
 429                 default:
 430                         return typeId;
 431                 }
 432         }
 433 
 434 }