Repository: sqoop Updated Branches: refs/heads/sqoop2 adf6cd805 -> acc085406
SQOOP-2823: Sqoop2: RESTiliency: Remove repetitive try-catch block for accessing POST and PUT request (Jarek Jarcec Cecho via Colin Ma) Project: http://git-wip-us.apache.org/repos/asf/sqoop/repo Commit: http://git-wip-us.apache.org/repos/asf/sqoop/commit/acc08540 Tree: http://git-wip-us.apache.org/repos/asf/sqoop/tree/acc08540 Diff: http://git-wip-us.apache.org/repos/asf/sqoop/diff/acc08540 Branch: refs/heads/sqoop2 Commit: acc08540634c91541245b652a95c9ace1ff2ead4 Parents: adf6cd8 Author: Colin Ma <[email protected]> Authored: Thu Feb 18 10:59:10 2016 +0800 Committer: Colin Ma <[email protected]> Committed: Thu Feb 18 10:59:10 2016 +0800 ---------------------------------------------------------------------- .../handler/AuthorizationRequestHandler.java | 28 +++++--------------- .../apache/sqoop/handler/JobRequestHandler.java | 8 +----- .../sqoop/handler/LinkRequestHandler.java | 7 +---- .../org/apache/sqoop/server/RequestContext.java | 10 +++++++ 4 files changed, 19 insertions(+), 34 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/sqoop/blob/acc08540/server/src/main/java/org/apache/sqoop/handler/AuthorizationRequestHandler.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/sqoop/handler/AuthorizationRequestHandler.java b/server/src/main/java/org/apache/sqoop/handler/AuthorizationRequestHandler.java index 6cd77e9..8d4d72b 100644 --- a/server/src/main/java/org/apache/sqoop/handler/AuthorizationRequestHandler.java +++ b/server/src/main/java/org/apache/sqoop/handler/AuthorizationRequestHandler.java @@ -231,13 +231,7 @@ public class AuthorizationRequestHandler implements RequestHandler { AuditLoggerManager manager = AuditLoggerManager.getInstance(); RoleBean bean = new RoleBean(); - - try { - JSONObject json = JSONUtils.parse(ctx.getRequest().getReader()); - bean.restore(json); - } catch (IOException e) { - throw new SqoopException(ServerError.SERVER_0003, "Can't read request content", e); - } + bean.restore(JSONUtils.parse(ctx.getReader())); // Get role object List<MRole> roles = bean.getRoles(); @@ -261,13 +255,9 @@ public class AuthorizationRequestHandler implements RequestHandler { RoleBean rolesBean = new RoleBean(); PrincipalBean principalsBean = new PrincipalBean(); - try { - JSONObject json = JSONUtils.parse(ctx.getRequest().getReader()); + JSONObject json = JSONUtils.parse(ctx.getReader()); rolesBean.restore(json); principalsBean.restore(json); - } catch (IOException e) { - throw new SqoopException(ServerError.SERVER_0003, "Can't read request content", e); - } // Get role object List<MRole> roles = rolesBean.getRoles(); @@ -293,16 +283,12 @@ public class AuthorizationRequestHandler implements RequestHandler { PrincipalBean principalsBean = new PrincipalBean(); PrivilegesBean privilegesBean = new PrivilegesBean(); + JSONObject json = JSONUtils.parse(ctx.getReader()); + principalsBean.restore(json); try { - JSONObject json = JSONUtils.parse(ctx.getRequest().getReader()); - principalsBean.restore(json); - try { - privilegesBean.restore(json); - } catch (Exception e) {//Privilege is null, revoke all privileges from principal - privilegesBean = null; - } - } catch (IOException e) { - throw new SqoopException(ServerError.SERVER_0003, "Can't read request content", e); + privilegesBean.restore(json); + } catch (Exception e) {//Privilege is null, revoke all privileges from principal + privilegesBean = null; } // Get principal object http://git-wip-us.apache.org/repos/asf/sqoop/blob/acc08540/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java b/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java index 9d259e1..3070059 100644 --- a/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java +++ b/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java @@ -159,13 +159,7 @@ public class JobRequestHandler implements RequestHandler { Repository repository = RepositoryManager.getInstance().getRepository(); JobBean bean = new JobBean(); - - try { - JSONObject json = JSONUtils.parse(ctx.getRequest().getReader()); - bean.restore(json); - } catch (IOException e) { - throw new SqoopException(ServerError.SERVER_0003, "Can't read request content", e); - } + bean.restore(JSONUtils.parse(ctx.getReader())); String username = ctx.getUserName(); http://git-wip-us.apache.org/repos/asf/sqoop/blob/acc08540/server/src/main/java/org/apache/sqoop/handler/LinkRequestHandler.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/sqoop/handler/LinkRequestHandler.java b/server/src/main/java/org/apache/sqoop/handler/LinkRequestHandler.java index 7d7f1de..b44ae87 100644 --- a/server/src/main/java/org/apache/sqoop/handler/LinkRequestHandler.java +++ b/server/src/main/java/org/apache/sqoop/handler/LinkRequestHandler.java @@ -112,12 +112,7 @@ public class LinkRequestHandler implements RequestHandler { Repository repository = RepositoryManager.getInstance().getRepository(); LinkBean linkBean = new LinkBean(); - try { - JSONObject postData = JSONUtils.parse(ctx.getRequest().getReader()); - linkBean.restore(postData); - } catch (IOException e) { - throw new SqoopException(ServerError.SERVER_0003, "Can't read request content", e); - } + linkBean.restore(JSONUtils.parse(ctx.getReader())); String username = ctx.getUserName(); http://git-wip-us.apache.org/repos/asf/sqoop/blob/acc08540/server/src/main/java/org/apache/sqoop/server/RequestContext.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/sqoop/server/RequestContext.java b/server/src/main/java/org/apache/sqoop/server/RequestContext.java index 2beac2b..7d02066 100644 --- a/server/src/main/java/org/apache/sqoop/server/RequestContext.java +++ b/server/src/main/java/org/apache/sqoop/server/RequestContext.java @@ -28,6 +28,8 @@ import org.apache.sqoop.utils.UrlSafeUtils; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.BufferedReader; +import java.io.IOException; import java.util.Locale; public class RequestContext { @@ -76,6 +78,14 @@ public class RequestContext { } } + public BufferedReader getReader() { + try { + return request.getReader(); + } catch (IOException e) { + throw new SqoopException(ServerError.SERVER_0003, "Expected data stream", e); + } + } + /** * Return last element of URL. *
