コード例 #1
3
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public boolean isOid() {
   return ext.isOid();
 }
コード例 #2
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
  public void encode(AsnOutputStream aos) throws EncodeException {

    try {
      aos.writeTag(Tag.CLASS_APPLICATION, false, _TAG);
      int pos = aos.StartContentDefiniteLength();

      if (this.dialogAPDU == null) {
        throw new EncodeException(
            "No APDU in DialogPortion is defined when encoding DialogPortion");
      }

      if (this.getOidValue() == null) {
        throw new EncodeException(
            "No setUnidirectional() for DialogPortion is defined when encoding DialogPortion");
      }

      AsnOutputStream aos2 = new AsnOutputStream();
      dialogAPDU.encode(aos2);
      ext.setEncodeType(aos2.toByteArray());

      ext.encode(aos);

      aos.FinalizeContent(pos);

    } catch (AsnException e) {
      throw new EncodeException("AsnException when encoding DialogPortion: " + e.getMessage(), e);
    }
  }
コード例 #3
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 /*
  * (non-Javadoc)
  *
  * @see org.mobicents.protocols.ss7.tcap.asn.DialogPortion#setUnidirectional( boolean)
  */
 public void setUnidirectional(boolean flag) {
   if (flag) {
     ext.setOidValue(_DIALG_UNI);
     // super.oidValue = _DIALG_UNI;
   } else {
     ext.setOidValue(_DIALG_STRUCTURED);
     // super.oidValue = _DIALG_STRUCTURED;
   }
   this.uniDirectional = flag;
 }
コード例 #4
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
  public void decode(AsnInputStream aisA) throws ParseException {

    // TAG has been decoded already, now, lets get LEN
    try {
      AsnInputStream ais = aisA.readSequenceStream();

      int tag = ais.readTag();
      if (tag != Tag.EXTERNAL)
        throw new ParseException(
            PAbortCauseType.IncorrectTxPortion,
            null,
            "Error decoding DialogPortion: wrong value of tag, expected EXTERNAL, found: " + tag);

      ext.decode(ais);

      if (!isAsn() || !isOid()) {
        throw new ParseException(
            PAbortCauseType.IncorrectTxPortion,
            null,
            "Error decoding DialogPortion: Oid and Asd parts not found");
      }

      // Check Oid
      if (Arrays.equals(_DIALG_UNI, this.getOidValue())) this.uniDirectional = true;
      else if (Arrays.equals(_DIALG_STRUCTURED, this.getOidValue())) this.uniDirectional = false;
      else
        throw new ParseException(
            PAbortCauseType.IncorrectTxPortion,
            null,
            "Error decoding DialogPortion: bad Oid value");

      AsnInputStream loaclAsnIS = new AsnInputStream(ext.getEncodeType());

      // now lets get APDU
      tag = loaclAsnIS.readTag();
      this.dialogAPDU = TcapFactory.createDialogAPDU(loaclAsnIS, tag, isUnidirectional());

    } catch (IOException e) {
      throw new ParseException(
          PAbortCauseType.BadlyFormattedTxPortion,
          null,
          "IOException when decoding DialogPortion: " + e.getMessage(),
          e);
    } catch (AsnException e) {
      throw new ParseException(
          PAbortCauseType.BadlyFormattedTxPortion,
          null,
          "AsnException when decoding DialogPortion: " + e.getMessage(),
          e);
    }
  }
コード例 #5
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public boolean isOctet() {
   return ext.isOctet();
 }
コード例 #6
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setAsn(boolean asn) {
   ext.setAsn(asn);
 }
コード例 #7
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public boolean isAsn() {
   return ext.isAsn();
 }
コード例 #8
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setIndirectReference(long indirectReference) {
   ext.setIndirectReference(indirectReference);
 }
コード例 #9
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public long getIndirectReference() {
   return ext.getIndirectReference();
 }
コード例 #10
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public BitSetStrictLength getEncodeBitStringType() throws AsnException {
   return ext.getEncodeBitStringType();
 }
コード例 #11
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setArbitrary(boolean arbitrary) {
   ext.setArbitrary(arbitrary);
 }
コード例 #12
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public boolean isObjDescriptor() {
   return ext.isObjDescriptor();
 }
コード例 #13
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public boolean isInteger() {
   return ext.isInteger();
 }
コード例 #14
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setInteger(boolean integer) {
   ext.setInteger(integer);
 }
コード例 #15
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setOid(boolean oid) {
   ext.setOid(oid);
 }
コード例 #16
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public byte[] getEncodeType() throws AsnException {
   return ext.getEncodeType();
 }
コード例 #17
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setEncodeBitStringType(BitSetStrictLength data) {
   ext.setEncodeBitStringType(data);
 }
コード例 #18
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setOctet(boolean octet) {
   ext.setOctet(octet);
 }
コード例 #19
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public long[] getOidValue() {
   return ext.getOidValue();
 }
コード例 #20
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public boolean isArbitrary() {
   return ext.isArbitrary();
 }
コード例 #21
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setOidValue(long[] oidValue) {
   ext.setOidValue(oidValue);
 }
コード例 #22
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setObjDescriptor(boolean objDescriptor) {
   ext.setObjDescriptor(objDescriptor);
 }
コード例 #23
0
ファイル: DialogPortionImpl.java プロジェクト: SergeyLee/jss7
 @Override
 public void setEncodeType(byte[] data) {
   ext.setEncodeType(data);
 }