Define, which parts of HV constitute its public API
---------------------------------------------------
Key: HV-310
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HV-310
Project: Hibernate Validator
Issue Type: Improvement
Reporter: Gunnar Morling
Assignee: Hardy Ferentschik
Fix For: 4.1.0
Background:
Mostly users interact only indirectly with Hibernate Validator through the Bean Validation
API. But there are also some classes within HV, which are intended to be directly accessed
by users (@Email, ResourceBundleMessageInterpolator etc). Right now it is not obvious,
which parts (packages, classes) of Hibernate Validator make up this public API.
To do:
* Identify and mark those parts of HV, which constitute its public, user-accessible API.
The following rules should apply:
*# It seems useful to let complete packages be part of the API or not (instead of single
classes)
*# Non-public packages shouldn't contain public packages
*# Whether a package is public or not should be stated in the package's JavaDoc.
*# The fewer public classes there are, the better, as it will be way harder to modify
those in future versions.
* The following packages/classes are candidates for the public API:
** org.hibernate.validator
** org.hibernate.validator.constraints
** org.hibernate.validator.engine.resourceloading (should be moved due to 2.; maybe
CachingResourceBundleLocator should be excluded?)
** org.hibernate.validator.engine.ResourceBundleMessageInterpolator (should be moved due
to 1.)
* Add a section to the HV ref guide describing the public API. In that context it should
be defined and documented, which rules apply to the further development of this API
(especially with respect to changes breaking backward-compatibility)
* Modify the HV OSGi manifest in order to export only the public packages
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira