Class RESTRecord

  • All Implemented Interfaces:
    Comparable

    public class RESTRecord
    extends com.arjuna.ats.arjuna.coordinator.AbstractRecord
    implements Comparable
    Log record for driving participants through 2PC and recovery
    • Field Detail

      • log

        protected static final org.jboss.logging.Logger log
    • Constructor Detail

      • RESTRecord

        public RESTRecord()
    • Method Detail

      • getCoordinatorURI

        public String getCoordinatorURI()
      • getTxId

        public String getTxId()
      • getRecoveryURI

        public String getRecoveryURI()
      • getParticipantURI

        protected String getParticipantURI()
      • typeIs

        public int typeIs()
        Specified by:
        typeIs in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • value

        public Object value()
        Specified by:
        value in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • getStatus

        public String getStatus()
      • getAge

        public long getAge()
      • setValue

        public void setValue​(Object o)
        Specified by:
        setValue in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • nestedAbort

        public int nestedAbort()
        Specified by:
        nestedAbort in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • nestedCommit

        public int nestedCommit()
        Specified by:
        nestedCommit in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • nestedPrepare

        public int nestedPrepare()
        Specified by:
        nestedPrepare in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • forgetHeuristic

        public boolean forgetHeuristic()
        Overrides:
        forgetHeuristic in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • topLevelPrepare

        public int topLevelPrepare()
        Specified by:
        topLevelPrepare in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • topLevelAbort

        public int topLevelAbort()
        Specified by:
        topLevelAbort in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • topLevelCommit

        public int topLevelCommit()
        Specified by:
        topLevelCommit in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • nestedOnePhaseCommit

        public int nestedOnePhaseCommit()
        Overrides:
        nestedOnePhaseCommit in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • topLevelOnePhaseCommit

        public int topLevelOnePhaseCommit()
        For commit_one_phase we can do whatever we want since the transaction outcome is whatever we want. Therefore, we do not need to save any additional recoverable state, such as a reference to the transaction coordinator, since it will not have an intentions list anyway.
        Overrides:
        topLevelOnePhaseCommit in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • save_state

        public boolean save_state​(com.arjuna.ats.arjuna.state.OutputObjectState os,
                                  int t)
        Overrides:
        save_state in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • restore_state

        public boolean restore_state​(com.arjuna.ats.arjuna.state.InputObjectState os,
                                     int t)
        Overrides:
        restore_state in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • type

        public String type()
        Overrides:
        type in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • typeName

        public static String typeName()
      • doSave

        public boolean doSave()
        Overrides:
        doSave in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • merge

        public void merge​(com.arjuna.ats.arjuna.coordinator.AbstractRecord a)
        Specified by:
        merge in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • alter

        public void alter​(com.arjuna.ats.arjuna.coordinator.AbstractRecord a)
        Specified by:
        alter in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • shouldAdd

        public boolean shouldAdd​(com.arjuna.ats.arjuna.coordinator.AbstractRecord a)
        Specified by:
        shouldAdd in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • shouldAlter

        public boolean shouldAlter​(com.arjuna.ats.arjuna.coordinator.AbstractRecord a)
        Specified by:
        shouldAlter in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • shouldMerge

        public boolean shouldMerge​(com.arjuna.ats.arjuna.coordinator.AbstractRecord a)
        Specified by:
        shouldMerge in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • shouldReplace

        public boolean shouldReplace​(com.arjuna.ats.arjuna.coordinator.AbstractRecord a)
        Specified by:
        shouldReplace in class com.arjuna.ats.arjuna.coordinator.AbstractRecord
      • setRecoveryURI

        public void setRecoveryURI​(String recoveryURI)
      • setFault

        public void setFault​(String name)