EC02MSGBuilder.java 3.26 KB
package af.message;

import java.util.HashMap;
import java.util.Map;
import af.instatnce.EQXRawInstance;
import af.interfaces.EQXMsg;
import ec02.af.data.EquinoxRawData;

public class EC02MSGBuilder {
	private String message = null;
	private EQXRawInstance eqxRawIns = null;
	private EquinoxRawData eqxRawDatas = null;
	private Map<String, String> map = new HashMap<String, String>();
	private String invoke = null;
	
	public EC02MSGBuilder(){
		this.eqxRawDatas = new EquinoxRawData();
	}
	
	public EC02MSGBuilder(EQXRawInstance eqxRawIns){
		this.setEqxRawIns(eqxRawIns);
		this.eqxRawDatas = new EquinoxRawData();
	}

	public String getMessage() {
		return message;
	}

	public void setMessage(String message) {
		this.message = message;
	}
	
	public Map<String, String> getMap() {
		return map;
	}

	public void setMap(Map<String, String> map) {
		this.map = map;
	}

	public String getInvoke() {
		return invoke;
	}

	public void setInvoke(String invoke) {
		this.invoke = invoke;
	}
	
	public EquinoxRawData getDiameterMessage() {		
		if (this.invoke != null) 
			this.map.put(EQXMsg.INVOKE, this.invoke);
		this.map.put(EQXMsg.NAME, EQXMsg.DIAMETER);
		this.map.put(EQXMsg.TYPE, this.eqxRawIns.getType());
		this.map.put(EQXMsg.CTYPE, this.eqxRawIns.getCtype());
		this.eqxRawDatas.setRawDataAttributes(this.map);
		this.eqxRawDatas.setTo(this.eqxRawIns.getTo());
		this.eqxRawDatas.setRawMessage(this.eqxRawIns.getMessage());		

		return this.eqxRawDatas;
	}
		
	public EquinoxRawData getHttpMessage() {
		if (this.invoke != null) 
			this.map.put(EQXMsg.INVOKE, this.invoke);
		this.map.put(EQXMsg.NAME, EQXMsg.HTTP);
		this.map.put(EQXMsg.TYPE, this.eqxRawIns.getType());
		this.map.put(EQXMsg.CTYPE, this.eqxRawIns.getCtype());
		if(this.eqxRawIns.getCtype().equals(EQXMsg.TEXTPLAIN) || this.eqxRawIns.getCtype().equals(EQXMsg.TEXTHTML)) {
			this.map.put(EQXMsg.VAL, this.eqxRawIns.getMessage());
		}
		else {
			this.eqxRawDatas.setRawMessage(this.eqxRawIns.getMessage());	
		}
		this.eqxRawDatas.setRawDataAttributes(this.map);
		this.eqxRawDatas.setTo(this.eqxRawIns.getTo());
		
		return this.eqxRawDatas;
	}
	
	public EquinoxRawData getLdapMessage() {
		if (this.invoke != null)
			this.map.put(EQXMsg.INVOKE, this.invoke);
		this.map.put(EQXMsg.NAME, EQXMsg.LDAP);
		this.map.put(EQXMsg.TYPE, this.eqxRawIns.getType());
		this.map.put(EQXMsg.CTYPE, this.eqxRawIns.getCtype());
		this.map.put(EQXMsg.OID, this.eqxRawIns.getOid());
		this.eqxRawDatas.setRawDataAttributes(this.map);
		this.eqxRawDatas.setTo(this.eqxRawIns.getTo());
		this.eqxRawDatas.setRawMessage(this.eqxRawIns.getMessage());
	
		return this.eqxRawDatas;
	}
	
	public EquinoxRawData getSMPPMessage() {
		if (this.invoke != null) 
			this.map.put(EQXMsg.INVOKE, this.invoke);
		this.map.put(EQXMsg.NAME, EQXMsg.SMPP);
		this.map.put(EQXMsg.TYPE, this.eqxRawIns.getType());
		this.map.put(EQXMsg.CTYPE, this.eqxRawIns.getCtype());
		this.eqxRawDatas.setRawDataAttributes(this.map);
		this.eqxRawDatas.setTo(this.eqxRawIns.getTo());
		this.eqxRawDatas.setRawMessage(this.eqxRawIns.getMessage());
		
		return this.eqxRawDatas;
	}	
	
	public EquinoxRawData getUpdateIns() {
		return this.eqxRawDatas;
	}
	
	public EQXRawInstance getEqxRawIns() {
		return eqxRawIns;
	}

	public void setEqxRawIns(EQXRawInstance eqxRawIns) {
		this.eqxRawIns = eqxRawIns;
	}
}