diff options
author | David Pursehouse <david.pursehouse@gmail.com> | 2016-07-22 17:21:20 +0900 |
---|---|---|
committer | David Pursehouse <david.pursehouse@gmail.com> | 2016-07-27 11:01:14 +0900 |
commit | 2e652aebab329e805beb8198dea6a064bd64ec1f (patch) | |
tree | 2df82baf339429c61214cad12314574cc6fdce8d | |
parent | c15903ea3e69bee4a2fc99452e6cc4a9a7151da5 (diff) | |
download | jgit-2e652aebab329e805beb8198dea6a064bd64ec1f.tar.gz jgit-2e652aebab329e805beb8198dea6a064bd64ec1f.zip |
FileLfsServlet: Return HTTP 422 instead of 400
According to the specification [1], the error response status code
should be 422 when there is a validation error with one or more of
the objects in the request
[1] https://github.com/github/git-lfs/blob/master/docs/api/v1/http-v1-batch.md#response-errors
Change-Id: Id03fe00a2109b896d9a154228a14a33bce5accc3
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
-rw-r--r-- | org.eclipse.jgit.lfs.server.test/tst/org/eclipse/jgit/lfs/server/fs/DownloadTest.java | 4 | ||||
-rw-r--r-- | org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsServlet.java | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/org.eclipse.jgit.lfs.server.test/tst/org/eclipse/jgit/lfs/server/fs/DownloadTest.java b/org.eclipse.jgit.lfs.server.test/tst/org/eclipse/jgit/lfs/server/fs/DownloadTest.java index 6c4f3cbb99..ac707eacf0 100644 --- a/org.eclipse.jgit.lfs.server.test/tst/org/eclipse/jgit/lfs/server/fs/DownloadTest.java +++ b/org.eclipse.jgit.lfs.server.test/tst/org/eclipse/jgit/lfs/server/fs/DownloadTest.java @@ -78,7 +78,7 @@ public class DownloadTest extends LfsServerTest { getContent(id.name().substring(0, 60), f); fail("expected RuntimeException"); } catch (RuntimeException e) { - assertEquals("Status: 400 Bad Request", + assertEquals("Status: 422 Unprocessable Entity", e.getMessage()); } } @@ -93,7 +93,7 @@ public class DownloadTest extends LfsServerTest { getContent(id.name().replace('f', 'z'), f); fail("expected RuntimeException"); } catch (RuntimeException e) { - assertEquals("Status: 400 Bad Request", + assertEquals("Status: 422 Unprocessable Entity", e.getMessage()); } } diff --git a/org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsServlet.java b/org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsServlet.java index 586941357a..925dea8de5 100644 --- a/org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsServlet.java +++ b/org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsServlet.java @@ -121,14 +121,14 @@ public class FileLfsServlet extends HttpServlet { HttpServletResponse rsp) throws IOException { String info = req.getPathInfo(); if (info.length() != 1 + Constants.LONG_OBJECT_ID_STRING_LENGTH) { - sendError(rsp, HttpStatus.SC_BAD_REQUEST, MessageFormat + sendError(rsp, HttpStatus.SC_UNPROCESSABLE_ENTITY, MessageFormat .format(LfsServerText.get().invalidPathInfo, info)); return null; } try { return LongObjectId.fromString(info.substring(1, 65)); } catch (InvalidLongObjectIdException e) { - sendError(rsp, HttpStatus.SC_BAD_REQUEST, e.getMessage()); + sendError(rsp, HttpStatus.SC_UNPROCESSABLE_ENTITY, e.getMessage()); return null; } } |