
com.alibaba.ttl.threadpool.agent.transformlet.Utils Maven / Gradle / Ivy
package com.alibaba.ttl.threadpool.agent.transformlet;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.NotFoundException;
class Utils {
/**
* String like {@code ScheduledFuture scheduleAtFixedRate(Runnable, long, long, TimeUnit)}
* for {@link java.util.concurrent.ScheduledThreadPoolExecutor#scheduleAtFixedRate}.
*
* @param method method object
* @return method signature string
*/
static String signatureOfMethod(final CtMethod method) throws NotFoundException {
final StringBuilder stringBuilder = new StringBuilder();
final String returnType = method.getReturnType().getSimpleName();
final String methodName = method.getName();
stringBuilder.append(returnType).append(" ")
.append(methodName).append("(");
final CtClass[] parameterTypes = method.getParameterTypes();
for (int i = 0; i < parameterTypes.length; i++) {
CtClass parameterType = parameterTypes[i];
if (i != 0) {
stringBuilder.append(", ");
}
stringBuilder.append(parameterType.getSimpleName());
}
stringBuilder.append(")");
return stringBuilder.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy