You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@gora.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/09/01 13:02:45 UTC

[jira] [Commented] (GORA-429) Implement Maven forbidden-apis plugin in Gora

    [ https://issues.apache.org/jira/browse/GORA-429?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14725185#comment-14725185 ] 

ASF GitHub Bot commented on GORA-429:
-------------------------------------

Github user renato2099 commented on the pull request:

    https://github.com/apache/gora/pull/32#issuecomment-136675372
  
    Hi @lewismc 
    I think the logic is fine, the non-null checks you are describing are for checking nullable schemas, and that is what you've described. Yes, it is recursive if there are nested objects, but the exception is for when "something" goes wrong with serialization (for example, class changes can easily make your serialized data unreadable if you were using reflection) that is why Java forces us to throw an IOException and not NullPointerException. And caching this exception makes us "retry" serialization calling again to <return toBytes(o)> on the object. If we don't print the IO exception, we would probably get an stackOverFlowException because of the recursion and catching this error would be a lot harder.


> Implement Maven forbidden-apis plugin in Gora
> ---------------------------------------------
>
>                 Key: GORA-429
>                 URL: https://issues.apache.org/jira/browse/GORA-429
>             Project: Apache Gora
>          Issue Type: Improvement
>          Components: build process
>            Reporter: Lewis John McGibbney
>            Assignee: Lewis John McGibbney
>             Fix For: 0.6.1
>
>
> The [forbidden-apis Maven plugin|https://github.com/policeman-tools/forbidden-apis] allow us to parse Java byte code to find invocations of method/class/field signatures and fail build 



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