/protocols/ss7/m3ua/impl/src/main/java/org/mobicents/protocols/ss7/m3ua/impl/message/mgmt/NotifyImpl.java
Java | 103 lines | 60 code | 17 blank | 26 comment | 9 complexity | 814aa57e97c86966b8d0a9a211a350a6 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 23package org.mobicents.protocols.ss7.m3ua.impl.message.mgmt; 24 25import java.nio.ByteBuffer; 26 27import org.mobicents.protocols.ss7.m3ua.impl.message.M3UAMessageImpl; 28import org.mobicents.protocols.ss7.m3ua.impl.parameter.ParameterImpl; 29import org.mobicents.protocols.ss7.m3ua.message.MessageClass; 30import org.mobicents.protocols.ss7.m3ua.message.MessageType; 31import org.mobicents.protocols.ss7.m3ua.message.mgmt.Notify; 32import org.mobicents.protocols.ss7.m3ua.parameter.ASPIdentifier; 33import org.mobicents.protocols.ss7.m3ua.parameter.InfoString; 34import org.mobicents.protocols.ss7.m3ua.parameter.Parameter; 35import org.mobicents.protocols.ss7.m3ua.parameter.RoutingContext; 36import org.mobicents.protocols.ss7.m3ua.parameter.Status; 37 38/** 39 * 40 * @author amit bhayani 41 * 42 */ 43public class NotifyImpl extends M3UAMessageImpl implements Notify { 44 45 public NotifyImpl() { 46 super(MessageClass.MANAGEMENT, MessageType.NOTIFY, MessageType.S_NOTIFY); 47 } 48 49 @Override 50 protected void encodeParams(ByteBuffer buffer) { 51 ((ParameterImpl) parameters.get(Parameter.Status)).write(buffer); 52 53 if (parameters.containsKey(Parameter.ASP_Identifier)) { 54 ((ParameterImpl) parameters.get(Parameter.ASP_Identifier)).write(buffer); 55 } 56 57 if (parameters.containsKey(Parameter.Routing_Context)) { 58 ((ParameterImpl) parameters.get(Parameter.Routing_Context)).write(buffer); 59 } 60 61 if (parameters.containsKey(Parameter.INFO_String)) { 62 ((ParameterImpl) parameters.get(Parameter.INFO_String)).write(buffer); 63 } 64 } 65 66 public ASPIdentifier getASPIdentifier() { 67 return ((ASPIdentifier) parameters.get(Parameter.ASP_Identifier)); 68 } 69 70 public InfoString getInfoString() { 71 return ((InfoString) parameters.get(Parameter.INFO_String)); 72 } 73 74 public RoutingContext getRoutingContext() { 75 return ((RoutingContext) parameters.get(Parameter.Routing_Context)); 76 } 77 78 public Status getStatus() { 79 return ((Status) parameters.get(Parameter.Status)); 80 } 81 82 public void setASPIdentifier(ASPIdentifier id) { 83 if (id != null) { 84 parameters.put(Parameter.ASP_Identifier, id); 85 } 86 } 87 88 public void setInfoString(InfoString str) { 89 if (str != null) { 90 parameters.put(Parameter.INFO_String, str); 91 } 92 } 93 94 public void setRoutingContext(RoutingContext rc) { 95 if (rc != null) { 96 parameters.put(Parameter.Routing_Context, rc); 97 } 98 } 99 100 public void setStatus(Status status) { 101 parameters.put(Parameter.Status, status); 102 } 103}