protected internal virtual void PreemptivelySetAuthCredentials(HttpClient httpClient ) { // if the URL contains user info AND if this a DefaultHttpClient // then preemptively set the auth credentials if (url.GetUserInfo() != null) { if (url.GetUserInfo().Contains(":") && !url.GetUserInfo().Trim().Equals(":")) { string[] userInfoSplit = url.GetUserInfo().Split(":"); Credentials creds = new UsernamePasswordCredentials(URIUtils.Decode(userInfoSplit [0]), URIUtils.Decode(userInfoSplit[1])); if (httpClient is DefaultHttpClient) { DefaultHttpClient dhc = (DefaultHttpClient)httpClient; MessageProcessingHandler preemptiveAuth = new _MessageProcessingHandler_185(creds ); dhc.AddRequestInterceptor(preemptiveAuth, 0); } } else { Log.W(Database.Tag, "RemoteRequest Unable to parse user info, not setting credentials" ); } } }