[
https://issues.apache.org/jira/browse/AVRO-1605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15529260#comment-15529260
]
Tom White commented on AVRO-1605:
---------------------------------
I see your point. The motivation behind this change is to upgrade to Jackson 2
(AVRO-1126), so another way to approach this would be to see how the deprecated
methods could be removed in making that change.
I think the main problem here is that there are public methods that should
really only be used by the internals, like JsonProperties#addProp(). In the
absence of any Java-level mechanism for dealing with that, our options are i)
relying on documentation (or an annotation) to say that a method is internal
only, or ii) using a friend package schema and excluding the friend package
from javadoc (see
http://wiki.apidesign.org/wiki/APIDesignPatterns:FriendPackages).
Ideally, we'd also make Schema immutable at the same time, but that doesn't
make this problem any easier.
> Remove Jackson classes from public API
> --------------------------------------
>
> Key: AVRO-1605
> URL: https://issues.apache.org/jira/browse/AVRO-1605
> Project: Avro
> Issue Type: Sub-task
> Components: java
> Affects Versions: 1.7.8
> Reporter: Tom White
> Assignee: Gabor Szadovszky
> Fix For: 1.9.0
>
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)