/// <summary> /// /// </summary> /// <exception cref="ArgumentNullException">The <strong>uri</strong> parameter is null or empty.</exception> /// <param name="uri"></param> /// <param name="publishFlags"></param> /// <returns></returns> /// <remarks> /// <p>Only absolute (local), UNC paths and LDAP:// URLs are supported for CRT file publishing.</p> /// <p>Only LDAP:// and HTTP:// URLs are supported for CRT file retrieval.</p> /// </remarks> public static CertSrvAiaUrlEntry FromConfigUri(String uri, CertSrvAiaPublishFlags publishFlags) { if (String.IsNullOrWhiteSpace(uri)) { throw new ArgumentException("'uri' parameter cannot be null or empty string."); } return(new CertSrvAiaUrlEntry(uri, true, publishFlags)); }
CertSrvAiaUrlEntry(String uri, Boolean isConfigUri, CertSrvAiaPublishFlags publishFlags) { if (isConfigUri) { initializeFromConfig(uri, publishFlags); } else { initializeFromReg(uri); } getUrlScheme(); }
void initializeFromReg(String regUri) { var regex = new Regex(@"(^\d+):(.+)"); Match match = regex.Match(regUri); if (match.Success) { Int16 matches = Convert.ToInt16(match.Groups[1].Value); flags = (CertSrvAiaPublishFlags)matches; Uri = translateRegToConfigVar(match.Groups[2].Value); } else { throw new FormatException(); } }
void initializeFromConfig(String configUri, CertSrvAiaPublishFlags publishFlags) { Uri = configUri; flags = publishFlags; }