Commit ab936f842e3e0eb40def046ec6626d2d121e41e0
1 parent
87f93676
Exists in
AFDemo_Timeout_Ex3
and in
3 other branches
Time Out Template
Showing
7 changed files
with
100 additions
and
11 deletions
Show diff stats
AF-Demo/src/af/control/AFMain.java
| ... | ... | @@ -26,6 +26,7 @@ public class AFMain extends AbstractAF implements IEC02{ |
| 26 | 26 | throws ActionProcessException { |
| 27 | 27 | |
| 28 | 28 | AppLog.i("[CURRENT STATE] : " + eqxProp.getState()); |
| 29 | + AppLog.i("[CURRENT STATE] : " + eqxProp.getDiag()); | |
| 29 | 30 | EC02Instance ec02Ins = (EC02Instance) instance; |
| 30 | 31 | ec02Ins.setEquinoxProperties(eqxProp); |
| 31 | 32 | ec02Ins.setAbstractAF((AbstractAF) this); | ... | ... |
AF-Demo/src/af/instatnce/AFInstance.java
| 1 | 1 | package af.instatnce; |
| 2 | 2 | |
| 3 | +import java.util.ArrayList; | |
| 4 | + | |
| 5 | +import ec02.af.data.EquinoxRawData; | |
| 6 | + | |
| 3 | 7 | public class AFInstance { |
| 4 | 8 | |
| 5 | 9 | private String orig = ""; |
| 6 | 10 | private String invoke = ""; |
| 7 | - | |
| 11 | + private ArrayList<EquinoxRawData> timeout = null; | |
| 12 | + private String state =""; | |
| 8 | 13 | |
| 14 | + public String getState() { | |
| 15 | + return state; | |
| 16 | + } | |
| 17 | + public void setState(String state) { | |
| 18 | + this.state = state; | |
| 19 | + } | |
| 20 | + public ArrayList<EquinoxRawData> getTimeout() { | |
| 21 | + return timeout; | |
| 22 | + } | |
| 23 | + public void setTimeout(ArrayList<EquinoxRawData> timeout) { | |
| 24 | + this.timeout = timeout; | |
| 25 | + } | |
| 9 | 26 | public String getOrig(){ |
| 10 | 27 | return this.orig; |
| 11 | 28 | } | ... | ... |
| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | +package af.instatnce; | |
| 2 | + | |
| 3 | +public class TimeoutIns { | |
| 4 | + | |
| 5 | + private String orig = ""; | |
| 6 | + private String invoker = ""; | |
| 7 | + private String msg = ""; | |
| 8 | + private String ctype =""; | |
| 9 | + | |
| 10 | + public String getCtype() { | |
| 11 | + return ctype; | |
| 12 | + } | |
| 13 | + public void setCtype(String ctype) { | |
| 14 | + this.ctype = ctype; | |
| 15 | + } | |
| 16 | + public String getOrig() { | |
| 17 | + return orig; | |
| 18 | + } | |
| 19 | + public void setOrig(String orig) { | |
| 20 | + this.orig = orig; | |
| 21 | + } | |
| 22 | + public String getInvoker() { | |
| 23 | + return invoker; | |
| 24 | + } | |
| 25 | + public void setInvoker(String invoker) { | |
| 26 | + this.invoker = invoker; | |
| 27 | + } | |
| 28 | + public String getMsg() { | |
| 29 | + return msg; | |
| 30 | + } | |
| 31 | + public void setMsg(String msg) { | |
| 32 | + this.msg = msg; | |
| 33 | + } | |
| 34 | + | |
| 35 | +} | |
| 0 | 36 | \ No newline at end of file | ... | ... |
AF-Demo/src/af/message/EC02Builder.java
| ... | ... | @@ -39,10 +39,24 @@ public class EC02Builder { |
| 39 | 39 | return eqxRawDataList; |
| 40 | 40 | } |
| 41 | 41 | |
| 42 | - public EquinoxRawData getHTTPResponse(EQXRawInstance eqxRaw){ | |
| 42 | + public ArrayList<EquinoxRawData> getBRequest(ArrayList<EQXRawInstance> eqxRawList){ | |
| 43 | + ArrayList<EquinoxRawData> eqxRawDataList = new ArrayList<EquinoxRawData>(); | |
| 44 | + for (int i = 0; i < eqxRawList.size(); i++) { | |
| 45 | + eqxRawList.get(i).setType(EQXMsg.REQUEST); | |
| 46 | + this.msgBuilder = new EC02MSGBuilder(eqxRawList.get(i)); | |
| 47 | + this.msgBuilder.setInvoke(this.ec02Ins.getAFInstance().getInvoke() + i); | |
| 48 | + eqxRawDataList.add(this.msgBuilder.getHttpMessage()); | |
| 49 | + } | |
| 50 | + String timeoutConf = this.abstractAF.getUtils().getHmWarmConfig().get("HTTP-B-timeout").get(0); | |
| 51 | + String timeout = (timeoutConf == null) ? this.ec02Ins.getAbstractAF().getUtils().getHmWarmConfig().get("B-timeout").get(0) : timeoutConf; | |
| 52 | + this.ec02Ins.setTimeout(timeout); | |
| 53 | + return eqxRawDataList; | |
| 54 | + } | |
| 55 | + | |
| 56 | + public EquinoxRawData getHTTPResponse(EQXRawInstance eqxRaw,String invoke){ | |
| 43 | 57 | eqxRaw.setType(EQXMsg.RESPONSE); |
| 44 | 58 | this.msgBuilder = new EC02MSGBuilder(eqxRaw); |
| 45 | - this.msgBuilder.setInvoke(this.ec02Ins.getAFInstance().getInvoke()); | |
| 59 | + this.msgBuilder.setInvoke(invoke); | |
| 46 | 60 | return this.msgBuilder.getHttpMessage(); |
| 47 | 61 | } |
| 48 | 62 | ... | ... |
AF-Demo/src/af/state/StateIdle.java
| ... | ... | @@ -59,7 +59,7 @@ public class StateIdle implements IAFState { |
| 59 | 59 | eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-B").get(0)); |
| 60 | 60 | eqxRaw.setCtype(EQXMsg.TEXTXML); |
| 61 | 61 | eqxRawList.add(eqxRaw); |
| 62 | - ArrayList<EquinoxRawData> rawList = this.ec02Builder.getHTTPRequest(eqxRawList); | |
| 62 | + ArrayList<EquinoxRawData> rawList = this.ec02Builder.getBRequest(eqxRawList); | |
| 63 | 63 | for (int i = 0; i < rawList.size(); i++) { |
| 64 | 64 | this.eqxRawDataList.add(rawList.get(i)); |
| 65 | 65 | } |
| ... | ... | @@ -68,6 +68,8 @@ public class StateIdle implements IAFState { |
| 68 | 68 | |
| 69 | 69 | } |
| 70 | 70 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
| 71 | + ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); | |
| 72 | + ec02Ins.getAFInstance().setState(eqxState); | |
| 71 | 73 | return this.eqxState; |
| 72 | 74 | } |
| 73 | 75 | ... | ... |
AF-Demo/src/af/state/StateWaitA.java
| ... | ... | @@ -13,6 +13,7 @@ import af.message.EC02Builder; |
| 13 | 13 | import ec02.af.abstracts.AbstractAF; |
| 14 | 14 | import ec02.af.data.EquinoxRawData; |
| 15 | 15 | import ec02.af.interfaces.IAFState; |
| 16 | +import ec02.utils.AppLog; | |
| 16 | 17 | |
| 17 | 18 | public class StateWaitA implements IAFState { |
| 18 | 19 | private String eqxState = null; |
| ... | ... | @@ -22,8 +23,15 @@ public class StateWaitA implements IAFState { |
| 22 | 23 | @Override |
| 23 | 24 | public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { |
| 24 | 25 | EC02Instance ec02Ins = (EC02Instance) instance; |
| 25 | - | |
| 26 | + AppLog.d("######"+eqxRawDataList.size()); | |
| 27 | + if(ec02Ins.getEquinoxProperties().getDiag().equals("Timeout")){ | |
| 28 | + this.eqxRawDataList=ec02Ins.getAFInstance().getTimeout(); | |
| 29 | + eqxState = ec02Ins.getAFInstance().getState(); | |
| 30 | + | |
| 31 | + } | |
| 32 | + else{ | |
| 26 | 33 | for (EquinoxRawData eqxRawData : eqxRawDataList) { |
| 34 | + | |
| 27 | 35 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); |
| 28 | 36 | /* |
| 29 | 37 | * if(eqxRawData.getRawEventType().equals(AFEvent. |
| ... | ... | @@ -42,21 +50,25 @@ public class StateWaitA implements IAFState { |
| 42 | 50 | */ |
| 43 | 51 | |
| 44 | 52 | ArrayList<EQXRawInstance> eqxRawList = new ArrayList<EQXRawInstance>(); |
| 45 | - | |
| 53 | + | |
| 46 | 54 | EQXRawInstance eqxRaw = new EQXRawInstance(); |
| 47 | 55 | eqxRaw.setMessage("C Req."); |
| 48 | 56 | eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-C").get(0)); |
| 49 | 57 | eqxRaw.setCtype(EQXMsg.TEXTXML); |
| 50 | 58 | eqxRawList.add(eqxRaw); |
| 51 | - ArrayList<EquinoxRawData> rawList = this.ec02Builder.getHTTPRequest(eqxRawList); | |
| 59 | + ArrayList<EquinoxRawData> rawList = this.ec02Builder.getBRequest(eqxRawList); | |
| 52 | 60 | for (int i = 0; i < rawList.size(); i++) { |
| 53 | 61 | this.eqxRawDataList.add(rawList.get(i)); |
| 54 | 62 | } |
| 55 | 63 | |
| 56 | 64 | this.eqxState = AFState.W_CRes; |
| 57 | 65 | |
| 66 | + } | |
| 58 | 67 | } |
| 68 | + | |
| 59 | 69 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
| 70 | + ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); | |
| 71 | + ec02Ins.getAFInstance().setState(eqxState); | |
| 60 | 72 | return this.eqxState; |
| 61 | 73 | } |
| 62 | 74 | } | ... | ... |
AF-Demo/src/af/state/StateWaitC.java
| ... | ... | @@ -13,6 +13,7 @@ import af.message.EC02Builder; |
| 13 | 13 | import ec02.af.abstracts.AbstractAF; |
| 14 | 14 | import ec02.af.data.EquinoxRawData; |
| 15 | 15 | import ec02.af.interfaces.IAFState; |
| 16 | +import ec02.utils.AppLog; | |
| 16 | 17 | |
| 17 | 18 | public class StateWaitC implements IAFState { |
| 18 | 19 | private String eqxState = null; |
| ... | ... | @@ -22,7 +23,12 @@ public class StateWaitC implements IAFState { |
| 22 | 23 | @Override |
| 23 | 24 | public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { |
| 24 | 25 | EC02Instance ec02Ins = (EC02Instance) instance; |
| 25 | - | |
| 26 | + if(ec02Ins.getEquinoxProperties().getDiag().equals("Timeout")){ | |
| 27 | + this.eqxRawDataList=ec02Ins.getAFInstance().getTimeout(); | |
| 28 | + eqxState = ec02Ins.getAFInstance().getState(); | |
| 29 | + | |
| 30 | + } | |
| 31 | + else{ | |
| 26 | 32 | for (EquinoxRawData eqxRawData : eqxRawDataList) { |
| 27 | 33 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); |
| 28 | 34 | /* |
| ... | ... | @@ -40,16 +46,18 @@ public class StateWaitC implements IAFState { |
| 40 | 46 | * |
| 41 | 47 | * } } |
| 42 | 48 | */ |
| 43 | - | |
| 49 | + AppLog.d("THAT INVOKE --->"+ec02Ins.getAFInstance().getInvoke()); | |
| 44 | 50 | EQXRawInstance eqxRaw = new EQXRawInstance(); |
| 45 | 51 | eqxRaw.setMessage("A Res."); |
| 46 | 52 | eqxRaw.setTo(ec02Ins.getAFInstance().getOrig()); |
| 47 | 53 | eqxRaw.setCtype(EQXMsg.TEXTPLAIN); |
| 48 | - this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw)); | |
| 54 | + this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,ec02Ins.getAFInstance().getInvoke())); | |
| 49 | 55 | this.eqxState = AFState.IDLE; |
| 50 | - | |
| 56 | + } | |
| 51 | 57 | } |
| 52 | 58 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
| 59 | + ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); | |
| 60 | + ec02Ins.getAFInstance().setState(eqxState); | |
| 53 | 61 | return this.eqxState; |
| 54 | 62 | } |
| 55 | 63 | } | ... | ... |