protected virtual void ErrorResponseCallback(WebException exception)
{
// do a simple trace here
string message = string.Format("Error with status code: {0} and type: {1}",
((int) exception.Status).ToString(CultureInfo.InvariantCulture),
exception.Status.ToString());
Trace.TraceError(message, exception);
// add NLog support for the exception
Trace.TraceError(exception.Message);
// TODO: Place and error router here
// if we have an error it's probably best to release this
_exception = exception;
SitAndWait.Set();
// rethrow this otherwise we'll lose this
}