/protocols/ss7/m3ua/impl/src/main/java/org/mobicents/protocols/ss7/m3ua/impl/message/mgmt/ErrorImpl.java

http://mobicents.googlecode.com/ · Java · 113 lines · 66 code · 21 blank · 26 comment · 6 complexity · 6072f1562660000d422652b569260f16 MD5 · raw file

  1. /*
  2. * JBoss, Home of Professional Open Source
  3. * Copyright 2011, Red Hat, Inc. and individual contributors
  4. * by the @authors tag. See the copyright.txt in the distribution for a
  5. * full listing of individual contributors.
  6. *
  7. * This is free software; you can redistribute it and/or modify it
  8. * under the terms of the GNU Lesser General Public License as
  9. * published by the Free Software Foundation; either version 2.1 of
  10. * the License, or (at your option) any later version.
  11. *
  12. * This software is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15. * Lesser General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU Lesser General Public
  18. * License along with this software; if not, write to the Free
  19. * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  20. * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  21. */
  22. package org.mobicents.protocols.ss7.m3ua.impl.message.mgmt;
  23. import java.nio.ByteBuffer;
  24. import org.mobicents.protocols.ss7.m3ua.impl.message.M3UAMessageImpl;
  25. import org.mobicents.protocols.ss7.m3ua.impl.parameter.ParameterImpl;
  26. import org.mobicents.protocols.ss7.m3ua.message.MessageClass;
  27. import org.mobicents.protocols.ss7.m3ua.message.MessageType;
  28. import org.mobicents.protocols.ss7.m3ua.message.mgmt.Error;
  29. import org.mobicents.protocols.ss7.m3ua.parameter.AffectedPointCode;
  30. import org.mobicents.protocols.ss7.m3ua.parameter.DiagnosticInfo;
  31. import org.mobicents.protocols.ss7.m3ua.parameter.ErrorCode;
  32. import org.mobicents.protocols.ss7.m3ua.parameter.NetworkAppearance;
  33. import org.mobicents.protocols.ss7.m3ua.parameter.Parameter;
  34. import org.mobicents.protocols.ss7.m3ua.parameter.RoutingContext;
  35. /**
  36. *
  37. * @author amit bhayani
  38. *
  39. */
  40. public class ErrorImpl extends M3UAMessageImpl implements Error {
  41. public ErrorImpl() {
  42. super(MessageClass.MANAGEMENT, MessageType.ERROR, MessageType.S_ERROR);
  43. }
  44. @Override
  45. protected void encodeParams(ByteBuffer buffer) {
  46. ((ParameterImpl) parameters.get(Parameter.Error_Code)).write(buffer);
  47. if (parameters.containsKey(Parameter.Routing_Context)) {
  48. ((ParameterImpl) parameters.get(Parameter.Routing_Context)).write(buffer);
  49. }
  50. if (parameters.containsKey(Parameter.Affected_Point_Code)) {
  51. ((ParameterImpl) parameters.get(Parameter.Affected_Point_Code)).write(buffer);
  52. }
  53. if (parameters.containsKey(Parameter.Network_Appearance)) {
  54. ((ParameterImpl) parameters.get(Parameter.Network_Appearance)).write(buffer);
  55. }
  56. if (parameters.containsKey(Parameter.Diagnostic_Information)) {
  57. ((ParameterImpl) parameters.get(Parameter.Diagnostic_Information)).write(buffer);
  58. }
  59. }
  60. public AffectedPointCode getAffectedPointCode() {
  61. return ((AffectedPointCode) parameters.get(Parameter.Affected_Point_Code));
  62. }
  63. public DiagnosticInfo getDiagnosticInfo() {
  64. return ((DiagnosticInfo) parameters.get(Parameter.Diagnostic_Information));
  65. }
  66. public ErrorCode getErrorCode() {
  67. return ((ErrorCode) parameters.get(Parameter.Error_Code));
  68. }
  69. public NetworkAppearance getNetworkAppearance() {
  70. return ((NetworkAppearance) parameters.get(Parameter.Network_Appearance));
  71. }
  72. public RoutingContext getRoutingContext() {
  73. return ((RoutingContext) parameters.get(Parameter.Routing_Context));
  74. }
  75. public void setAffectedPointCode(AffectedPointCode affPc) {
  76. parameters.put(Parameter.Affected_Point_Code, affPc);
  77. }
  78. public void setDiagnosticInfo(DiagnosticInfo diagInfo) {
  79. parameters.put(Parameter.Diagnostic_Information, diagInfo);
  80. }
  81. public void setErrorCode(ErrorCode code) {
  82. parameters.put(Parameter.Error_Code, code);
  83. }
  84. public void setNetworkAppearance(NetworkAppearance netApp) {
  85. parameters.put(Parameter.Network_Appearance, netApp);
  86. }
  87. public void setRoutingContext(RoutingContext rc) {
  88. if (rc != null) {
  89. parameters.put(Parameter.Routing_Context, rc);
  90. }
  91. }
  92. }