From a70b43cde76b4baab82b4ce0d9ff82883f80b8df Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Wed, 26 Oct 2011 17:54:07 -0400 Subject: [PATCH] Added status icon --- src/com/gitblit/utils/JsonUtils.java | 33 +++++++++++++++++++++++++++++++++ 1 files changed, 33 insertions(+), 0 deletions(-) diff --git a/src/com/gitblit/utils/JsonUtils.java b/src/com/gitblit/utils/JsonUtils.java index 3834c8e..5b53bf4 100644 --- a/src/com/gitblit/utils/JsonUtils.java +++ b/src/com/gitblit/utils/JsonUtils.java @@ -46,7 +46,9 @@ import org.eclipse.jgit.util.Base64; import com.gitblit.GitBlitException.ForbiddenException; +import com.gitblit.GitBlitException.NotAllowedException; import com.gitblit.GitBlitException.UnauthorizedException; +import com.gitblit.GitBlitException.UnknownRequestException; import com.gitblit.models.RepositoryModel; import com.gitblit.models.UserModel; import com.google.gson.Gson; @@ -159,6 +161,25 @@ } /** + * Reads a gson object from the specified url. + * + * @param url + * @param clazz + * @param username + * @param password + * @return the deserialized object + * @throws {@link IOException} + */ + public static <X> X retrieveJson(String url, Class<X> clazz, String username, char[] password) + throws IOException { + String json = retrieveJsonString(url, username, password); + if (StringUtils.isEmpty(json)) { + return null; + } + return gson().fromJson(json, clazz); + } + + /** * Retrieves a JSON message. * * @param url @@ -196,6 +217,12 @@ } else if (e.getMessage().indexOf("403") > -1) { // requested url is forbidden by the requesting user throw new ForbiddenException(url); + } else if (e.getMessage().indexOf("405") > -1) { + // requested url is not allowed by the server + throw new NotAllowedException(url); + } else if (e.getMessage().indexOf("501") > -1) { + // requested url is not recognized by the server + throw new UnknownRequestException(url); } throw e; } @@ -258,6 +285,12 @@ } else if (e.getMessage().indexOf("403") > -1) { // requested url is forbidden by the requesting user throw new ForbiddenException(url); + } else if (e.getMessage().indexOf("405") > -1) { + // requested url is not allowed by the server + throw new NotAllowedException(url); + } else if (e.getMessage().indexOf("501") > -1) { + // requested url is not recognized by the server + throw new UnknownRequestException(url); } throw e; } -- Gitblit v1.9.1