コード例 #1
0
        /// <summary>
        ///     Конструктор
        /// </summary>
        /// <param name="uri">
        ///     URL конечной точки службы WSL
        /// </param>
        /// <param name="vcert">
        ///     Криптопровайдер
        /// </param>
        /// <param name="clientCertificate">
        ///     Клиентский сертификат. Используется только в случае, если используется протокол HTTPS
        /// </param>
        public NativeHttpsWorker(Uri uri, IVcertAPI vcert, X509Certificate2 clientCertificate)
        {
            if (uri == null)
                throw new ArgumentNullException("uri");
            if (vcert == null)
                throw new ArgumentNullException("vcert");
            if (clientCertificate == null)
                throw new ArgumentNullException("clientCertificate");

            this.uri = uri;
            this.vcert = vcert;

            httpsClient = new WinInetHttpsClient(uri, clientCertificate);
        }
コード例 #2
0
        /// <summary>
        ///     Конструктор
        /// </summary>
        /// <param name="uri">
        ///     URL конечной точки службы WSL
        /// </param>
        /// <param name="vcert">
        ///     Криптопровайдер
        /// </param>
        /// <param name="clientCertificate">
        ///     Клиентский сертификат. Используется только в случае, если используется протокол HTTPS
        /// </param>
        public WslAdapter(Uri uri, IVcertAPI vcert, X509Certificate2 clientCertificate = null)
        {
            if (uri == null)
                throw new ArgumentNullException("uri");
            if (vcert == null)
                throw new ArgumentNullException("vcert");

            // При подключении через HTTP клиентский сертификат не используется
            if (uri.Scheme == Uri.UriSchemeHttps && clientCertificate == null)
                throw new ArgumentNullException("clientCertificate");

            this.uri = uri;

            worker = (uri.Scheme == Uri.UriSchemeHttps)
                ? (IHttpWorker)new NativeHttpsWorker(uri, vcert, clientCertificate)
                : new ManagedHttpWorker(uri, vcert, clientCertificate);
        }
コード例 #3
0
        /// <summary>
        ///     Конструктор
        /// </summary>
        /// <param name="uri">
        ///     URL конечной точки службы WSL
        /// </param>
        /// <param name="vcert">
        ///     Криптопровайдер
        /// </param>
        /// <param name="clientCertificate">
        ///     Клиентский сертификат. Используется только в случае, если используется протокол HTTPS
        /// </param>
        public NativeHttpsWorker(Uri uri, IVcertAPI vcert, X509Certificate2 clientCertificate)
        {
            if (uri == null)
            {
                throw new ArgumentNullException("uri");
            }
            if (vcert == null)
            {
                throw new ArgumentNullException("vcert");
            }
            if (clientCertificate == null)
            {
                throw new ArgumentNullException("clientCertificate");
            }

            this.uri   = uri;
            this.vcert = vcert;

            httpsClient = new WinInetHttpsClient(uri, clientCertificate);
        }
コード例 #4
0
 /// <summary>
 ///     Конструктор
 /// </summary>
 /// <param name="uri">
 ///     URL конечной точки службы WSL
 /// </param>
 /// <param name="vcert">
 ///     Криптопровайдер
 /// </param>
 /// <param name="clientCertificate">
 ///     Клиентский сертификат. Используется только в случае, если используется протокол HTTPS
 /// </param>
 public ManagedHttpWorker(Uri uri, IVcertAPI vcert, X509Certificate2 clientCertificate)
 {
     this.uri = uri;
     this.clientCertificate = clientCertificate;
     this.vcert = vcert;
 }
コード例 #5
0
 /// <summary>
 ///     Инициализировать адаптер службы WSL
 /// </summary>
 /// <param name="endpoint">
 ///     Контур службы (PL или PROD)
 /// </param>
 /// <param name="vcert">
 ///     Криптопровайдер
 /// </param>
 /// <param name="certificate">
 ///     Клиентский сертификат
 /// </param>
 /// <returns>
 ///     Адаптер службы WSL
 /// </returns>
 private WslAdapter CreateAdapter(WslEndpoint endpoint, IVcertAPI vcert, X509Certificate2 certificate)
 {
     Console.WriteLine("Инициализация адаптера службы");
     var uri = ResolveWslUri(endpoint);
     var adapter = new WslAdapter(uri, vcert, certificate);
     return adapter;
 }
コード例 #6
0
 /// <summary>
 ///     Конструктор
 /// </summary>
 /// <param name="uri">
 ///     URL конечной точки службы WSL
 /// </param>
 /// <param name="vcert">
 ///     Криптопровайдер
 /// </param>
 /// <param name="clientCertificate">
 ///     Клиентский сертификат. Используется только в случае, если используется протокол HTTPS
 /// </param>
 public ManagedHttpWorker(Uri uri, IVcertAPI vcert, X509Certificate2 clientCertificate)
 {
     this.uri = uri;
     this.clientCertificate = clientCertificate;
     this.vcert             = vcert;
 }