StateWaitA.java
2.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package af.state;
import java.util.ArrayList;
import java.util.HashMap;
import th.co.ais.equinox.utils.StringExtract;
import af.instatnce.EC02Instance;
import af.instatnce.EQXRawInstance;
import af.interfaces.AFEvent;
import af.interfaces.AFState;
import af.interfaces.EQXMsg;
import af.message.EC02Builder;
import ec02.af.abstracts.AbstractAF;
import ec02.af.data.EquinoxRawData;
import ec02.af.interfaces.IAFState;
import ec02.utils.AppLog;
public class StateWaitA implements IAFState {
private String eqxState = null;
private EC02Builder ec02Builder = new EC02Builder();
private ArrayList<EquinoxRawData> eqxRawDataList = new ArrayList<EquinoxRawData>();
@Override
public String doAction(AbstractAF abstractAF, Object instance, ArrayList<EquinoxRawData> eqxRawDataList) {
EC02Instance ec02Ins = (EC02Instance) instance;
AppLog.d("######"+eqxRawDataList.size());
if(ec02Ins.getEquinoxProperties().getDiag().equals("Timeout")){
this.eqxRawDataList=ec02Ins.getAFInstance().getTimeout();
eqxState = ec02Ins.getAFInstance().getState();
}
else{
for (EquinoxRawData eqxRawData : eqxRawDataList) {
this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins);
/*
* if(eqxRawData.getRawEventType().equals(AFEvent.
* Incoming_A_Response)){ StringExtract str = new StringExtract();
* HashMap<String, String> map =
* str.getAll(str.setMessage(eqxRawData.getRawDataMessage().trim()))
* ; String message = map.get("MSG[0].value"); if
* (message.trim().equals("SUCCESS")) { EQXRawInstance eqxRaw = new
* EQXRawInstance(); eqxRaw.setMessage(message.trim());
* eqxRaw.setTo(ec02Ins.getAFInstance().getOrig());
* eqxRaw.setCtype(EQXMsg.TEXTPLAIN);
* this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw))
* ; this.eqxState = AFState.IDLE; } else {
*
* } }
*/
ArrayList<EQXRawInstance> eqxRawList = new ArrayList<EQXRawInstance>();
EQXRawInstance eqxRaw = new EQXRawInstance();
eqxRaw.setMessage("C Req.");
eqxRaw.setTo(abstractAF.getUtils().getHmWarmConfig().get("Resource-Name-C").get(0));
eqxRaw.setCtype(EQXMsg.TEXTXML);
eqxRawList.add(eqxRaw);
ArrayList<EquinoxRawData> rawList = this.ec02Builder.getBRequest(eqxRawList);
for (int i = 0; i < rawList.size(); i++) {
this.eqxRawDataList.add(rawList.get(i));
}
this.eqxState = AFState.W_CRes;
}
}
ec02Ins.setEqxRawDataList(this.eqxRawDataList);
ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList);
ec02Ins.getAFInstance().setState(eqxState);
return this.eqxState;
}
}