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

http://mobicents.googlecode.com/ · Java · 76 lines · 55 code · 16 blank · 5 comment · 2 complexity · 296f54a567872212c4e01ad45c61e969 MD5 · raw file

  1. package javax.megaco.message.descriptor;
  2. import java.io.Serializable;
  3. /**
  4. * Topology direction constants used in package javax.megaco.message.descriptor.
  5. * This class defines the topology direction for the megaco package.
  6. *
  7. */
  8. public class TopologyDirection implements Serializable {
  9. public static final int M_BOTHWAY = 0;
  10. public static final int M_ISOLATE = 1;
  11. public static final int M_ONEWAY = 2;
  12. public static final TopologyDirection BOTHWAY = new TopologyDirection(M_BOTHWAY);
  13. public static final TopologyDirection ISOLATE = new TopologyDirection(M_ISOLATE);
  14. public static final TopologyDirection ONEWAY = new TopologyDirection(M_ONEWAY);
  15. private int topology_direction;
  16. private TopologyDirection(int topology_direction) {
  17. this.topology_direction = topology_direction;
  18. }
  19. public int getTopologyDirection() {
  20. return this.topology_direction;
  21. }
  22. public static final TopologyDirection getObject(int value) throws IllegalArgumentException {
  23. TopologyDirection t = null;
  24. switch (value) {
  25. case M_BOTHWAY:
  26. t = BOTHWAY;
  27. break;
  28. case M_ISOLATE:
  29. t = ISOLATE;
  30. break;
  31. case M_ONEWAY:
  32. t = ONEWAY;
  33. break;
  34. default:
  35. throw new IllegalArgumentException("No TopologyDirection for value = " + value);
  36. }
  37. return t;
  38. }
  39. private Object readResolve() {
  40. return this.getObject(this.topology_direction);
  41. }
  42. @Override
  43. public String toString() {
  44. String t = null;
  45. switch (this.topology_direction) {
  46. case M_BOTHWAY:
  47. t = "TopologyDirection[BOTHWAY]";
  48. break;
  49. case M_ISOLATE:
  50. t = "TopologyDirection[ISOLATE]";
  51. break;
  52. case M_ONEWAY:
  53. t = "TopologyDirection[ONEWAY]";
  54. break;
  55. default:
  56. t = "TopologyDirection[" + this.topology_direction + "]";
  57. }
  58. return t;
  59. }
  60. }