[
https://issues.apache.org/jira/browse/JDO-615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andy Jefferson updated JDO-615:
-------------------------------
Attachment: jdometadata-5.patch
Updated patch with namings, moved methods from MetadataManager to
PersistenceManagerFactory, and add more missing relations in metadata tree.
Re: priority of user-defined metadata.
Why not make user-defined metadata highest priority? That way the user has a
way of overriding some package.jdo in the CLASSPATH which they can treat as
their fallback. Any problems with this approach that you can see?
Other item : do we want to provide access to metadata for a class being used by
the persistence process ? I'd favour something simple like
ClassMetadata pmf.getMetadata(String classname);
This will allow applications to access mapping info (e.g table used for a
class) and utilise it in a different part of their app. Obviously it would be
down to individual implementations whether they support any subsequent changes
to that metadata if handed out to the user.
> MetaData specification API
> --------------------------
>
> Key: JDO-615
> URL: https://issues.apache.org/jira/browse/JDO-615
> Project: JDO
> Issue Type: New Feature
> Reporter: Andy Jefferson
> Fix For: JDO 2 maintenance release 3
>
> Attachments: jdometadata-5.patch
>
>
> We can specify MetaData via XML or annotations. The only way missing is via
> an API. I propose mirroring the XML structure with interfaces of the form
> public interface MetaData
> {
> addExtension(String key, String value);
> removeExtension(String key, String value);
> ...
> }
> public interface FileMetaData
> {
> addPackage(PackageMetaData pmd);
> ...
> }
> public interface PackageMetaData
> {
> addClass(ClassMetaData cmd)
> ...
> }
> public interface ClassMetaData
> {
> addField(FieldMetaData fmd)
> ...
> }
> public interface FieldMetaData
> {
> setInheritance(InheritanceMetaData inhmd)
> ...
> }
> and so on.
> We would then require a method on the PMF to register the metadata.
> If there are no objections to such a feature I'll propose a patch to try to
> provide all current JDO2 capabilities.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.