remove SecurityManagerCaller

This commit is contained in:
Looly
2025-06-23 19:31:42 +08:00
parent e7546e6c34
commit 52afcdd388
2 changed files with 1 additions and 84 deletions

View File

@@ -97,18 +97,7 @@ public class CallerUtil {
* @return {@link Caller}实现
*/
private static Caller tryCreateCaller() {
Caller caller;
try {
caller = new SecurityManagerCaller();
if(null != caller.getCaller() && null != caller.getCallerCaller()) {
return caller;
}
} catch (final Throwable e) {
//ignore
}
caller = new StackTraceCaller();
return caller;
return new StackTraceCaller();
}
// ---------------------------------------------------------------------------------------------- static interface and class
}

View File

@@ -1,72 +0,0 @@
/*
* Copyright (c) 2013-2025 Hutool Team and hutool.cn
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package cn.hutool.v7.core.lang.caller;
import java.io.Serializable;
import cn.hutool.v7.core.array.ArrayUtil;
/**
* {@link SecurityManager} 方式获取调用者
*
* @author Looly
*/
public class SecurityManagerCaller extends SecurityManager implements Caller, Serializable {
private static final long serialVersionUID = 1L;
private static final int OFFSET = 1;
@Override
public Class<?> getCaller() {
final Class<?>[] context = getClassContext();
if (null != context && (OFFSET + 1) < context.length) {
return context[OFFSET + 1];
}
return null;
}
@Override
public Class<?> getCallerCaller() {
final Class<?>[] context = getClassContext();
if (null != context && (OFFSET + 2) < context.length) {
return context[OFFSET + 2];
}
return null;
}
@Override
public Class<?> getCaller(final int depth) {
final Class<?>[] context = getClassContext();
if (null != context && (OFFSET + depth) < context.length) {
return context[OFFSET + depth];
}
return null;
}
@Override
public boolean isCalledBy(final Class<?> clazz) {
final Class<?>[] classes = getClassContext();
if(ArrayUtil.isNotEmpty(classes)) {
for (final Class<?> contextClass : classes) {
if (contextClass.equals(clazz)) {
return true;
}
}
}
return false;
}
}