Commit 7bcb1cd09d0fd30a8f930b699f55be2ef5dbc680
1 parent
064d2ecd
Exists in
AFDemo_Ex6
AFDemo_Ex06
Showing
6 changed files
with
88 additions
and
8 deletions
Show diff stats
AF-Demo/src/af/control/StateManager.java
@@ -4,6 +4,7 @@ import af.interfaces.AFState; | @@ -4,6 +4,7 @@ import af.interfaces.AFState; | ||
4 | import af.state.StateIdle; | 4 | import af.state.StateIdle; |
5 | import af.state.StateWaitE01; | 5 | import af.state.StateWaitE01; |
6 | import af.state.StateWaitA; | 6 | import af.state.StateWaitA; |
7 | +import af.state.StateWaitC; | ||
7 | import ec02.af.abstracts.AbstractAFStateManager; | 8 | import ec02.af.abstracts.AbstractAFStateManager; |
8 | 9 | ||
9 | public class StateManager extends AbstractAFStateManager { | 10 | public class StateManager extends AbstractAFStateManager { |
@@ -18,5 +19,8 @@ public class StateManager extends AbstractAFStateManager { | @@ -18,5 +19,8 @@ public class StateManager extends AbstractAFStateManager { | ||
18 | else if (state.equals(AFState.W_ARes)) { | 19 | else if (state.equals(AFState.W_ARes)) { |
19 | this.afState = new StateWaitA(); | 20 | this.afState = new StateWaitA(); |
20 | } | 21 | } |
22 | + else if (state.equals(AFState.W_CRes)) { | ||
23 | + this.afState = new StateWaitC(); | ||
24 | + } | ||
21 | } | 25 | } |
22 | } | 26 | } |
AF-Demo/src/af/interfaces/AFState.java
@@ -2,6 +2,8 @@ package af.interfaces; | @@ -2,6 +2,8 @@ package af.interfaces; | ||
2 | 2 | ||
3 | public interface AFState { | 3 | public interface AFState { |
4 | public String IDLE = "IDLE"; | 4 | public String IDLE = "IDLE"; |
5 | + public String END = "END"; | ||
5 | public String W_E01Res = "W_DBRes"; | 6 | public String W_E01Res = "W_DBRes"; |
6 | public String W_ARes = "W_ARes"; | 7 | public String W_ARes = "W_ARes"; |
8 | + public String W_CRes = "W_CRes"; | ||
7 | } | 9 | } |
AF-Demo/src/af/message/EC02Builder.java
@@ -39,10 +39,10 @@ public class EC02Builder { | @@ -39,10 +39,10 @@ public class EC02Builder { | ||
39 | return eqxRawDataList; | 39 | return eqxRawDataList; |
40 | } | 40 | } |
41 | 41 | ||
42 | - public EquinoxRawData getHTTPResponse(EQXRawInstance eqxRaw){ | 42 | + public EquinoxRawData getHTTPResponse(EQXRawInstance eqxRaw,String invoke){ |
43 | eqxRaw.setType(EQXMsg.RESPONSE); | 43 | eqxRaw.setType(EQXMsg.RESPONSE); |
44 | this.msgBuilder = new EC02MSGBuilder(eqxRaw); | 44 | this.msgBuilder = new EC02MSGBuilder(eqxRaw); |
45 | - this.msgBuilder.setInvoke(this.ec02Ins.getAFInstance().getInvoke()); | 45 | + this.msgBuilder.setInvoke(invoke); |
46 | return this.msgBuilder.getHttpMessage(); | 46 | return this.msgBuilder.getHttpMessage(); |
47 | } | 47 | } |
48 | 48 |
AF-Demo/src/af/state/StateIdle.java
@@ -29,7 +29,7 @@ public class StateIdle implements IAFState { | @@ -29,7 +29,7 @@ public class StateIdle implements IAFState { | ||
29 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); | 29 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); |
30 | ec02Ins.getAFInstance().setInvoke(eqxRawData.getInvoke()); | 30 | ec02Ins.getAFInstance().setInvoke(eqxRawData.getInvoke()); |
31 | ec02Ins.getAFInstance().setOrig(eqxRawData.getRawDataAttribute(EQXMsg.ORIG)); | 31 | ec02Ins.getAFInstance().setOrig(eqxRawData.getRawDataAttribute(EQXMsg.ORIG)); |
32 | - | 32 | + /* |
33 | if(eqxRawData.getRawEventType().equals(AFEvent.Incoming_HTTP_Request)){ | 33 | if(eqxRawData.getRawEventType().equals(AFEvent.Incoming_HTTP_Request)){ |
34 | E01Instance e01Ins = new E01Instance(); | 34 | E01Instance e01Ins = new E01Instance(); |
35 | ArrayList<String> keys = new ArrayList<String>(); | 35 | ArrayList<String> keys = new ArrayList<String>(); |
@@ -48,9 +48,9 @@ public class StateIdle implements IAFState { | @@ -48,9 +48,9 @@ public class StateIdle implements IAFState { | ||
48 | abstractAF.getUtils().writeLog("mylog1", "hello word!!!"); | 48 | abstractAF.getUtils().writeLog("mylog1", "hello word!!!"); |
49 | abstractAF.getUtils().incrementStats("my_stat"); | 49 | abstractAF.getUtils().incrementStats("my_stat"); |
50 | abstractAF.getUtils().incrementStats("raise_by_stat"); | 50 | abstractAF.getUtils().incrementStats("raise_by_stat"); |
51 | - abstractAF.getUtils().raiseAlarm("my_alarm", parameter, AlarmSeverity.WARNING, AlarmCategory.APPLICATION, AlarmType.Normal); | ||
52 | - this.eqxState = AFState.W_E01Res; | ||
53 | - } | 51 | + abstractAF.getUtils().raiseAlarm("my_alarm", parameter, AlarmSeverity.WARNING, AlarmCategory.APPLICATION, AlarmType.Normal);*/ |
52 | + this.eqxState = AFState.W_ARes; | ||
53 | + //} | ||
54 | } | 54 | } |
55 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); | 55 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
56 | return this.eqxState; | 56 | return this.eqxState; |
AF-Demo/src/af/state/StateWaitA.java
@@ -25,7 +25,7 @@ public class StateWaitA implements IAFState { | @@ -25,7 +25,7 @@ public class StateWaitA implements IAFState { | ||
25 | 25 | ||
26 | for(EquinoxRawData eqxRawData : eqxRawDataList) { | 26 | for(EquinoxRawData eqxRawData : eqxRawDataList) { |
27 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); | 27 | this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); |
28 | - if(eqxRawData.getRawEventType().equals(AFEvent.Incoming_A_Response)){ | 28 | + /*if(eqxRawData.getRawEventType().equals(AFEvent.Incoming_A_Response)){ |
29 | StringExtract str = new StringExtract(); | 29 | StringExtract str = new StringExtract(); |
30 | HashMap<String, String> map = str.getAll(str.setMessage(eqxRawData.getRawDataMessage().trim())); | 30 | HashMap<String, String> map = str.getAll(str.setMessage(eqxRawData.getRawDataMessage().trim())); |
31 | String message = map.get("MSG[0].value"); | 31 | String message = map.get("MSG[0].value"); |
@@ -40,7 +40,15 @@ public class StateWaitA implements IAFState { | @@ -40,7 +40,15 @@ public class StateWaitA implements IAFState { | ||
40 | else { | 40 | else { |
41 | 41 | ||
42 | } | 42 | } |
43 | - } | 43 | + }*/ |
44 | + | ||
45 | + EQXRawInstance eqxRaw = new EQXRawInstance(); | ||
46 | + eqxRaw.setMessage("B Res."); | ||
47 | + eqxRaw.setTo(eqxRawData.getOrig()); | ||
48 | + eqxRaw.setCtype(EQXMsg.TEXTPLAIN); | ||
49 | + this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,eqxRawData.getInvoke())); | ||
50 | + this.eqxState = AFState.W_CRes; | ||
51 | + | ||
44 | } | 52 | } |
45 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); | 53 | ec02Ins.setEqxRawDataList(this.eqxRawDataList); |
46 | return this.eqxState; | 54 | return this.eqxState; |
@@ -0,0 +1,66 @@ | @@ -0,0 +1,66 @@ | ||
1 | +package af.state; | ||
2 | + | ||
3 | +import java.util.ArrayList; | ||
4 | +import java.util.HashMap; | ||
5 | + | ||
6 | +import th.co.ais.equinox.utils.StringExtract; | ||
7 | +import af.instatnce.EC02Instance; | ||
8 | +import af.instatnce.EQXRawInstance; | ||
9 | +import af.interfaces.AFEvent; | ||
10 | +import af.interfaces.AFState; | ||
11 | +import af.interfaces.EQXMsg; | ||
12 | +import af.message.EC02Builder; | ||
13 | +import ec02.af.abstracts.AbstractAF; | ||
14 | +import ec02.af.data.EquinoxRawData; | ||
15 | +import ec02.af.interfaces.IAFState; | ||
16 | + | ||
17 | +public class StateWaitC implements IAFState { | ||
18 | + private String eqxState = null; | ||
19 | + private EC02Builder ec02Builder = new EC02Builder(); | ||
20 | + private ArrayList<EquinoxRawData> eqxRawDataList = new ArrayList<EquinoxRawData>(); | ||
21 | + | ||
22 | + @Override | ||
23 | + public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) { | ||
24 | + EC02Instance ec02Ins = (EC02Instance)instance; | ||
25 | + | ||
26 | + for(EquinoxRawData eqxRawData : eqxRawDataList) { | ||
27 | + this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); | ||
28 | + /*if(eqxRawData.getRawEventType().equals(AFEvent.Incoming_A_Response)){ | ||
29 | + StringExtract str = new StringExtract(); | ||
30 | + HashMap<String, String> map = str.getAll(str.setMessage(eqxRawData.getRawDataMessage().trim())); | ||
31 | + String message = map.get("MSG[0].value"); | ||
32 | + if (message.trim().equals("SUCCESS")) { | ||
33 | + EQXRawInstance eqxRaw = new EQXRawInstance(); | ||
34 | + eqxRaw.setMessage(message.trim()); | ||
35 | + eqxRaw.setTo(ec02Ins.getAFInstance().getOrig()); | ||
36 | + eqxRaw.setCtype(EQXMsg.TEXTPLAIN); | ||
37 | + this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw)); | ||
38 | + this.eqxState = AFState.IDLE; | ||
39 | + } | ||
40 | + else { | ||
41 | + | ||
42 | + } | ||
43 | + }*/ | ||
44 | + | ||
45 | + EQXRawInstance eqxRaw = new EQXRawInstance(); | ||
46 | + eqxRaw.setMessage("C Res."); | ||
47 | + eqxRaw.setTo(eqxRawData.getOrig()); | ||
48 | + eqxRaw.setCtype(EQXMsg.TEXTPLAIN); | ||
49 | + this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,eqxRawData.getInvoke())); | ||
50 | + | ||
51 | + | ||
52 | + EQXRawInstance eqxRawA = new EQXRawInstance(); | ||
53 | + eqxRawA.setMessage("A Res."); | ||
54 | + eqxRawA.setTo(ec02Ins.getAFInstance().getOrig()); | ||
55 | + eqxRawA.setCtype(EQXMsg.TEXTPLAIN); | ||
56 | + this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRawA,ec02Ins.getAFInstance().getInvoke())); | ||
57 | + | ||
58 | + this.eqxState = AFState.END; | ||
59 | + | ||
60 | + | ||
61 | + | ||
62 | + } | ||
63 | + ec02Ins.setEqxRawDataList(this.eqxRawDataList); | ||
64 | + return this.eqxState; | ||
65 | + } | ||
66 | +} |