killbill-memoizeit

Details

diff --git a/payment/src/main/resources/org/killbill/billing/payment/PaymentStates.xml b/payment/src/main/resources/org/killbill/billing/payment/PaymentStates.xml
index e6f68d2..ebfa2d2 100644
--- a/payment/src/main/resources/org/killbill/billing/payment/PaymentStates.xml
+++ b/payment/src/main/resources/org/killbill/billing/payment/PaymentStates.xml
@@ -95,6 +95,7 @@
         <stateMachine name="CAPTURE">
             <states>
                 <state name="CAPTURE_INIT"/>
+                <state name="CAPTURE_PENDING"/>
                 <state name="CAPTURE_SUCCESS"/>
                 <state name="CAPTURE_FAILED"/>
                 <state name="CAPTURE_ERRORED"/>
@@ -115,6 +116,30 @@
                 <transition>
                     <initialState>CAPTURE_INIT</initialState>
                     <operation>OP_CAPTURE</operation>
+                    <operationResult>PENDING</operationResult>
+                    <finalState>CAPTURE_PENDING</finalState>
+                </transition>
+                <transition>
+                    <initialState>CAPTURE_PENDING</initialState>
+                    <operation>OP_CAPTURE</operation>
+                    <operationResult>SUCCESS</operationResult>
+                    <finalState>CAPTURE_SUCCESS</finalState>
+                </transition>
+                <transition>
+                    <initialState>CAPTURE_PENDING</initialState>
+                    <operation>OP_CAPTURE</operation>
+                    <operationResult>FAILURE</operationResult>
+                    <finalState>CAPTURE_FAILED</finalState>
+                </transition>
+                <transition>
+                    <initialState>CAPTURE_PENDING</initialState>
+                    <operation>OP_CAPTURE</operation>
+                    <operationResult>EXCEPTION</operationResult>
+                    <finalState>CAPTURE_ERRORED</finalState>
+                </transition>
+                <transition>
+                    <initialState>CAPTURE_INIT</initialState>
+                    <operation>OP_CAPTURE</operation>
                     <operationResult>EXCEPTION</operationResult>
                     <finalState>CAPTURE_ERRORED</finalState>
                 </transition>
@@ -298,6 +323,7 @@
         <stateMachine name="VOID">
             <states>
                 <state name="VOID_INIT"/>
+                <state name="VOID_PENDING"/>
                 <state name="VOID_SUCCESS"/>
                 <state name="VOID_FAILED"/>
                 <state name="VOID_ERRORED"/>
@@ -318,6 +344,30 @@
                 <transition>
                     <initialState>VOID_INIT</initialState>
                     <operation>OP_VOID</operation>
+                    <operationResult>PENDING</operationResult>
+                    <finalState>VOID_PENDING</finalState>
+                </transition>
+                <transition>
+                    <initialState>VOID_PENDING</initialState>
+                    <operation>OP_VOID</operation>
+                    <operationResult>SUCCESS</operationResult>
+                    <finalState>VOID_SUCCESS</finalState>
+                </transition>
+                <transition>
+                    <initialState>VOID_PENDING</initialState>
+                    <operation>OP_VOID</operation>
+                    <operationResult>FAILURE</operationResult>
+                    <finalState>VOID_FAILED</finalState>
+                </transition>
+                <transition>
+                    <initialState>VOID_PENDING</initialState>
+                    <operation>OP_VOID</operation>
+                    <operationResult>EXCEPTION</operationResult>
+                    <finalState>VOID_ERRORED</finalState>
+                </transition>
+                <transition>
+                    <initialState>VOID_INIT</initialState>
+                    <operation>OP_VOID</operation>
                     <operationResult>EXCEPTION</operationResult>
                     <finalState>VOID_ERRORED</finalState>
                 </transition>
@@ -329,6 +379,7 @@
         <stateMachine name="CHARGEBACK">
             <states>
                 <state name="CHARGEBACK_INIT"/>
+                <state name="CHARGEBACK_PENDING"/>
                 <state name="CHARGEBACK_SUCCESS"/>
                 <state name="CHARGEBACK_FAILED"/>
                 <state name="CHARGEBACK_ERRORED"/>
@@ -349,6 +400,30 @@
                 <transition>
                     <initialState>CHARGEBACK_INIT</initialState>
                     <operation>OP_CHARGEBACK</operation>
+                    <operationResult>PENDING</operationResult>
+                    <finalState>CHARGEBACK_PENDING</finalState>
+                </transition>
+                <transition>
+                    <initialState>CHARGEBACK_PENDING</initialState>
+                    <operation>OP_CHARGEBACK</operation>
+                    <operationResult>SUCCESS</operationResult>
+                    <finalState>CHARGEBACK_SUCCESS</finalState>
+                </transition>
+                <transition>
+                    <initialState>CHARGEBACK_PENDING</initialState>
+                    <operation>OP_CHARGEBACK</operation>
+                    <operationResult>FAILURE</operationResult>
+                    <finalState>CHARGEBACK_FAILED</finalState>
+                </transition>
+                <transition>
+                    <initialState>CHARGEBACK_PENDING</initialState>
+                    <operation>OP_CHARGEBACK</operation>
+                    <operationResult>EXCEPTION</operationResult>
+                    <finalState>CHARGEBACK_ERRORED</finalState>
+                </transition>
+                <transition>
+                    <initialState>CHARGEBACK_INIT</initialState>
+                    <operation>OP_CHARGEBACK</operation>
                     <operationResult>EXCEPTION</operationResult>
                     <finalState>CHARGEBACK_ERRORED</finalState>
                 </transition>