/// <summary> Creates a MatchingRuleAssertion. /// /// The value null may be passed for an optional value that is not used. /// /// </summary> /// <param name="matchValue">The assertion value. /// </param> /// <param name="matchingRule">Optional matching rule. /// </param> /// <param name="type">Optional attribute description. /// </param> /// <param name="dnAttributes">Asn1Boolean value. (default false) /// </param> public RfcMatchingRuleAssertion(RfcMatchingRuleId matchingRule, RfcAttributeDescription type, RfcAssertionValue matchValue, Asn1Boolean dnAttributes):base(4) { if (matchingRule != null) add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 1), matchingRule, false)); if (type != null) add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 2), type, false)); add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 3), matchValue, false)); // if dnAttributes if false, that is the default value and we must not // encode it. (See RFC 2251 5.1 number 4) if (dnAttributes != null && dnAttributes.booleanValue()) add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 4), dnAttributes, false)); return ; }
/// <summary> /// Creates a MatchingRuleAssertion. /// The value null may be passed for an optional value that is not used. /// </summary> /// <param name="matchValue"> /// The assertion value. /// </param> /// <param name="matchingRule"> /// Optional matching rule. /// </param> /// <param name="type"> /// Optional attribute description. /// </param> /// <param name="dnAttributes"> /// Asn1Boolean value. (default false) /// </param> public RfcMatchingRuleAssertion(RfcMatchingRuleId matchingRule, RfcAttributeDescription type, RfcAssertionValue matchValue, Asn1Boolean dnAttributes) : base(4) { if (matchingRule != null) { add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 1), matchingRule, false)); } if (type != null) { add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 2), type, false)); } add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 3), matchValue, false)); // if dnAttributes if false, that is the default value and we must not // encode it. (See RFC 2251 5.1 number 4) if (dnAttributes != null && dnAttributes.booleanValue()) { add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.CONTEXT, false, 4), dnAttributes, false)); } }