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 | } | ... | ... |