package com.voxeo.moho.media.input;
public class SignalGrammar extends Grammar {
public enum Signal {
FAX_CED, FAX_CNG, BEEP, RING, SIT, MODEM, OFFHOOK;
public static Signal parse(String value) {
if ("beep".equalsIgnoreCase(value)) {
return BEEP;
}
if ("modem".equalsIgnoreCase(value)) {
return MODEM;
}
if ("sit".equalsIgnoreCase(value)) {
return SIT;
}
if ("fax".equalsIgnoreCase(value)) {
return FAX_CED;
}
if ("fax-cng".equalsIgnoreCase(value)) {
return FAX_CNG;
}
if ("ring".equalsIgnoreCase(value)) {
return RING;
}
if ("offhook".equalsIgnoreCase(value)) {
return OFFHOOK;
}
return null;
}
@Override
public String toString() {
if (this == FAX_CED) {
return "fax";
}
if (this == FAX_CNG) {
return "fax-cng";
}
return super.toString();
}
}
protected final Signal _signal;
public SignalGrammar(final Signal signal, final boolean terminating) {
super(null, null, terminating);
_signal = signal;
}
public Signal getSignal() {
return _signal;
}
}