Package org.deuce.objectweb.asm

Examples of org.deuce.objectweb.asm.Label


    mv.visitMaxs(6 + variablesSize, resultIndex + 2);
    mv.visitEnd();
  }

  private Label getContext(final int contextIndex) {
    Label label = new Label();
    mv.visitLabel(label); // Context context = ContextDelegator.getInstance();
    mv.visitMethodInsn(INVOKESTATIC, ContextDelegator.CONTEXT_DELEGATOR_INTERNAL, "getInstance", "()Lorg/deuce/transaction/AbstractContext;");
    mv.visitVarInsn(ASTORE, contextIndex);
    return label;
  }
View Full Code Here


    mv.visitVarInsn(ASTORE, contextIndex);
    return label;
  }

  private Label throwTransactionException() {
    Label label = new Label();
    mv.visitLabel(label);
    mv.visitTypeInsn(NEW, "org/deuce/transaction/TransactionException");
    mv.visitInsn(DUP);
    mv.visitLdcInsn("Failed to commit the transaction in the defined retries.");
    mv.visitMethodInsn(INVOKESPECIAL, "org/deuce/transaction/TransactionException", "<init>", "(Ljava/lang/String;)V");
View Full Code Here

      return;
   
    mv.visitVarInsn(Opcodes.ALOAD, 0);
    mv.visitFieldInsn(Opcodes.GETFIELD, classInternalName, ITypeInternalName.$HY$_STATE, "I");
    mv.visitInsn(ITypeInternalName.DEFAULT_STATE);
    Label l1 = new Label();
    mv.visitJumpInsn(Opcodes.IF_ICMPEQ, l1);

    Type[] types = Type.getArgumentTypes(desc);
    mv.visitIntInsn(Opcodes.BIPUSH, types.length);
    mv.visitTypeInsn(Opcodes.ANEWARRAY, "java/lang/Object");
View Full Code Here

    if ((opcode >= Opcodes.IRETURN && opcode <= Opcodes.RETURN) || opcode == Opcodes.ATHROW) {
      mv.visitMethodInsn(Opcodes.INVOKESTATIC, ITypeInternalName.CONTEXT_DELEGATOR, "getInstance", "()Lorg/deuce/transaction/AbstractContext;");
      mv.visitVarInsn(Opcodes.ASTORE, argSize+1);
      mv.visitVarInsn(Opcodes.ALOAD, argSize+1);
      mv.visitMethodInsn(Opcodes.INVOKEVIRTUAL, ITypeInternalName.ABSTRACT_CONTEXT, "getContextId", "()Ljava/lang/Long;");
      Label l3 = new Label();
      mv.visitJumpInsn(Opcodes.IFNONNULL, l3);
      mv.visitMethodInsn(Opcodes.INVOKESTATIC, ITypeInternalName.HYFLOW, "getLocator", "()Laleph/dir/DirectoryManager;");
      mv.visitVarInsn(Opcodes.ALOAD, 0);
      mv.visitMethodInsn(Opcodes.INVOKEVIRTUAL, "aleph/dir/DirectoryManager", "register", "(Ledu/vt/rt/hyflow/core/AbstractDistinguishable;)V");
      Label l5 = new Label();
      mv.visitJumpInsn(Opcodes.GOTO, l5);
      mv.visitLabel(l3);
      mv.visitFrame(Opcodes.F_APPEND,1, new Object[] {"org/deuce/transaction/AbstractContext"}, 0, null);
      mv.visitVarInsn(Opcodes.ALOAD, argSize+1);
      mv.visitVarInsn(Opcodes.ALOAD, 0);
View Full Code Here

TOP

Related Classes of org.deuce.objectweb.asm.Label

Copyright © 2018 www.massapicom. 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.