package com.rayo.core; import java.util.Map; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; public class EndEvent extends AbstractCallEvent { public enum Reason { HANGUP, TIMEOUT, BUSY, REJECT, ERROR, REDIRECT } private Reason reason; private String errorText; private Map<String, String> headers; public EndEvent(String source, Map<String, String> headers) { super(source); this.headers = headers; } public EndEvent(String source, Reason reason, Map<String, String> headers) { super(source); this.reason = reason; this.headers = headers; } public EndEvent(String source, Reason reason, String errorText, Map<String, String> headers) { super(source); this.reason = reason; this.errorText = errorText; this.headers = headers; } public Reason getReason() { return reason; } public String getErrorText() { return errorText; } public Map<String, String> getHeaders() { return headers; } public void setHeaders(Map<String, String> headers) { this.headers = headers; } public void setReason(Reason reason) { this.reason = reason; } public void setErrorText(String errorText) { this.errorText = errorText; } @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE) .append("callId", getCallId()) .append("reason",reason) .append("errorText",errorText) .append("headers",headers) .toString(); } }