/protocols/jain-megaco/megaco-api/src/main/java/javax/megaco/message/CmdResponseType.java

http://mobicents.googlecode.com/ · Java · 123 lines · 96 code · 27 blank · 0 comment · 2 complexity · 3f063afb8b33ca7d1c6ed2dca73aa272 MD5 · raw file

  1. package javax.megaco.message;
  2. import java.io.Serializable;
  3. public class CmdResponseType implements Serializable {
  4. public static final int M_ADD_RESP = 1;
  5. public static final int M_MODIFY_RESP = 2;
  6. public static final int M_MOVE_RESP = 3;
  7. public static final int M_SERVICE_CHANGE_RESP = 4;
  8. public static final int M_NOTIFY_RESP = 5;
  9. public static final int M_AUDIT_VAL_RESP = 6;
  10. public static final int M_AUDIT_CAP_RESP = 7;
  11. public static final int M_SUBTRACT_RESP = 8;
  12. public static final CmdResponseType ADD_RESP = new CmdResponseType(M_ADD_RESP);
  13. public static final CmdResponseType MODIFY_RESP = new CmdResponseType(M_MODIFY_RESP);
  14. public static final CmdResponseType MOVE_RESP = new CmdResponseType(M_MOVE_RESP);
  15. public static final CmdResponseType SERVICE_CHANGE_RESP = new CmdResponseType(M_SERVICE_CHANGE_RESP);
  16. public static final CmdResponseType NOTIFY_RESP = new CmdResponseType(M_NOTIFY_RESP);
  17. public static final CmdResponseType AUDIT_VAL_RESP = new CmdResponseType(M_AUDIT_VAL_RESP);
  18. public static final CmdResponseType AUDIT_CAP_RESP = new CmdResponseType(M_AUDIT_CAP_RESP);
  19. public static final CmdResponseType SUBTRACT_RESP = new CmdResponseType(M_SUBTRACT_RESP);
  20. private int cmd_type;
  21. private CmdResponseType(int cmd_type) {
  22. this.cmd_type = cmd_type;
  23. }
  24. public int getResponseType() {
  25. return this.cmd_type;
  26. }
  27. public static final CmdResponseType getObject(int value) throws IllegalArgumentException {
  28. CmdResponseType c = null;
  29. switch (value) {
  30. case M_ADD_RESP:
  31. c = ADD_RESP;
  32. break;
  33. case M_MODIFY_RESP:
  34. c = MODIFY_RESP;
  35. break;
  36. case M_MOVE_RESP:
  37. c = MOVE_RESP;
  38. break;
  39. case M_SERVICE_CHANGE_RESP:
  40. c = SERVICE_CHANGE_RESP;
  41. break;
  42. case M_NOTIFY_RESP:
  43. c = NOTIFY_RESP;
  44. break;
  45. case M_AUDIT_VAL_RESP:
  46. c = AUDIT_VAL_RESP;
  47. break;
  48. case M_AUDIT_CAP_RESP:
  49. c = AUDIT_CAP_RESP;
  50. break;
  51. case M_SUBTRACT_RESP:
  52. c = SUBTRACT_RESP;
  53. break;
  54. default:
  55. IllegalArgumentException illegalArgumentException = new IllegalArgumentException("No CmdResponseType found for value = " + value);
  56. throw illegalArgumentException;
  57. }
  58. return c;
  59. }
  60. private Object readResolve() {
  61. return this.getObject(this.cmd_type);
  62. }
  63. @Override
  64. public String toString() {
  65. String c = null;
  66. switch (this.cmd_type) {
  67. case M_ADD_RESP:
  68. c = "CmdResponseType[ADD_RESP]";
  69. break;
  70. case M_MODIFY_RESP:
  71. c = "CmdResponseType[MODIFY_RESP]";
  72. break;
  73. case M_MOVE_RESP:
  74. c = "CmdResponseType[MOVE_RESP]";
  75. break;
  76. case M_SERVICE_CHANGE_RESP:
  77. c = "CmdResponseType[SERVICE_CHANGE_RESP]";
  78. break;
  79. case M_NOTIFY_RESP:
  80. c = "CmdResponseType[NOTIFY_RESP]";
  81. break;
  82. case M_AUDIT_VAL_RESP:
  83. c = "CmdResponseType[AUDIT_VAL_RESP]";
  84. break;
  85. case M_AUDIT_CAP_RESP:
  86. c = "CmdResponseType[AUDIT_CAP_RESP]";
  87. break;
  88. case M_SUBTRACT_RESP:
  89. c = "CmdResponseType[SUBTRACT_RESP]";
  90. break;
  91. default:
  92. c = "CmdResponseType[" + this.cmd_type + "]";
  93. }
  94. return c;
  95. }
  96. }