/// <inheritdoc /> public override void InjectReferenceValue(X509Certificate2 value) { Certificate = value; Asn1Object exValue = GetExtensionValue(value); if (exValue == null) { if (IsRequired()) { throw new PolicyRequiredException("Extention " + ExtentionIdentifier.Display + " is marked as required by is not present."); } else { var emptyList = new List <string>(); PolicyValue = PolicyValueFactory.GetInstance <IList <string> >(emptyList); return; } } var names = new List <string>(); var generalNames = GeneralNames.GetInstance(exValue); foreach (var name in generalNames.GetNames()) { var type = StandardExt.FromTag <Standard.GeneralNameType>(name.TagNo); names.Add(type.Name() + ":" + name.Name); } PolicyValue = PolicyValueFactory.GetInstance <IList <string> >(names); }
public void testGetInstance_assertValue() { IPolicyValue <int> value = PolicyValueFactory.GetInstance(12345); value.GetPolicyValue().Should().Be(12345); value.Should().Be(PolicyValueFactory.GetInstance(12345)); IPolicyValue <string> value2 = PolicyValueFactory.GetInstance("12345"); value2.GetPolicyValue().Should().Be("12345"); value2.Should().Be(PolicyValueFactory.GetInstance("12345")); }
public void TestExecute_Intersection_AssertResults() { IPolicyValue <IList <String> > op1 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "A", "B", "C", "D" }); IPolicyValue <IList <String> > op2 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "A", "B", "E" }); IEnumerable <string> resultList = PolicyOperator <IList <string>, IList <string>, IEnumerable <string> > .INTERSECT.Execute( op1.GetPolicyValue(), op2.GetPolicyValue()); var result = resultList.ToList(); result.Count().Should().Be(2); result.Contains("A").Should().BeTrue(); result.Contains("B").Should().BeTrue(); op1 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "A", "B", "C" }); op2 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "D", "E", "F" }); resultList = PolicyOperator <IList <string>, IList <string>, IEnumerable <string> > .INTERSECT.Execute( op1.GetPolicyValue(), op2.GetPolicyValue()); resultList.Any().Should().BeFalse(); // // Change ordering // op1 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "D", "C", "B", "A" }); op2 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "A", "E", "B" }); resultList = PolicyOperator <IList <string>, IList <string>, IEnumerable <string> > .INTERSECT.Execute( op1.GetPolicyValue(), op2.GetPolicyValue()); result = resultList.ToList(); result.Count().Should().Be(2); result.Contains("A").Should().BeTrue(); result.Contains("B").Should().BeTrue(); }
public void TestExecute_Intersection_StringConversion_AssertResults() { IPolicyValue <IList <String> > op1 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "A", "B", "C", "D" }); IPolicyValue <String> op2 = new PolicyValue <string>("A,B,E"); IEnumerable <string> resultList = PolicyOperator <IList <string>, string, IEnumerable <string> > .INTERSECT.Execute( op1.GetPolicyValue(), op2.GetPolicyValue()); var result = resultList.ToList(); result.Count().Should().Be(2); result.Contains("A").Should().BeTrue(); result.Contains("B").Should().BeTrue(); op1 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "A", "B", "C" }); op2 = new PolicyValue <string>("D,E,F"); resultList = PolicyOperator <IList <string>, string, IEnumerable <string> > .INTERSECT.Execute( op1.GetPolicyValue(), op2.GetPolicyValue()); resultList.Any().Should().BeFalse(); op1 = PolicyValueFactory.GetInstance <IList <String> >(new List <string> { "D", "C", "B", "A" }); op2 = new PolicyValue <string>("A,E,B"); resultList = PolicyOperator <IList <string>, string, IEnumerable <string> > .INTERSECT.Execute( op1.GetPolicyValue(), op2.GetPolicyValue()); result = resultList.ToList(); result.Count().Should().Be(2); result.Contains("A").Should().BeTrue(); result.Contains("B").Should().BeTrue(); }
/// <inheritdoc /> public override void InjectReferenceValue(X509Certificate2 value) { Certificate = value; if (RdnAttributeId.Equals(RDNAttributeIdentifier.DISTINGUISHED_NAME)) { var str = new List <String> { Certificate.IssuerName.RemoveSpaces() }; PolicyValue = PolicyValueFactory.GetInstance <IList <String> >(str); return; } X500DistinguishedName distinguishedName = Certificate.IssuerName; var values = distinguishedName.GetRdns(GetRDNAttributeFieldId().Name); if (!values.Any() && IsRequired()) { throw new PolicyRequiredException(Name + " field attribute " + RdnAttributeId.Name + " is marked as required but is not present."); } PolicyValue = PolicyValueFactory.GetInstance <IList <String> >(values); }
/// <inheritdoc /> public override void InjectReferenceValue(X509Certificate2 value) { Certificate = value; PolicyValue = PolicyValueFactory.GetInstance(value.GetKeyAlgorithm()); }
/// <inheritdoc /> public override void InjectReferenceValue(X509Certificate2 value) { Certificate = value; PolicyValue = PolicyValueFactory.GetInstance(value.SerialNumber.HexAsLong()); }
public override void InjectReferenceValue(X509Certificate2 value) //throws PolicyProcessException { Certificate = value; PolicyValue = PolicyValueFactory.GetInstance(value.SignatureAlgorithm.Value); }