Exemplo n.º 1
0
        public static async Task ExecuteAsync(NetworkCredential credentials, IReportServerConfig config, Func <IReportExecutionContext, Task> task, CancellationToken cancellationToken)
        {
            var client = SoapClientFactory.CreateReportExecutionClient(config);

            client.SetCredentials(credentials);

            await task(new ReportExecutionContext(client)).WithCancellation(cancellationToken);
        }
Exemplo n.º 2
0
        private static void InitBinding(IReportServerConfig config)
        {
            if (config.Binding != null)
            {
                return;
            }

            config.Binding = IsEndPointSecure(config) ? ClientUtils.NtlmSecureTransportBinding() : ClientUtils.NtlmTransportBinding();
        }
Exemplo n.º 3
0
        public static Task ExecuteAsync(
            NetworkCredential credentials,
            IReportServerConfig config,
            Func <IReportServerExecutionContext, Task> task,
            CancellationToken cancellationToken)
        {
            var client = SoapClientFactory.CreateReportServiceClient(config);

            client.SetCredentials(credentials);

            using (new OperationContextScope(client.InnerChannel))
            {
                if (client.GetCredentialType() == HttpClientCredentialType.Basic)
                {
                    BasicAuthHelper.SetBasicAuthHeader(credentials);
                }

                var context = new ReportServerExecutionContext(client);

                return(task(context).WithCancellation(cancellationToken));
            }
        }
Exemplo n.º 4
0
 public static ReportingService2010SoapClient CreateReportServiceClient(IReportServerConfig config)
 {
     InitBinding(config);
     return(new ReportingService2010SoapClient(config.Binding, new EndpointAddress(config.EndPointAddress))
     {
         ClientCredentials =
         {
             ServiceCertificate =
             {
                 SslCertificateAuthentication
                     = new
                       X509ServiceCertificateAuthentication
                     {
                         CertificateValidationMode
                             = X509CertificateValidationMode
                               .None,
                         RevocationMode
                             = X509RevocationMode
                               .NoCheck
                     }
             }
         }
     });
 }
Exemplo n.º 5
0
 public static Task ExecuteAsync(NetworkCredential credentials, IReportServerConfig config, Func <IReportServerExecutionContext, Task> task)
 {
     return(ExecuteAsync(credentials, config, task, CancellationToken.None));
 }
Exemplo n.º 6
0
 public static Task ExecuteAsync(IReportServerConfig config, Func <IReportServerExecutionContext, Task> task, CancellationToken cancellationToken)
 {
     return(ExecuteAsync(null, config, task, cancellationToken));
 }
Exemplo n.º 7
0
 public static Task ExecuteAsync(IReportServerConfig config, Func <IReportServerExecutionContext, Task> task)
 {
     return(ExecuteAsync(config, task, CancellationToken.None));
 }
Exemplo n.º 8
0
 private static bool IsEndPointSecure(IReportServerConfig config)
 {
     return(config.EndPointAddress.Scheme.StartsWith("https"));
 }
Exemplo n.º 9
0
 public static ReportExecutionServiceSoapClient CreateReportExecutionClient(IReportServerConfig config)
 {
     InitBinding(config);
     return(new ReportExecutionServiceSoapClient(config.Binding, new EndpointAddress(config.EndPointAddress)));
 }