< prev index next > src/hotspot/share/services/management.cpp
Print this page
/*
- * Copyright (c) 2003, 2025, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2026, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
#include "oops/klass.hpp"
#include "oops/klass.inline.hpp"
#include "oops/objArrayKlass.hpp"
#include "oops/objArrayOop.inline.hpp"
#include "oops/oop.inline.hpp"
+ #include "oops/oopCast.inline.hpp"
#include "oops/oopHandle.inline.hpp"
#include "oops/typeArrayOop.inline.hpp"
#include "runtime/flags/jvmFlag.hpp"
#include "runtime/globals.hpp"
#include "runtime/handles.inline.hpp"
// Returns a String array of all VM global flag names
JVM_ENTRY(jobjectArray, jmm_GetVMGlobalNames(JNIEnv *env))
// last flag entry is always null, so subtract 1
int nFlags = (int) JVMFlag::numFlags - 1;
// allocate a temp array
- objArrayOop r = oopFactory::new_objArray(vmClasses::String_klass(),
- nFlags, CHECK_NULL);
- objArrayHandle flags_ah(THREAD, r);
+ refArrayOop r = oopFactory::new_refArray(vmClasses::String_klass(),
+ nFlags,
+ CHECK_NULL);
+ refArrayHandle flags_ah(THREAD, r);
int num_entries = 0;
for (int i = 0; i < nFlags; i++) {
JVMFlag* flag = &JVMFlag::flags[i];
// Exclude develop flags in product builds.
if (flag->is_constant_in_binary()) {
}
}
if (num_entries < nFlags) {
// Return array of right length
- objArrayOop res = oopFactory::new_objArray(vmClasses::String_klass(), num_entries, CHECK_NULL);
+ refArrayOop res = oopFactory::new_refArray(vmClasses::String_klass(), num_entries, CHECK_NULL);
for(int i = 0; i < num_entries; i++) {
res->obj_at_put(i, flags_ah->obj_at(i));
}
return (jobjectArray)JNIHandles::make_local(THREAD, res);
}
ResourceMark rm(THREAD);
if (names != nullptr) {
// return the requested globals
- objArrayOop ta = objArrayOop(JNIHandles::resolve_non_null(names));
- objArrayHandle names_ah(THREAD, ta);
+ refArrayOop ta = oop_cast<refArrayOop>(JNIHandles::resolve_non_null(names));
+ refArrayHandle names_ah(THREAD, ta);
// Make sure we have a String array
- Klass* element_klass = ObjArrayKlass::cast(names_ah->klass())->element_klass();
+ Klass* element_klass = RefArrayKlass::cast(names_ah->klass())->element_klass();
if (element_klass != vmClasses::String_klass()) {
THROW_MSG_(vmSymbols::java_lang_IllegalArgumentException(),
"Array element type is not String class", 0);
}
THROW(vmSymbols::java_lang_NullPointerException());
}
ResourceMark rm(THREAD);
- objArrayOop ca = objArrayOop(JNIHandles::resolve_non_null(cmds));
- objArrayHandle cmds_ah(THREAD, ca);
+ refArrayOop ca = oop_cast<refArrayOop>(JNIHandles::resolve_non_null(cmds));
+ refArrayHandle cmds_ah(THREAD, ca);
// Make sure we have a String array
- Klass* element_klass = ObjArrayKlass::cast(cmds_ah->klass())->element_klass();
+ Klass* element_klass = RefArrayKlass::cast(cmds_ah->klass())->element_klass();
if (element_klass != vmClasses::String_klass()) {
THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
"Array element type is not String class");
}
< prev index next >