Package org.apache.xbean.asm

Examples of org.apache.xbean.asm.MethodVisitor.visitInsn()


    mv.visitCode();
    mv.visitVarInsn(ALOAD, 0);
    mv.visitVarInsn(ALOAD, 1);
    mv.visitVarInsn(ALOAD, 1);
    mv.visitMethodInsn(INVOKESPECIAL, proxyName, "<init>", "(Ljava/lang/reflect/InvocationHandler;Ljava/lang/reflect/InvocationHandler;)V");
    mv.visitInsn(RETURN);
    mv.visitMaxs(0, 0);
    mv.visitEnd();

    // push double argument constructor
    mv = cw.visitMethod(ACC_PUBLIC, "<init>", "(Ljava/lang/reflect/InvocationHandler;Ljava/lang/reflect/InvocationHandler;)V", null, null);
View Full Code Here


    mv.visitVarInsn(ALOAD, 1);
    mv.visitFieldInsn(PUTFIELD, proxyName, BUSSINESS_HANDLER_NAME, "Ljava/lang/reflect/InvocationHandler;");
    mv.visitVarInsn(ALOAD, 0);
    mv.visitVarInsn(ALOAD, 2);
    mv.visitFieldInsn(PUTFIELD, proxyName, NON_BUSINESS_HANDLER_NAME, "Ljava/lang/reflect/InvocationHandler;");
    mv.visitInsn(RETURN);
    mv.visitMaxs(0, 0);
    mv.visitEnd();

    Map<String, List<Method>> methodMap = getNonPrivateMethods(new Class[] { clsToProxy });
View Full Code Here

    int length = 1;
   
    // push parameters into array
    for (int i = 0; i < parameterTypes.length; i++) {
      // keep copy of array on stack
      mv.visitInsn(DUP);
     
      Class<?> parameterType = parameterTypes[i];
     
      // push number onto stack
      pushIntOntoStack(mv, i);
View Full Code Here

        mv.visitFieldInsn(GETSTATIC, wrapperType, "TYPE", "Ljava/lang/Class;");
      } else {
        mv.visitLdcInsn(Type.getType(getAsmTypeAsString(parameterType, true)));
      }
     
      mv.visitInsn(AASTORE);
     
      if (Long.TYPE.equals(parameterType) || Double.TYPE.equals(parameterType)) {
        length += 2;
      } else {
        length++;
View Full Code Here

    int index = 1;
    // push parameters into array
    for (int i = 0; i < parameterTypes.length; i++) {
      // keep copy of array on stack
      mv.visitInsn(DUP);
     
      Class<?> parameterType = parameterTypes[i];
     
      // push number onto stack
      pushIntOntoStack(mv, i);
View Full Code Here

      if (parameterType.isPrimitive()) {
        String wrapperType = getWrapperType(parameterType);
        mv.visitVarInsn(getVarInsn(parameterType), index);
       
        mv.visitMethodInsn(INVOKESTATIC, wrapperType, "valueOf", "(" + getPrimitiveLetter(parameterType) + ")L" + wrapperType + ";");
        mv.visitInsn(AASTORE);
       
        if (Long.TYPE.equals(parameterType) || Double.TYPE.equals(parameterType)) {
          index += 2;
        } else {
          index++;
View Full Code Here

        } else {
          index++;
        }
      } else {
        mv.visitVarInsn(ALOAD, index);
        mv.visitInsn(AASTORE);
        index++;
      }
    }

    // invoke the invocationHandler
View Full Code Here

    }
   
    // push return
    mv.visitLabel(l1);
    if (! Void.TYPE.equals(returnType)) {
      mv.visitInsn(getReturnInsn(returnType));
    } else {
      mv.visitInsn(POP);
      mv.visitInsn(RETURN);
    }
View Full Code Here

    // push return
    mv.visitLabel(l1);
    if (! Void.TYPE.equals(returnType)) {
      mv.visitInsn(getReturnInsn(returnType));
    } else {
      mv.visitInsn(POP);
      mv.visitInsn(RETURN);
    }

    // catch InvocationTargetException
    if (exceptionTypes.length > 0) {
View Full Code Here

    mv.visitLabel(l1);
    if (! Void.TYPE.equals(returnType)) {
      mv.visitInsn(getReturnInsn(returnType));
    } else {
      mv.visitInsn(POP);
      mv.visitInsn(RETURN);
    }

    // catch InvocationTargetException
    if (exceptionTypes.length > 0) {
      mv.visitLabel(l2);
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.