本文整理汇总了Java中org.aspectj.lang.reflect.CodeSignature.getDeclaringType方法的典型用法代码示例。如果您正苦于以下问题:Java CodeSignature.getDeclaringType方法的具体用法?Java CodeSignature.getDeclaringType怎么用?Java CodeSignature.getDeclaringType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.aspectj.lang.reflect.CodeSignature
的用法示例。
在下文中一共展示了CodeSignature.getDeclaringType方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: enterMethod
import org.aspectj.lang.reflect.CodeSignature; //导入方法依赖的package包/类
private void enterMethod(ProceedingJoinPoint joinPoint) {
CodeSignature signature = (CodeSignature) joinPoint.getSignature();
Class<?> clz = signature.getDeclaringType();
String methodName = signature.getName();
String[] paramNames = signature.getParameterNames();
Object[] paramValues = joinPoint.getArgs();
StringBuilder builder = new StringBuilder("\[email protected] Enter---------------------------------\n");
if (Looper.getMainLooper() != Looper.myLooper()) {
//非主线程,打印线程信息
builder.append("[").append(Thread.currentThread().getName()).append("] ");
}
builder.append(methodName).append(":\n");
for (int i = 0; i < paramValues.length; i++) {
//此处可以对类型进行判断,读出更有意义的信息
builder.append(paramNames[i])
.append("=")
.append(paramValues[i])
.append("\n");
}
builder.append("\[email protected] Enter end---------------------------------\n");
Log.d(clz.getSimpleName(), builder.toString());
}
示例2: execute
import org.aspectj.lang.reflect.CodeSignature; //导入方法依赖的package包/类
private void execute(JoinPoint joinPoint) {
CodeSignature codeSignature = (CodeSignature) joinPoint.getSignature();
Class<?> cls = codeSignature.getDeclaringType();
String methodName = codeSignature.getName();
Log.v(getTag(cls), "\u21E2 " + methodName);
}
示例3: enterMethod
import org.aspectj.lang.reflect.CodeSignature; //导入方法依赖的package包/类
private static void enterMethod(JoinPoint joinPoint) {
if (!enabled) return;
CodeSignature codeSignature = (CodeSignature) joinPoint.getSignature();
Class<?> cls = codeSignature.getDeclaringType();
String methodName = codeSignature.getName();
String[] parameterNames = codeSignature.getParameterNames();
Object[] parameterValues = joinPoint.getArgs();
StringBuilder builder = new StringBuilder("\u21E2 ");
builder.append(methodName).append('(');
for (int i = 0; i < parameterValues.length; i++) {
if (i > 0) {
builder.append(", ");
}
builder.append(parameterNames[i]).append('=');
builder.append(Strings.toString(parameterValues[i]));
}
builder.append(')');
/*// Log when current thread is not the main thread
if (Looper.myLooper() != Looper.getMainLooper()) {
builder.append(" [Thread:\"").append(Thread.currentThread().getName()).append("\"]");
}*/
// TODO : use a real Logger
System.out.println(asTag(cls) + " : " + builder.toString());
}
示例4: enterMethod
import org.aspectj.lang.reflect.CodeSignature; //导入方法依赖的package包/类
private static void enterMethod(JoinPoint joinPoint) {
if (!enabled) return;
CodeSignature codeSignature = (CodeSignature) joinPoint.getSignature();
Class<?> cls = codeSignature.getDeclaringType();
String methodName = codeSignature.getName();
String[] parameterNames = codeSignature.getParameterNames();
Object[] parameterValues = joinPoint.getArgs();
StringBuilder builder = new StringBuilder("\u21E2 ");
builder.append(methodName).append('(');
for (int i = 0; i < parameterValues.length; i++) {
if (i > 0) {
builder.append(", ");
}
builder.append(parameterNames[i]).append('=');
builder.append(Strings.toString(parameterValues[i]));
}
builder.append(')');
if (Looper.myLooper() != Looper.getMainLooper()) {
builder.append(" [Thread:\"").append(Thread.currentThread().getName()).append("\"]");
}
Log.v(asTag(cls), builder.toString());
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
final String section = builder.toString().substring(2);
Trace.beginSection(section);
}
}