Package com.arjuna.ats.internal.arjuna.abstractrecords

Examples of com.arjuna.ats.internal.arjuna.abstractrecords.RecoveryRecord


                    VisibilityLevel.VIS_PROTECTED, FacilityCode.FAC_STATE_MAN,
                    "StateManager::modified() for object-id " + get_uid());
        }

        BasicAction action = BasicAction.Current();
        RecoveryRecord record = null;

        if ((myType == ObjectType.NEITHER)
                || (currentStatus == ObjectStatus.DESTROYED)) /*
                                                               * NEITHER => no
                                                               * recovery info
                                                               */
        {
            return true;
        }

        if (currentStatus == ObjectStatus.PASSIVE)
        {
            if (tsLogger.arjLoggerI18N.isWarnEnabled())
                tsLogger.arjLoggerI18N
                        .warn("com.arjuna.ats.arjuna.StateManager_10");
            activate();
        }

        /*
         * Need not have gone through active if new object.
         */

        if (currentStatus == ObjectStatus.PASSIVE_NEW)
            currentStatus = ObjectStatus.ACTIVE_NEW;

        if (action != null)
        {
            /*
             * Check if this is the first call to modified in this action.
             * BasicList insert returns FALSE if the entry is already present.
             */

            synchronized (modifyingActions)
            {
                if ((modifyingActions.size() > 0)
                        && (modifyingActions.get(action.get_uid()) != null))
                {
                    return true;
                }
                else
                    modifyingActions.put(action.get_uid(), action);
            }

            /* If here then its a new action */

            OutputObjectState state = new OutputObjectState(objectUid, type());
            int rStatus = AddOutcome.AR_ADDED;

            if (save_state(state, ObjectType.RECOVERABLE))
            {
                if ((myType == ObjectType.RECOVERABLE)
                        && (objectModel == ObjectModel.SINGLE))
                {
                    record = new RecoveryRecord(state, this);
                }
                else
                    record = new PersistenceRecord(state, objectStore, this);

                if ((rStatus = action.add(record)) != AddOutcome.AR_ADDED)
View Full Code Here

TOP

Related Classes of com.arjuna.ats.internal.arjuna.abstractrecords.RecoveryRecord

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.