package af.state; import java.util.ArrayList; import java.util.Date; import af.instatnce.EC02Instance; import af.instatnce.EQXRawInstance; 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 eqxRawDataList = new ArrayList(); private Date date = null; @Override public String doAction(AbstractAF abstractAF, Object instance, ArrayList eqxRawDataList) { EC02Instance ec02Ins = (EC02Instance) instance; for (EquinoxRawData eqxRawData : eqxRawDataList) { if(eqxRawData.getType().equals("request")){ EQXRawInstance eqxRaw = new EQXRawInstance(); eqxRaw.setMessage("Already in use!"); eqxRaw.setTo(ec02Ins.getAFInstance().getOrig()); eqxRaw.setCtype(EQXMsg.TEXTPLAIN); this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,eqxRawData.getInvoke())); eqxState = ec02Ins.getAFInstance().getState(); } else{ if(ec02Ins.getEquinoxProperties().getDiag().equals("Timeout")){ this.eqxRawDataList=ec02Ins.getAFInstance().getTimeout(); eqxState = ec02Ins.getAFInstance().getState(); } else{ this.ec02Builder.setEquinoxRawData(eqxRawData, abstractAF, ec02Ins); /* * if(eqxRawData.getRawEventType().equals(AFEvent. * Incoming_A_Response)){ StringExtract str = new StringExtract(); * HashMap 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 eqxRawList = new ArrayList(); EQXRawInstance eqxRaw = new EQXRawInstance(); eqxRaw.setMessage("A Res."); eqxRaw.setTo(ec02Ins.getAFInstance().getOrig()); eqxRaw.setCtype(EQXMsg.TEXTPLAIN); this.eqxRawDataList.add(this.ec02Builder.getHTTPResponse(eqxRaw,ec02Ins.getAFInstance().getInvoke())); this.eqxState = AFState.IDLE; ec02Ins.getAFInstance().setInvoke(null); } } } ec02Ins.setEqxRawDataList(this.eqxRawDataList); ec02Ins.getAFInstance().setTimeout(this.eqxRawDataList); ec02Ins.getAFInstance().setState(eqxState); return this.eqxState; } }