Summary: | Add annotation for indicating when deprecated features may be removed | ||
---|---|---|---|
Product: | POI | Reporter: | Javen O'Neal <onealj> |
Component: | POI Overall | Assignee: | POI Developers List <dev> |
Status: | NEW --- | ||
Severity: | enhancement | CC: | dtn-asfbugs |
Priority: | P2 | ||
Version: | 3.15-dev | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | All | ||
Attachments: | Find @Deprecated and @Removal annotations with reflection |
Description
Javen O'Neal
2016-07-05 21:50:58 UTC
Added @Removal annotation class in r1751569. Usage: /** * @since POI 3.6 * @deprecated POI 3.15 beta 3 */ @Removal(version="3.17") public class SomeDeprecatedClassOrMethod() { } Todo: write code that uses reflection to find code that is overdue for removal, and build this into a unit test. Created attachment 34767 [details]
Find @Deprecated and @Removal annotations with reflection
The ClassFinder class in the patch uses non-free code. Do we have something already in POI test scaffolding that could give us a list of every org.apache.poi class (bonus points if it can include the o.a.p junit test code)?
If not, is there an ASL-2.0-licensed version that does something similar? Otherwise, we'll need to rewrite these couple lines of recursive class finding via reflection from scratch.
Doesn't the OOXMLLite code do something much like that only for the schema classes? (In reply to Nick Burch from comment #4) > Doesn't the OOXMLLite code do something much like that only for the schema > classes? Probably. The JDK, IDE, and JUnit also find all classes through recursive reflection, if OOXMLLite doesn't pan out. |