/// <summary> Adds the specified optional tag value </summary> /// <param name="tag"></param> /// <param name="val"></param> public void Add(OptionalTags tag, byte[] val) { Add(TLV.Create(tag, Convert.ToUInt16(val.Length), val)); }
/// <summary> Called to create a TLV object </summary> /// <param name="tag"></param> /// <param name="length"></param> /// <param name="value"></param> /// <returns> TLV </returns> public static TLV Create(OptionalTags tag, ushort length, byte[] value) { return(new TLV(tag, length, value)); }
/// <summary> Constructor </summary> /// <param name="tag"></param> /// <param name="length"></param> /// <param name="value"></param> private TLV(OptionalTags tag, ushort length, byte[] value) { Tag = Convert.ToUInt16(tag); Length = length; Value = value; }
private void Remove(OptionalTags tag) { for (int i = 0; i < base.Count; ++i) { if (base[i].Tag == tag) { base.RemoveAt(i); } } }
private void _setString(OptionalTags tag, string value) { if (value != null) { this[tag].ValueString = value; } else { Remove(tag); } }
private void _setUInt32(OptionalTags tag, UInt32?value) { if (value.HasValue) { this[tag].ValueUInt32 = value.Value; } else { Remove(tag); } }
private void _setByte(OptionalTags tag, byte?value) { if (value.HasValue) { this[tag].ValueByte = value.Value; } else { Remove(tag); } }
private void _setBool(OptionalTags tag, bool value) { if (value) { this[tag].Value = null; } else { Remove(tag); } }
private void _setBytes(OptionalTags tag, byte[] value) { if (value != null) { this[tag].Value = value; } else { Remove(tag); } }
private SMPPTLV Find(OptionalTags tag) { for (int i = 0; i < base.Count; ++i) { if (base[i].Tag == tag) { return(base[i]); } } return(null); }
public SMPPTLV this[OptionalTags tag] { get { SMPPTLV tlv = Find(tag); if (tlv == null) { base.Add(tlv = new SMPPTLV(tag)); } return(tlv); } }
private byte?_getByte(OptionalTags tag) { SMPPTLV tlv = Find(tag); return((tlv != null) ? (byte?)tlv.ValueByte : (byte?)null); }
private bool _getBool(OptionalTags tag) { SMPPTLV tlv = Find(tag); return(tlv != null); }
/// <summary> Called to create a TLV object </summary> /// <param name="tag"></param> /// <param name="length"></param> /// <param name="value"></param> /// <returns> TLV </returns> public static TLV Create(OptionalTags tag, ushort length, byte[] value) { return new TLV(tag, length, value); }
internal SMPPTLV(OptionalTags tag) { Tag = tag; }
private UInt32?_getUInt32(OptionalTags tag) { SMPPTLV tlv = Find(tag); return((tlv != null) ? (UInt32?)tlv.ValueUInt32 : (UInt32?)null); }
/// <summary> Access to the collection by an optional tag </summary> /// <param name="tag"></param> /// <returns></returns> public TLV this[OptionalTags tag] { get { return(this[Convert.ToUInt16(tag)]); } }
private string _getString(OptionalTags tag) { return(Find(tag).ValueString); }
/// <summary> Access to the collection by an optional tag </summary> /// <param name="tag"></param> /// <returns></returns> public TLV this[OptionalTags tag] => this[Convert.ToUInt16(tag)];
private byte[] _getBytes(OptionalTags tag) { return(Find(tag).Value); }