src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp
changeset 58863 c16ac7a2eba4
parent 53014 339d2fbe8675
child 59226 a0f39cc47387
equal deleted inserted replaced
58861:2c3cc4b01880 58863:c16ac7a2eba4
     1 /*
     1 /*
     2  * Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    68       (char*)"getTimeConversionFactor", (char*)"()D", (void*)jfr_time_conv_factor,
    68       (char*)"getTimeConversionFactor", (char*)"()D", (void*)jfr_time_conv_factor,
    69       (char*)"getTypeId", (char*)"(Ljava/lang/Class;)J", (void*)jfr_type_id,
    69       (char*)"getTypeId", (char*)"(Ljava/lang/Class;)J", (void*)jfr_type_id,
    70       (char*)"getEventWriter", (char*)"()Ljava/lang/Object;", (void*)jfr_get_event_writer,
    70       (char*)"getEventWriter", (char*)"()Ljava/lang/Object;", (void*)jfr_get_event_writer,
    71       (char*)"newEventWriter", (char*)"()Ljdk/jfr/internal/EventWriter;", (void*)jfr_new_event_writer,
    71       (char*)"newEventWriter", (char*)"()Ljdk/jfr/internal/EventWriter;", (void*)jfr_new_event_writer,
    72       (char*)"flush", (char*)"(Ljdk/jfr/internal/EventWriter;II)Z", (void*)jfr_event_writer_flush,
    72       (char*)"flush", (char*)"(Ljdk/jfr/internal/EventWriter;II)Z", (void*)jfr_event_writer_flush,
       
    73       (char*)"flush", (char*)"()V", (void*)jfr_flush,
    73       (char*)"setRepositoryLocation", (char*)"(Ljava/lang/String;)V", (void*)jfr_set_repository_location,
    74       (char*)"setRepositoryLocation", (char*)"(Ljava/lang/String;)V", (void*)jfr_set_repository_location,
    74       (char*)"abort", (char*)"(Ljava/lang/String;)V", (void*)jfr_abort,
    75       (char*)"abort", (char*)"(Ljava/lang/String;)V", (void*)jfr_abort,
    75       (char*)"getEpochAddress", (char*)"()J",(void*)jfr_get_epoch_address,
    76       (char*)"getEpochAddress", (char*)"()J",(void*)jfr_get_epoch_address,
    76       (char*)"addStringConstant", (char*)"(ZJLjava/lang/String;)Z", (void*)jfr_add_string_constant,
    77       (char*)"addStringConstant", (char*)"(ZJLjava/lang/String;)Z", (void*)jfr_add_string_constant,
    77       (char*)"uncaughtException", (char*)"(Ljava/lang/Thread;Ljava/lang/Throwable;)V", (void*)jfr_uncaught_exception,
    78       (char*)"uncaughtException", (char*)"(Ljava/lang/Thread;Ljava/lang/Throwable;)V", (void*)jfr_uncaught_exception,
    78       (char*)"setForceInstrumentation", (char*)"(Z)V", (void*)jfr_set_force_instrumentation,
    79       (char*)"setForceInstrumentation", (char*)"(Z)V", (void*)jfr_set_force_instrumentation,
    79       (char*)"getUnloadedEventClassCount", (char*)"()J", (void*)jfr_get_unloaded_event_classes_count,
    80       (char*)"getUnloadedEventClassCount", (char*)"()J", (void*)jfr_get_unloaded_event_classes_count,
    80       (char*)"setCutoff", (char*)"(JJ)Z", (void*)jfr_set_cutoff,
    81       (char*)"setCutoff", (char*)"(JJ)Z", (void*)jfr_set_cutoff,
    81       (char*)"emitOldObjectSamples", (char*)"(JZ)V", (void*)jfr_emit_old_object_samples,
    82       (char*)"emitOldObjectSamples", (char*)"(JZ)V", (void*)jfr_emit_old_object_samples,
    82       (char*)"shouldRotateDisk", (char*)"()Z", (void*)jfr_should_rotate_disk
    83       (char*)"shouldRotateDisk", (char*)"()Z", (void*)jfr_should_rotate_disk,
       
    84       (char*)"exclude", (char*)"(Ljava/lang/Thread;)V", (void*)jfr_exclude_thread,
       
    85       (char*)"include", (char*)"(Ljava/lang/Thread;)V", (void*)jfr_include_thread,
       
    86       (char*)"isExcluded", (char*)"(Ljava/lang/Thread;)Z", (void*)jfr_is_thread_excluded,
       
    87       (char*)"getChunkStartNanos", (char*)"()J", (void*)jfr_chunk_start_nanos
    83     };
    88     };
    84 
    89 
    85     const size_t method_array_length = sizeof(method) / sizeof(JNINativeMethod);
    90     const size_t method_array_length = sizeof(method) / sizeof(JNINativeMethod);
    86     if (env->RegisterNatives(jfr_clz, method, (jint)method_array_length) != JNI_OK) {
    91     if (env->RegisterNatives(jfr_clz, method, (jint)method_array_length) != JNI_OK) {
    87       JavaThread* jt = JavaThread::thread_from_jni_environment(env);
    92       JavaThread* jt = JavaThread::thread_from_jni_environment(env);