You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sqoop.apache.org by "Jarek Jarcec Cecho (JIRA)" <ji...@apache.org> on 2016/02/06 00:21:39 UTC

[jira] [Updated] (SQOOP-2823) Sqoop2: RESTiliency: Remove repetitive try-catch block for accessing POST and PUT request

     [ https://issues.apache.org/jira/browse/SQOOP-2823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jarek Jarcec Cecho updated SQOOP-2823:
--------------------------------------
    Attachment: SQOOP-2823.patch

> Sqoop2: RESTiliency: Remove repetitive try-catch block for accessing POST and PUT request
> -----------------------------------------------------------------------------------------
>
>                 Key: SQOOP-2823
>                 URL: https://issues.apache.org/jira/browse/SQOOP-2823
>             Project: Sqoop
>          Issue Type: Bug
>            Reporter: Jarek Jarcec Cecho
>            Assignee: Jarek Jarcec Cecho
>             Fix For: 1.99.7
>
>         Attachments: SQOOP-2823.patch
>
>
> I've noticed that we have quite a few repetition of code like this one:
> {code}
>      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);
>     }
> {code}
> It's relatively a lot of code just because {{ctx.getRequest()}} can throw an exception. I would like to propose to create a method in our {{ctx}} wrapper to provide the {{getReader}} method without any exception, which will simplify the code to:
> {code}
>     bean.restore(JSONUtils.parse(ctx.getReader()));
> {code}
> We'll of course throw an exception on failure - but using our {{SqoopException}} mechanism.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)