Package org.objectweb.asm

Examples of org.objectweb.asm.CodeVisitor.visitMethodInsn()


        for (Iterator it = classProperties.entrySet().iterator(); it.hasNext();) {
            Map.Entry me = (Map.Entry) it.next();
            cv.visitVarInsn(ALOAD, 1);
            cv.visitLdcInsn(me.getKey());
            cv.visitLdcInsn(me.getValue());
            cv.visitMethodInsn(INVOKEVIRTUAL, "java/util/Properties", "setProperty",
                    "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;");
            cv.visitInsn(POP); //remove the result of the setProperty method
        }
       
        cv.visitVarInsn(ALOAD, 1);
View Full Code Here


        //(($classNameFields) src).speedoCopyState(src, dest);
        mv.visitVarInsn(ALOAD, 1);
        mv.visitTypeInsn(CHECKCAST, xfieldsJCN);
        mv.visitVarInsn(ALOAD, 1);
        mv.visitVarInsn(ALOAD, 2);
        mv.visitMethodInsn(INVOKEVIRTUAL, xfieldsJCN, M_SPEEDO_COPY_STATE,
                "(" + JT_STATE + JT_STATE + ")V");
        mv.visitInsn(RETURN);
        mv.visitMaxs(0, 0);
    }
    private void generateReadObjectMethod(int nbField) {
View Full Code Here

        mv = cv.visitMethod(ACC_PRIVATE, "readObject",
                "(Ljava/io/ObjectInputStream;)V",
                new String[] { "java/io/IOException", "java/lang/ClassNotFoundException" }, null);
        mv.visitVarInsn(ALOAD, 1); //param
        mv.visitVarInsn(ALOAD, 0); //this
        mv.visitMethodInsn(INVOKESTATIC, getJVMClassName(SpeedoPOSerializer.class),
                "readObject",
                "(Ljava/io/ObjectInputStream;" + JT_PO + ")V");
        mv.visitInsn(RETURN);
        mv.visitMaxs(0, 0);
    }
View Full Code Here

        //StateItf sa = super.writeIntention(sp, fields, thinLock);
        cv.visitVarInsn(ALOAD, 0);
        cv.visitVarInsn(ALOAD, 1);
        cv.visitVarInsn(ALOAD, 2);
        cv.visitVarInsn(ALOAD, 3);
        cv.visitMethodInsn(INVOKESPECIAL, gc.superClassJCN, "writeIntention", methodDesc);
        cv.visitVarInsn(ASTORE, 4);

        //if (fields == null) {
        cv.visitVarInsn(ALOAD, 2);
        Label labelElse = new Label();
View Full Code Here

                new String[] { "java/io/IOException" }, null);
        mv.visitVarInsn(ALOAD, 1); //param
        mv.visitVarInsn(ALOAD, 0); //this
        // new long[]{0xffffffffffffffffL, ..., 0xffffffffffffffffL}
        generateFieldIdAsLongArray(null, nbField, mv);
        mv.visitMethodInsn(INVOKESTATIC, getJVMClassName(SpeedoPOSerializer.class),
                "writeObject",
                "(Ljava/io/ObjectOutputStream;" + JT_PO + "[J)V");
        mv.visitInsn(RETURN);
        mv.visitMaxs(0, 0);
    }
View Full Code Here

        {
            //sa.indexFieldModified(0xffffffff, false);
            cv.visitVarInsn(ALOAD, 4);
            cv.visitLdcInsn(new Integer(0xffffffff));
            cv.visitInsn(ICONST_0);
            cv.visitMethodInsn(INVOKEINTERFACE,
                    getJVMClassName(StateItf.class),
                    "indexFieldModified", "(IZ)V");
            cv.visitJumpInsn(GOTO, labelEnd);
        }
        cv.visitLabel(labelElse);
View Full Code Here

        mv.visitInsn(IRETURN);
        mv.visitLabel(l1);

        //StateItf sa = speedoGetState();
        mv.visitVarInsn(ALOAD, 0);
        mv.visitMethodInsn(INVOKEVIRTUAL, classToWrite, M_SPEEDO_GET_STATE, "()" + JT_STATE);
        mv.visitVarInsn(ASTORE, 1);

        //return sa == null || LifeCycle.isPersistent(sa.speedoGetStatus());
        mv.visitVarInsn(ALOAD, 1);
        Label l4 = new Label();
View Full Code Here

        //return sa == null || LifeCycle.isPersistent(sa.speedoGetStatus());
        mv.visitVarInsn(ALOAD, 1);
        Label l4 = new Label();
        mv.visitJumpInsn(IFNULL, l4);
        mv.visitVarInsn(ALOAD, 1);
        mv.visitMethodInsn(INVOKEINTERFACE, JCN_STATE, M_SPEEDO_GET_STATUS, "()B");
        mv.visitMethodInsn(INVOKESTATIC, JCN_LIFE_CYCLE, "isPersistent", "(B)Z");
        Label l5 = new Label();
        mv.visitJumpInsn(IFEQ, l5);
        mv.visitLabel(l4);
        mv.visitInsn(ICONST_1);
View Full Code Here

        mv.visitVarInsn(ALOAD, 1);
        Label l4 = new Label();
        mv.visitJumpInsn(IFNULL, l4);
        mv.visitVarInsn(ALOAD, 1);
        mv.visitMethodInsn(INVOKEINTERFACE, JCN_STATE, M_SPEEDO_GET_STATUS, "()B");
        mv.visitMethodInsn(INVOKESTATIC, JCN_LIFE_CYCLE, "isPersistent", "(B)Z");
        Label l5 = new Label();
        mv.visitJumpInsn(IFEQ, l5);
        mv.visitLabel(l4);
        mv.visitInsn(ICONST_1);
        Label l6 = new Label();
View Full Code Here

                    {
                        //sa.indexFieldModified(${ucn}_USER_CACHE_ID, false);
                        cv.visitVarInsn(ALOAD, 4);
                        Util.visitIntConstant(cv, ucIdx);
                        cv.visitInsn(ICONST_0);
                        cv.visitMethodInsn(INVOKEINTERFACE,
                                getJVMClassName(StateItf.class),
                                "indexFieldModified", "(IZ)V");
                    }
                    cv.visitLabel(labelNext);
                }
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.