Search in sources :

Example 71 with Control

use of org.omg.CosTransactions.Control in project narayana by jbosstm.

the class DistributedHammerWorker1 method incr21.

public static void incr21(char thr, int level) {
    boolean res = false;
    boolean res1 = false;
    boolean res2 = false;
    int ran = 0;
    try {
        OTSImpleManager.current().begin();
        Control control = OTSImpleManager.current().get_control();
        Util.indent(thr, level);
        System.out.println("begin   incr21");
        ran = Util.rand.nextInt() % 16;
        res1 = hammerObject_2.incr(ran, control);
        res = res1;
        Util.indent(thr, level);
        System.out.println("part1   incr21 : " + res1);
        if (res) {
            res2 = hammerObject_1.incr(-ran, control);
            res = res2;
            Util.indent(thr, level);
            System.out.println("part2   incr21 : " + res2);
        }
        control = null;
        Util.indent(thr, level);
        if (res) {
            System.out.print("end ");
            OTSImpleManager.current().commit(true);
            res = true;
        } else {
            System.out.print("abort  ");
            OTSImpleManager.current().rollback();
        }
    } catch (Exception e) {
        System.err.println("DistributedHammerWorker1.incr21: " + e);
        res1 = res2 = res = false;
    }
    Util.indent(thr, level);
    System.out.println(" incr21 : " + res1 + " : " + res2 + " : " + res + " : " + ran);
}
Also used : Control(org.omg.CosTransactions.Control)

Example 72 with Control

use of org.omg.CosTransactions.Control in project narayana by jbosstm.

the class DistributedHammerWorker1 method incr12.

public static void incr12(char thr, int level) {
    boolean res = false;
    boolean res1 = false;
    boolean res2 = false;
    int ran = 0;
    try {
        OTSImpleManager.current().begin();
        Control control = OTSImpleManager.current().get_control();
        Util.indent(thr, level);
        System.out.println("begin   incr12");
        ran = Util.rand.nextInt() % 16;
        res1 = hammerObject_1.incr(ran, control);
        res = res1;
        Util.indent(thr, level);
        System.out.println("part1   incr12 : " + res1);
        if (res) {
            res2 = hammerObject_2.incr(-ran, control);
            res = res2;
            Util.indent(thr, level);
            System.out.println("part2   incr12 : " + res2);
        }
        Util.indent(thr, level);
        control = null;
        if (res) {
            System.out.print("end ");
            OTSImpleManager.current().commit(true);
            res = true;
        } else {
            System.out.print("abort  ");
            OTSImpleManager.current().rollback();
        }
    } catch (Exception e) {
        System.err.println("DistributedHammerWorker1.incr12: " + e);
        res1 = res2 = res = false;
    }
    Util.indent(thr, level);
    System.out.println(" incr12 : " + res1 + " : " + res2 + " : " + res + " : " + ran);
}
Also used : Control(org.omg.CosTransactions.Control)

Example 73 with Control

use of org.omg.CosTransactions.Control in project narayana by jbosstm.

the class DistributedHammerWorker3 method incr12.

public static void incr12(int thr, int level) {
    boolean res = false;
    boolean res1 = false;
    boolean res2 = false;
    int ran = 0;
    try {
        OTSImpleManager.current().begin();
        Control control = OTSImpleManager.current().get_control();
        Util.indent(thr, level);
        System.out.println("begin   incr12");
        ran = Util.rand.nextInt() % 16;
        res1 = hammerObject_1.incr(ran, control);
        res = res1;
        Util.indent(thr, level);
        System.out.println("part1   incr12 : " + res1);
        Util.lowProbYield();
        if (res) {
            res2 = hammerObject_2.incr(-ran, control);
            res = res2;
            Util.indent(thr, level);
            System.out.println("part2   incr12 : " + res2);
        }
        Util.lowProbYield();
        control = null;
        Util.indent(thr, level);
        if (res) {
            System.out.print("end ");
            OTSImpleManager.current().commit(true);
        } else {
            System.out.print("abort  ");
            OTSImpleManager.current().rollback();
        }
    } catch (Exception e) {
        System.err.println("DistributedHammerWorker3.incr12: " + e);
        res1 = res2 = res = false;
    }
    Util.indent(thr, level);
    System.out.println(" incr12 : " + res1 + " : " + res2 + " : " + res + " : " + ran);
}
Also used : Control(org.omg.CosTransactions.Control)

Example 74 with Control

use of org.omg.CosTransactions.Control in project narayana by jbosstm.

the class DistributedHammerWorker3 method get2.

public static boolean get2(IntHolder value) {
    boolean res = false;
    try {
        OTSImpleManager.current().begin();
        Control control = OTSImpleManager.current().get_control();
        res = hammerObject_2.get(value, control);
        control = null;
        if (res) {
            OTSImpleManager.current().commit(true);
        } else {
            OTSImpleManager.current().rollback();
        }
    } catch (Exception e) {
        System.err.println("DistributedHammerWorker1.get2: " + e);
        res = false;
    }
    return (res);
}
Also used : Control(org.omg.CosTransactions.Control)

Example 75 with Control

use of org.omg.CosTransactions.Control in project narayana by jbosstm.

the class DistributedHammerWorker3 method incr21.

public static void incr21(int thr, int level) {
    boolean res = false;
    boolean res1 = false;
    boolean res2 = false;
    int ran = 0;
    try {
        OTSImpleManager.current().begin();
        Control control = OTSImpleManager.current().get_control();
        Util.indent(thr, level);
        System.out.println("begin   incr21");
        ran = Util.rand.nextInt() % 16;
        res1 = hammerObject_2.incr(ran, control);
        res = res1;
        Util.indent(thr, level);
        System.out.println("part1   incr21 : " + res1);
        Util.lowProbYield();
        if (res) {
            res2 = hammerObject_1.incr(-ran, control);
            res = res2;
            Util.indent(thr, level);
            System.out.println("part2   incr21 : " + res2);
        }
        Util.lowProbYield();
        control = null;
        Util.indent(thr, level);
        if (res) {
            System.out.print("end ");
            OTSImpleManager.current().commit(true);
        } else {
            System.out.print("abort  ");
            OTSImpleManager.current().rollback();
        }
    } catch (Exception e) {
        System.err.println("DistributedHammerWorker3.incr21: " + e);
        res1 = res2 = res = false;
    }
    Util.indent(thr, level);
    System.out.println(" incr21 : " + res1 + " : " + res2 + " : " + res + " : " + ran);
}
Also used : Control(org.omg.CosTransactions.Control)

Aggregations

Control (org.omg.CosTransactions.Control)103 Test (org.junit.Test)40 ControlImple (com.arjuna.ats.internal.jts.orbspecific.ControlImple)24 ArjunaTransactionImple (com.arjuna.ats.internal.jts.orbspecific.coordinator.ArjunaTransactionImple)20 ServerControl (com.arjuna.ats.internal.jts.orbspecific.interposition.ServerControl)20 ORB (com.arjuna.orbportability.ORB)20 RootOA (com.arjuna.orbportability.RootOA)18 TransactionFactory (org.omg.CosTransactions.TransactionFactory)16 CurrentImple (com.arjuna.ats.internal.jts.orbspecific.CurrentImple)14 INVALID_TRANSACTION (org.omg.CORBA.INVALID_TRANSACTION)13 Coordinator (org.omg.CosTransactions.Coordinator)13 SystemException (org.omg.CORBA.SystemException)11 IntHolder (org.omg.CORBA.IntHolder)10 Current (org.omg.CosTransactions.Current)9 ControlWrapper (com.arjuna.ats.internal.jts.ControlWrapper)6 TransactionFactoryImple (com.arjuna.ats.internal.jts.orbspecific.TransactionFactoryImple)6 Services (com.arjuna.orbportability.Services)6 PropagationContext (org.omg.CosTransactions.PropagationContext)6 ActionControl (com.arjuna.ArjunaOTS.ActionControl)5 ServerORB (com.hp.mwtests.ts.jts.utils.ServerORB)5