Examples of AtomicTransaction


Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

  {
    boolean successful = false;

    try
    {
      AtomicTransaction atomicTransaction = new AtomicTransaction();

      try
      {
        atomicTransaction.begin();

        try
        {
          int d = Math.abs(_random.nextInt() % 10) + 1;

          int x0 = Math.abs(_random.nextInt() % _matrixWidth);
          int y0 = Math.abs(_random.nextInt() % _matrixHeight);
          int x1 = Math.abs(_random.nextInt() % _matrixWidth);
          int y1 = Math.abs(_random.nextInt() % _matrixHeight);

          IntHolder location0Value = new IntHolder();
          IntHolder location1Value = new IntHolder();

          _matrix.get_value(x0, y0, location0Value);
          _matrix.get_value(x1, y1, location1Value);

          _matrix.set_value(x0, y0, location1Value.value + d);
          _matrix.set_value(x1, y1, location0Value.value - d);

          successful = (x0 != x1) || (y0 != y1);
        }
        catch (InvocationException invocationException)
        {
          if (invocationException.myreason != Reason.ReasonConcurrencyControl)
          {
            throw invocationException;
          }
        }

        if (successful)
        {
          atomicTransaction.commit(true);
        }
        else
        {
          atomicTransaction.rollback();
        }
      }
      catch (Exception exception)
      {
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        throw exception;
      }
    }
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    _value = 0;

    try
    {
      AtomicTransaction atomicTransaction = new AtomicTransaction();

      atomicTransaction.begin();

      if (setlock(new Lock(LockMode.WRITE), 0) == LockResult.GRANTED)
      {
        atomicTransaction.commit(true);
      }
      else
      {
        System.err.println("AITPingPongImpl01.AITPingPongImpl01: failed to get lock");
        atomicTransaction.rollback();
      }
    }
    catch (Exception exception)
    {
      System.err.println("AITPingPongImpl01.AITPingPongImpl01: " + exception);
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    {
      com.arjuna.ats.jts.ExplicitInterposition interposition = new com.arjuna.ats.jts.ExplicitInterposition();

      interposition.registerTransaction(ctrl);

      AtomicTransaction atomicTransaction = new AtomicTransaction();

      try
      {
        atomicTransaction.begin();

        if (count != 0)
        {
          ponger.hit(count - 1, pinger, ponger, OTS.current().get_control());
          atomicTransaction.commit(true);
        }
        else if (setlock(new Lock(LockMode.WRITE), 0) == LockResult.GRANTED)
        {
          _value++;
          atomicTransaction.commit(true);
        }
        else
        {
          System.err.println("AITPingPongImpl01.hit: failed to get lock");
          atomicTransaction.rollback();

          throw new InvocationException();
        }
      }
      catch (InvocationException invocationException)
      {
        interposition.unregisterTransaction();

        throw invocationException;
      }
      catch (Exception exception)
      {
        System.err.println("AITPingPongImpl01.hit: " + exception);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException();
      }
      catch (Error error)
      {
        System.err.println("AITPingPongImpl01.hit: " + error);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException();
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    {
      com.arjuna.ats.jts.ExplicitInterposition interposition = new com.arjuna.ats.jts.ExplicitInterposition();

      interposition.registerTransaction(ctrl);

      AtomicTransaction atomicTransaction = new AtomicTransaction();

      try
      {
        atomicTransaction.begin();

        if (count != 0)
        {
          ponger.bad_hit(count - 1, bad_count - 1, pinger, ponger, OTS.current().get_control());
          if (bad_count != 0)
          {
            atomicTransaction.commit(true);
          }
          else
          {
            atomicTransaction.rollback();
          }
        }
        else if (setlock(new Lock(LockMode.WRITE), 0) == LockResult.GRANTED)
        {
          _value++;
          if (bad_count != 0)
          {
            atomicTransaction.commit(true);
          }
          else
          {
            atomicTransaction.rollback();
          }
        }
        else
        {
          System.err.println("AITPingPongImpl01.bad_hit: failed to get lock");
          atomicTransaction.rollback();

          throw new InvocationException();
        }
      }
      catch (InvocationException invocationException)
      {
        interposition.unregisterTransaction();

        throw invocationException;
      }
      catch (Exception exception)
      {
        System.err.println("AITPingPongImpl01.bad_hit: " + exception);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException();
      }
      catch (Error error)
      {
        System.err.println("AITPingPongImpl01.bad_hit: " + error);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException();
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

        }
      }
    }
    try
    {
      AtomicTransaction atomicTransaction = new AtomicTransaction();

      atomicTransaction.begin();

      if (setlock(new Lock(LockMode.WRITE), 0) == LockResult.GRANTED)
      {
        atomicTransaction.commit(true);
      }
      else
      {
        System.err.println("AITMatrixImpl03.AITMatrixImpl03: failed to get lock");
        atomicTransaction.rollback();

        throw new InvocationException(Reason.ReasonConcurrencyControl);
      }
    }
    catch (InvocationException invocationException)
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    {
      com.arjuna.ats.jts.ExplicitInterposition interposition = new com.arjuna.ats.jts.ExplicitInterposition();

      interposition.registerTransaction(ctrl);

      AtomicTransaction atomicTransaction = new AtomicTransaction();

      try
      {
        atomicTransaction.begin();

        if (setlock(new Lock(LockMode.READ), 0) == LockResult.GRANTED)
        {
          try
          {
            _values[x][y].get_value(value);

            atomicTransaction.commit(true);
          }
          catch (InvocationException invocationException)
          {
            atomicTransaction.rollback();

            throw invocationException;
          }
        }
        else
        {
          atomicTransaction.rollback();

          throw new InvocationException(Reason.ReasonConcurrencyControl);
        }
      }
      catch (InvocationException invocationException)
      {
        interposition.unregisterTransaction();

        throw invocationException;
      }
      catch (Exception exception)
      {
        System.err.println("AITMatrixImpl03.get_value: " + exception);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException(Reason.ReasonUnknown);
      }
      catch (Error error)
      {
        System.err.println("AITMatrixImpl03.get_value: " + error);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException(Reason.ReasonUnknown);
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    {
      com.arjuna.ats.jts.ExplicitInterposition interposition = new com.arjuna.ats.jts.ExplicitInterposition();

      interposition.registerTransaction(ctrl);

      AtomicTransaction atomicTransaction = new AtomicTransaction();

      try
      {
        atomicTransaction.begin();

        if (setlock(new Lock(LockMode.READ), 0) == LockResult.GRANTED)
        {
          value.value = _value;
          atomicTransaction.commit(true);
        }
        else
        {
          System.err.println("AITPingPongImpl01.get: failed to get lock");
          atomicTransaction.rollback();

          throw new InvocationException();
        }
      }
      catch (InvocationException invocationException)
      {
        interposition.unregisterTransaction();

        throw invocationException;
      }
      catch (Exception exception)
      {
        System.err.println("AITPingPongImpl01.get: " + exception);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException();
      }
      catch (Error error)
      {
        System.err.println("AITPingPongImpl01.get: " + error);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException();
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    {
      com.arjuna.ats.jts.ExplicitInterposition interposition = new com.arjuna.ats.jts.ExplicitInterposition();

      interposition.registerTransaction(ctrl);

      AtomicTransaction atomicTransaction = new AtomicTransaction();

      try
      {
        atomicTransaction.begin();

        if (setlock(new Lock(LockMode.READ), 0) == LockResult.GRANTED)
        {
          try
          {
            _values[x][y].set_value(value);

            atomicTransaction.commit(true);
          }
          catch (InvocationException invocationException)
          {
            atomicTransaction.rollback();

            throw invocationException;
          }
        }
        else
        {
          atomicTransaction.rollback();

          throw new InvocationException(Reason.ReasonConcurrencyControl);
        }
      }
      catch (InvocationException invocationException)
      {
        interposition.unregisterTransaction();

        throw invocationException;
      }
      catch (Exception exception)
      {
        System.err.println("AITMatrixImpl03.set_value: " + exception);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException(Reason.ReasonUnknown);
      }
      catch (Error error)
      {
        System.err.println("AITMatrixImpl03.set_value: " + error);
        if (atomicTransaction.get_status() == Status.StatusActive)
        {
          atomicTransaction.rollback();
        }

        interposition.unregisterTransaction();

        throw new InvocationException(Reason.ReasonUnknown);
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

      _value = value;

      try
      {
        AtomicTransaction atomicTransaction = new AtomicTransaction();

        atomicTransaction.begin();

        if (setlock(new Lock(LockMode.WRITE), 0) == LockResult.GRANTED)
        {
          atomicTransaction.commit(true);
        }
        else
        {
          System.err.println("Element.Element: failed to get lock");
          atomicTransaction.rollback();

          throw new InvocationException(Reason.ReasonConcurrencyControl);
        }
      }
      catch (InvocationException invocationException)
View Full Code Here

Examples of com.arjuna.ats.jts.extensions.AtomicTransaction

    _value = 0;

    try
    {
      AtomicTransaction atomicTransaction = new AtomicTransaction();

      atomicTransaction.begin();

      if (setlock(new Lock(LockMode.WRITE), 0) == LockResult.GRANTED)
      {
        atomicTransaction.commit(true);
      }
      else
      {
        System.err.println("AITCounterImpl01.AITCounterImpl01: failed to get lock");
        atomicTransaction.rollback();

        throw new InvocationException();
      }
    }
    catch (InvocationException invocationException)
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.