/protocols/ss7/map/map-impl/src/main/java/org/mobicents/protocols/ss7/map/primitives/MAPAsnPrimitive.java
Java | 96 lines | 16 code | 15 blank | 65 comment | 0 complexity | cbb9a21c7648edf65edd4d4597c7ba4a MD5 | raw file
Possible License(s): LGPL-3.0, GPL-3.0, LGPL-2.1, GPL-2.0, CC-BY-SA-3.0, CC0-1.0, Apache-2.0, BSD-3-Clause
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.map.primitives; 24 25import java.io.Serializable; 26 27import org.mobicents.protocols.asn.AsnInputStream; 28import org.mobicents.protocols.asn.AsnOutputStream; 29import org.mobicents.protocols.ss7.map.api.MAPException; 30import org.mobicents.protocols.ss7.map.api.MAPParsingComponentException; 31 32/** 33 * 34 * @author sergey vetyutnev 35 * 36 */ 37public interface MAPAsnPrimitive extends Serializable { 38 39 public int getTag() throws MAPException; 40 41 public int getTagClass(); 42 43 public boolean getIsPrimitive(); 44 45 /** 46 * Decoding the length and the content of the primitive (the tag has already 47 * read) 48 * 49 * @param ansIS 50 * The AsnInputStream that contains the length and the content of 51 * the primitive 52 * @throws MAPParsingComponentException 53 */ 54 public void decodeAll(AsnInputStream ansIS) throws MAPParsingComponentException; 55 56 /** 57 * Decoding the content of the primitive (the tag and the length have 58 * already read) 59 * 60 * @param ansIS 61 * The AsnInputStream that contains the content of the primitive 62 * @param length 63 * The length of the content 64 * @throws MAPParsingComponentException 65 */ 66 public void decodeData(AsnInputStream ansIS, int length) throws MAPParsingComponentException; 67 68 /** 69 * Encoding the tag, the length and the content. Tag and tag class are universal 70 * 71 * @param asnOs 72 * @throws MAPException 73 */ 74 public void encodeAll(AsnOutputStream asnOs) throws MAPException; 75 76 /** 77 * Encoding the tag, the length and the content. Tag and tag class are defined 78 * 79 * @param asnOs 80 * @param tagClass 81 * @param tag 82 * @throws MAPException 83 */ 84 public void encodeAll(AsnOutputStream asnOs, int tagClass, int tag) throws MAPException; 85 86 /** 87 * Encoding the content. 88 * 89 * @param asnOs 90 * @throws MAPException 91 */ 92 public void encodeData(AsnOutputStream asnOs) throws MAPException; 93 94} 95 96