diff --git a/token-client/src/main/java/com/sap/cloud/security/xsuaa/client/OAuth2ServiceException.java b/token-client/src/main/java/com/sap/cloud/security/xsuaa/client/OAuth2ServiceException.java index e6df87435..fc005b2b5 100644 --- a/token-client/src/main/java/com/sap/cloud/security/xsuaa/client/OAuth2ServiceException.java +++ b/token-client/src/main/java/com/sap/cloud/security/xsuaa/client/OAuth2ServiceException.java @@ -37,6 +37,16 @@ public OAuth2ServiceException(String message, Integer httpStatusCode) { super(message); this.httpStatusCode = httpStatusCode != null ? httpStatusCode : 0; } + + /** + * Returns the HTTP status code of the failed OAuth2 service request or + * {@code 0} e.g. in case the service wasn't called at all. + * + * @return status code or 0 + */ + public Integer getHttpStatusCode() { + return httpStatusCode; + } /** * Creates an exception. diff --git a/token-client/src/test/java/com/sap/cloud/security/xsuaa/client/DefaultOidcConfigurationServiceTest.java b/token-client/src/test/java/com/sap/cloud/security/xsuaa/client/DefaultOidcConfigurationServiceTest.java index 57c78d2c2..bf4fea6df 100644 --- a/token-client/src/test/java/com/sap/cloud/security/xsuaa/client/DefaultOidcConfigurationServiceTest.java +++ b/token-client/src/test/java/com/sap/cloud/security/xsuaa/client/DefaultOidcConfigurationServiceTest.java @@ -93,7 +93,8 @@ public void retrieveEndpoints_errorOccurs_throwsServiceException() throws IOExce assertThatThrownBy(this::retrieveEndpoints) .isInstanceOf(OAuth2ServiceException.class) .hasMessageContaining(errorMessage) - .extracting("httpStatusCode").isEqualTo(0); + .extracting(OAuth2ServiceException.class::cast) + .extracting(OAuth2ServiceException::getHttpStatusCode).isEqualTo(0); } @Test