Commit f2658faaaadfc02dbca05adec88999574fb6ecb9

Authored by Suraputt Suntimitr
1 parent 72f9d45b
Exists in AFDemo_Timeout_Ex3

Eqx Timeout Flow3

AF-Demo/src/af/state/StateIdle.java
... ... @@ -22,11 +22,9 @@ public class StateIdle implements IAFState {
22 22 @Override
23 23 public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) {
24 24 EC02Instance ec02Ins = (EC02Instance) instance;
25   - if(ec02Ins.getAFInstance().getInvoke()!=null){
  25 + AppLog.d("%%%%%%%"+ec02Ins.getAFInstance().getInvoke());
  26 + if(ec02Ins.getAFInstance().getInvoke()!=""){
26 27 for(EquinoxRawData eqxRawData : eqxRawDataList){
27   - this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins);
28   - ec02Ins.getAFInstance().setInvoke(eqxRawData.getInvoke());
29   - ec02Ins.getAFInstance().setOrig(eqxRawData.getRawDataAttribute(EQXMsg.ORIG));
30 28 EQXRawInstance eqxRaw = new EQXRawInstance();
31 29 eqxRaw.setMessage("Already in use!");
32 30 eqxRaw.setTo(ec02Ins.getAFInstance().getOrig());
... ... @@ -38,6 +36,7 @@ public class StateIdle implements IAFState {
38 36 else{
39 37 for(EquinoxRawData eqxRawData : eqxRawDataList){
40 38 this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins);
  39 + AppLog.d("%%%%%%%"+ec02Ins.getAFInstance().getInvoke());
41 40 ec02Ins.getAFInstance().setInvoke(eqxRawData.getInvoke());
42 41 ec02Ins.getAFInstance().setOrig(eqxRawData.getRawDataAttribute(EQXMsg.ORIG));
43 42  
... ...
AF-Demo/src/af/state/StateWaitA.java
... ... @@ -22,12 +22,21 @@ public class StateWaitA implements IAFState {
22 22 @Override
23 23 public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) {
24 24 EC02Instance ec02Ins = (EC02Instance) instance;
  25 + for (EquinoxRawData eqxRawData : eqxRawDataList) {
  26 + if(eqxRawData.getType().equals("request")){
  27 + EQXRawInstance eqxRaw = new EQXRawInstance();
  28 + eqxRaw.setMessage("Already in use!");
  29 + eqxRaw.setTo(ec02Ins.getAFInstance().getOrig());
  30 + eqxRaw.setCtype(EQXMsg.TEXTPLAIN);
  31 + this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,eqxRawData.getInvoke()));
  32 + eqxState = ec02Ins.getAFInstance().getState();
  33 + }
  34 + else{
25 35 if(ec02Ins.getEquinoxProperties().getDiag().equals("Timeout")){
26 36 this.eqxRawDataList=ec02Ins.getAFInstance().getTimeout();
27 37 eqxState = ec02Ins.getAFInstance().getState();
28 38 }
29 39 else{
30   - for (EquinoxRawData eqxRawData : eqxRawDataList) {
31 40  
32 41 this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins);
33 42 /*
... ... @@ -56,9 +65,10 @@ public class StateWaitA implements IAFState {
56 65 this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,ec02Ins.getAFInstance().getInvoke()));
57 66 this.eqxState = AFState.IDLE;
58 67 ec02Ins.getAFInstance().setInvoke(null);
  68 +
  69 + }
59 70 }
60 71 }
61   -
62 72 ec02Ins.setEqxRawDataList(this.eqxRawDataList);
63 73 ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList);
64 74 ec02Ins.getAFInstance().setState(eqxState);
... ...