public HttpRequestCommand(ApiSettings apiSettings)
 {
     if (apiSettings != null)
     {
         _apiSettings = apiSettings;
     }
     else
     {
         _apiSettings = new ApiSettings();
     }
 }
        private static HttpWebRequest CreateWebRequest(string uri, string httpMethod, ApiSettings settings)
        {
            var webRequest = CreateWebRequest(uri, httpMethod, "application/xml");

            if (settings.UseProxy)
            {
                SetProxy(webRequest, settings.ProxySettings);
            }

            var headers = GetHeaders(settings);
            RequestHelper.SetHeaders(headers, webRequest);

            SetCredentialCache(webRequest, settings.Url, settings.Domain, settings.UserName,
                               settings.Password);

            LogRequest(webRequest);

            return webRequest;
        }
Ejemplo n.º 3
0
        public void _1_InvalidApiCredentials_Should_Throw401Exception()
        {
            var settings = new ApiSettings();
            settings.Password = "******";
            var emailHelper = new YesmailService(settings);
            var messageId = 1256210;
            var dto = DtoFactory.CreateEr1Message(RandomGenerator.RandomString(6));

            var sendAndSubscribe = YesMailMapper.CreateSendAndSubcribeMessage(dto, messageId);

            // Act
            try
            {
                var response = emailHelper.SendEmail(sendAndSubscribe);
            }
            catch (WebException we)
            {
                if (we.Message.Contains("401")) return;
                throw;
            }

            Assert.Fail("401 Not thrown.");
            //var response = emailHelper.SendEmail(dto, messageId);
        }
Ejemplo n.º 4
0
 public YesmailService(ApiSettings settings)
 {
     _settings = settings;
 }
 private static NameValueCollection GetHeaders(ApiSettings settings)
 {
     //Set Authorization ID
     var userCreds = settings.Domain + '/' + settings.UserName + ':' + settings.Password;
     var authorizationId = "Basic " + EncodeTo64(userCreds);
     var headers = new NameValueCollection { { @"Authorization", authorizationId } };
     return headers;
 }
Ejemplo n.º 6
0
        private void LogSettings(ApiSettings apiSettings)
        {
            var sb = new StringBuilder();

            sb.Append("\n\nApiSettings\n-----------\n")
                .Append("Url: ").Append(apiSettings.Url).Append("\n")
                .Append("Domain: ").Append(apiSettings.Domain).Append("\n")
                .Append("UserName: "******"\n")
                .Append("Password: "******"\n")
                .Append("UseProxy: ").Append(apiSettings.UseProxy).Append("\n");

            _logger.Debug(sb.ToString());
        }