/** * Start time:16:19:33 2009-08-17<br> * Project: diameter-parent<br> * * @author <a href="mailto:baranowb@gmail.com">Bartosz Baranowski </a> */ package org.jdiameter.client.impl.app.cxdx; import org.jdiameter.api.app.AppEvent; import org.jdiameter.api.app.StateEvent; /** * Start time:16:19:33 2009-08-17<br> * Project: diameter-parent<br> * * @author <a href="mailto:baranowb@gmail.com">Bartosz Baranowski </a> */ public class Event implements StateEvent { enum Type { SEND_MESSAGE, RECEIVE_RTR, RECEIVE_PPR, TIMEOUT_EXPIRES, RECEIVE_UAA, RECEIVE_SAA, RECEIVE_LIA, RECEIVE_MAA; } AppEvent request; AppEvent answer; Type type; Event(Type type, AppEvent request, AppEvent answer) { this.type = type; this.answer = answer; this.request = request; } public <E> E encodeType(Class<E> eClass) { return eClass == Type.class ? (E) type : null; } public Enum getType() { return type; } public AppEvent getRequest() { return request; } public AppEvent getAnswer() { return answer; } public int compareTo(Object o) { return 0; } public Object getData() { return request != null ? request : answer; } /* * (non-Javadoc) * * @see org.jdiameter.api.app.StateEvent#setData(java.lang.Object) */ public void setData(Object data) { // TODO Auto-generated method stub } }