diff --git a/github4s/js/src/main/scala/github4s/HttpRequestBuilderExtensionJS.scala b/github4s/js/src/main/scala/github4s/HttpRequestBuilderExtensionJS.scala index bdd06a978..40cad7874 100644 --- a/github4s/js/src/main/scala/github4s/HttpRequestBuilderExtensionJS.scala +++ b/github4s/js/src/main/scala/github4s/HttpRequestBuilderExtensionJS.scala @@ -87,8 +87,10 @@ trait HttpRequestBuilderExtensionJS { mapResponse(r) case r ⇒ Either.left( - UnexpectedException( - s"Failed invoking with status : ${r.statusCode}, body : \n ${r.body}")) + UnsuccessfulHttpRequest( + s"Failed invoking with status : ${r.statusCode}, body : \n ${r.body}", + r.statusCode + )) } def emptyResponse(r: SimpleHttpResponse): GHResponse[Unit] = diff --git a/github4s/jvm/src/main/scala/github4s/HttpRequestBuilderExtensionJVM.scala b/github4s/jvm/src/main/scala/github4s/HttpRequestBuilderExtensionJVM.scala index ed7aa8132..41fdc15e4 100644 --- a/github4s/jvm/src/main/scala/github4s/HttpRequestBuilderExtensionJVM.scala +++ b/github4s/jvm/src/main/scala/github4s/HttpRequestBuilderExtensionJVM.scala @@ -16,10 +16,9 @@ package github4s -import github4s.GithubResponses.{GHResponse, GHResult, JsonParsingException, UnexpectedException} +import github4s.GithubResponses._ import io.circe.Decoder import io.circe.parser._ - import scalaj.http._ import cats.implicits._ import github4s.free.interpreters.Capture @@ -79,7 +78,11 @@ trait HttpRequestBuilderExtensionJVM { mapResponse(r) case r ⇒ Either.left( - UnexpectedException(s"Failed invoking with status : ${r.code} body : \n ${r.body}")) + UnsuccessfulHttpRequest( + s"Failed invoking with status : ${r.code} body : \n ${r.body}", + r.code + ) + ) } def emptyResponse(r: HttpResponse[String]): GHResponse[Unit] = diff --git a/github4s/shared/src/main/scala/github4s/GithubResponses.scala b/github4s/shared/src/main/scala/github4s/GithubResponses.scala index bb9211848..9a0035417 100644 --- a/github4s/shared/src/main/scala/github4s/GithubResponses.scala +++ b/github4s/shared/src/main/scala/github4s/GithubResponses.scala @@ -37,6 +37,11 @@ object GithubResponses { json: String ) extends GHException(msg) + case class UnsuccessfulHttpRequest( + msg: String, + statusCode: Int + ) extends GHException(msg) + case class UnexpectedException(msg: String) extends GHException(msg) }