Esempio n. 1
0
 public void LocalizeApiException(MainServiceException ex)
 {
     if (TryLocalizeErrorCode(ex.Code, out var localizedDescription, ex.DescriptionParams))
     {
         ex.Description = localizedDescription;
     }
     //if translation is not defined, propagate original description
 }
Esempio n. 2
0
        protected override void TryParseAndThrowResponseError(HttpStatusCode responseStatusCode, string responseContent)
        {
            var statusCodeNumber = (int)responseStatusCode;

            if (statusCodeNumber >= 400 &&
                statusCodeNumber < 500 &&
                TryDeserialize <ErrorContract>(responseContent, out var errorContract))
            {
                var exception = new MainServiceException(errorContract.Code, errorContract.Description, responseStatusCode, errorContract.DescriptionParams);

                m_localization.LocalizeApiException(exception);

                throw exception;
            }

            if (responseStatusCode == HttpStatusCode.Forbidden)
            {
                var exception = new MainServiceException(MainServiceErrorCode.Forbidden, "Insufficient permissions", responseStatusCode);

                m_localization.LocalizeApiException(exception);

                throw exception;
            }
        }
Esempio n. 3
0
 protected void AddErrors(MainServiceException exception)
 {
     ModelState.AddModelError(string.Empty, exception.Description);
 }
Esempio n. 4
0
 public void LocalizeApiException(MainServiceException exception)
 {
     // Localization is not supported in this application, so do nothing
 }