/// <summary> /// Parse and validate child TLV elements. /// </summary> /// <param name="childTags">Child TLV elements</param> private void ParseAndValidateChildTags(IEnumerable <ITlvTag> childTags) { TagCounter tagCounter = new TagCounter(); foreach (ITlvTag tag in childTags) { if (tag == null) { throw new ArgumentNullException(nameof(childTags)); } _childTags.Add(ParseChild(tag) ?? tag); tagCounter[tag.Type]++; } Validate(tagCounter); }
/// <summary> /// Validate the tag /// </summary> /// <param name="tagCounter"></param> protected virtual void Validate(TagCounter tagCounter) { }