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,6 +26,7 @@ public class AFMain extends AbstractAF implements IEC02{ | ||
| 26 | throws ActionProcessException { | 26 | throws ActionProcessException { |
| 27 | 27 | ||
| 28 | AppLog.i("[CURRENT STATE] : " + eqxProp.getState()); | 28 | AppLog.i("[CURRENT STATE] : " + eqxProp.getState()); |
| 29 | + AppLog.i("[CURRENT STATE] : " + eqxProp.getDiag()); | ||
| 29 | EC02Instance ec02Ins = (EC02Instance) instance; | 30 | EC02Instance ec02Ins = (EC02Instance) instance; |
| 30 | ec02Ins.setEquinoxProperties(eqxProp); | 31 | ec02Ins.setEquinoxProperties(eqxProp); |
| 31 | ec02Ins.setAbstractAF((AbstractAF) this); | 32 | ec02Ins.setAbstractAF((AbstractAF) this); |
AF-Demo/src/af/instatnce/AFInstance.java
| 1 | package af.instatnce; | 1 | package af.instatnce; |
| 2 | 2 | ||
| 3 | +import java.util.ArrayList; | ||
| 4 | + | ||
| 5 | +import ec02.af.data.EquinoxRawData; | ||
| 6 | + | ||
| 3 | public class AFInstance { | 7 | public class AFInstance { |
| 4 | 8 | ||
| 5 | private String orig = ""; | 9 | private String orig = ""; |
| 6 | private String invoke = ""; | 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 | public String getOrig(){ | 26 | public String getOrig(){ |
| 10 | return this.orig; | 27 | return this.orig; |
| 11 | } | 28 | } |
| @@ -0,0 +1,35 @@ | @@ -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 | \ No newline at end of file | 36 | \ No newline at end of file |
AF-Demo/src/af/message/EC02Builder.java
| @@ -39,10 +39,24 @@ public class EC02Builder { | @@ -39,10 +39,24 @@ public class EC02Builder { | ||
| 39 | return eqxRawDataList; | 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 | eqxRaw.setType(EQXMsg.RESPONSE); | 57 | eqxRaw.setType(EQXMsg.RESPONSE); |
| 44 | this.msgBuilder = new EC02MSGBuilder(eqxRaw); | 58 | this.msgBuilder = new EC02MSGBuilder(eqxRaw); |
| 45 | - this.msgBuilder.setInvoke(this.ec02Ins.getAFInstance().getInvoke()); | 59 | + this.msgBuilder.setInvoke(invoke); |
| 46 | return this.msgBuilder.getHttpMessage(); | 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,7 +59,7 @@ public class StateIdle implements IAFState { | ||
| 59 | eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-B").get(0)); | 59 | eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-B").get(0)); |
| 60 | eqxRaw.setCtype(EQXMsg.TEXTXML); | 60 | eqxRaw.setCtype(EQXMsg.TEXTXML); |
| 61 | eqxRawList.add(eqxRaw); | 61 | eqxRawList.add(eqxRaw); |
| 62 | - ArrayList<EquinoxRawData> rawList = this.ec02Builder.getHTTPRequest(eqxRawList); | 62 | + ArrayList<EquinoxRawData> rawList = this.ec02Builder.getBRequest(eqxRawList); |
| 63 | for (int i = 0; i < rawList.size(); i++) { | 63 | for (int i = 0; i < rawList.size(); i++) { |
| 64 | this.eqxRawDataList.add(rawList.get(i)); | 64 | this.eqxRawDataList.add(rawList.get(i)); |
| 65 | } | 65 | } |
| @@ -68,6 +68,8 @@ public class StateIdle implements IAFState { | @@ -68,6 +68,8 @@ public class StateIdle implements IAFState { | ||
| 68 | 68 | ||
| 69 | } | 69 | } |
| 70 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); | 70 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
| 71 | + ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); | ||
| 72 | + ec02Ins.getAFInstance().setState(eqxState); | ||
| 71 | return this.eqxState; | 73 | return this.eqxState; |
| 72 | } | 74 | } |
| 73 | 75 |
AF-Demo/src/af/state/StateWaitA.java
| @@ -13,6 +13,7 @@ import af.message.EC02Builder; | @@ -13,6 +13,7 @@ import af.message.EC02Builder; | ||
| 13 | import ec02.af.abstracts.AbstractAF; | 13 | import ec02.af.abstracts.AbstractAF; |
| 14 | import ec02.af.data.EquinoxRawData; | 14 | import ec02.af.data.EquinoxRawData; |
| 15 | import ec02.af.interfaces.IAFState; | 15 | import ec02.af.interfaces.IAFState; |
| 16 | +import ec02.utils.AppLog; | ||
| 16 | 17 | ||
| 17 | public class StateWaitA implements IAFState { | 18 | public class StateWaitA implements IAFState { |
| 18 | private String eqxState = null; | 19 | private String eqxState = null; |
| @@ -22,8 +23,15 @@ public class StateWaitA implements IAFState { | @@ -22,8 +23,15 @@ public class StateWaitA implements IAFState { | ||
| 22 | @Override | 23 | @Override |
| 23 | public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { | 24 | public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { |
| 24 | EC02Instance ec02Ins = (EC02Instance) instance; | 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 | for (EquinoxRawData eqxRawData : eqxRawDataList) { | 33 | for (EquinoxRawData eqxRawData : eqxRawDataList) { |
| 34 | + | ||
| 27 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); | 35 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); |
| 28 | /* | 36 | /* |
| 29 | * if(eqxRawData.getRawEventType().equals(AFEvent. | 37 | * if(eqxRawData.getRawEventType().equals(AFEvent. |
| @@ -42,21 +50,25 @@ public class StateWaitA implements IAFState { | @@ -42,21 +50,25 @@ public class StateWaitA implements IAFState { | ||
| 42 | */ | 50 | */ |
| 43 | 51 | ||
| 44 | ArrayList<EQXRawInstance> eqxRawList = new ArrayList<EQXRawInstance>(); | 52 | ArrayList<EQXRawInstance> eqxRawList = new ArrayList<EQXRawInstance>(); |
| 45 | - | 53 | + |
| 46 | EQXRawInstance eqxRaw = new EQXRawInstance(); | 54 | EQXRawInstance eqxRaw = new EQXRawInstance(); |
| 47 | eqxRaw.setMessage("C Req."); | 55 | eqxRaw.setMessage("C Req."); |
| 48 | eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-C").get(0)); | 56 | eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-C").get(0)); |
| 49 | eqxRaw.setCtype(EQXMsg.TEXTXML); | 57 | eqxRaw.setCtype(EQXMsg.TEXTXML); |
| 50 | eqxRawList.add(eqxRaw); | 58 | eqxRawList.add(eqxRaw); |
| 51 | - ArrayList<EquinoxRawData> rawList = this.ec02Builder.getHTTPRequest(eqxRawList); | 59 | + ArrayList<EquinoxRawData> rawList = this.ec02Builder.getBRequest(eqxRawList); |
| 52 | for (int i = 0; i < rawList.size(); i++) { | 60 | for (int i = 0; i < rawList.size(); i++) { |
| 53 | this.eqxRawDataList.add(rawList.get(i)); | 61 | this.eqxRawDataList.add(rawList.get(i)); |
| 54 | } | 62 | } |
| 55 | 63 | ||
| 56 | this.eqxState = AFState.W_CRes; | 64 | this.eqxState = AFState.W_CRes; |
| 57 | 65 | ||
| 66 | + } | ||
| 58 | } | 67 | } |
| 68 | + | ||
| 59 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); | 69 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
| 70 | + ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); | ||
| 71 | + ec02Ins.getAFInstance().setState(eqxState); | ||
| 60 | return this.eqxState; | 72 | return this.eqxState; |
| 61 | } | 73 | } |
| 62 | } | 74 | } |
AF-Demo/src/af/state/StateWaitC.java
| @@ -13,6 +13,7 @@ import af.message.EC02Builder; | @@ -13,6 +13,7 @@ import af.message.EC02Builder; | ||
| 13 | import ec02.af.abstracts.AbstractAF; | 13 | import ec02.af.abstracts.AbstractAF; |
| 14 | import ec02.af.data.EquinoxRawData; | 14 | import ec02.af.data.EquinoxRawData; |
| 15 | import ec02.af.interfaces.IAFState; | 15 | import ec02.af.interfaces.IAFState; |
| 16 | +import ec02.utils.AppLog; | ||
| 16 | 17 | ||
| 17 | public class StateWaitC implements IAFState { | 18 | public class StateWaitC implements IAFState { |
| 18 | private String eqxState = null; | 19 | private String eqxState = null; |
| @@ -22,7 +23,12 @@ public class StateWaitC implements IAFState { | @@ -22,7 +23,12 @@ public class StateWaitC implements IAFState { | ||
| 22 | @Override | 23 | @Override |
| 23 | public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { | 24 | public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { |
| 24 | EC02Instance ec02Ins = (EC02Instance) instance; | 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 | for (EquinoxRawData eqxRawData : eqxRawDataList) { | 32 | for (EquinoxRawData eqxRawData : eqxRawDataList) { |
| 27 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); | 33 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); |
| 28 | /* | 34 | /* |
| @@ -40,16 +46,18 @@ public class StateWaitC implements IAFState { | @@ -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 | EQXRawInstance eqxRaw = new EQXRawInstance(); | 50 | EQXRawInstance eqxRaw = new EQXRawInstance(); |
| 45 | eqxRaw.setMessage("A Res."); | 51 | eqxRaw.setMessage("A Res."); |
| 46 | eqxRaw.setTo(ec02Ins.getAFInstance().getOrig()); | 52 | eqxRaw.setTo(ec02Ins.getAFInstance().getOrig()); |
| 47 | eqxRaw.setCtype(EQXMsg.TEXTPLAIN); | 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 | this.eqxState = AFState.IDLE; | 55 | this.eqxState = AFState.IDLE; |
| 50 | - | 56 | + } |
| 51 | } | 57 | } |
| 52 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); | 58 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
| 59 | + ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); | ||
| 60 | + ec02Ins.getAFInstance().setState(eqxState); | ||
| 53 | return this.eqxState; | 61 | return this.eqxState; |
| 54 | } | 62 | } |
| 55 | } | 63 | } |