db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Craig Russell (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JDO-621) Add javax.jdo.JDOEnhancerMain to call the enhancer via standard API
Date Fri, 17 Jul 2009 19:06:15 GMT

    [ https://issues.apache.org/jira/browse/JDO-621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12732681#action_12732681

Craig Russell commented on JDO-621:

The oddity is this:
     * Add class(es) to the items to be enhanced.
    JDOEnhancer addClasses(String... classNames);

     * Add metadata file(s) to the items to be enhanced.
    JDOEnhancer addFiles(String... metadataFiles);

     * Add a jar file to the items to be enhanced.
    JDOEnhancer addJar(String jarFileName);

The signatures for addFiles and addClasses take a String... but the addJar takes a String.
Why are jar files treated differently?

My suggestion is to remove addJar and addClasses and use the addFiles for any of the four
types of files: .jar, .class, .jdo, or directories.

Similarly, if multiple persistence units are allowed, shouldn't we have addPersistenceUnits(String...
pus) instead.

And as long as we're talking about serious changes, how about changing the signatures to use
Iterable<String> as the parameter type instead of String or String...? The main program
is using an ArrayList<String> for its holder and the implementation side is clearly
going to iterate anything that is passed.

> Add javax.jdo.JDOEnhancerMain to call the enhancer via standard API
> -------------------------------------------------------------------
>                 Key: JDO-621
>                 URL: https://issues.apache.org/jira/browse/JDO-621
>             Project: JDO
>          Issue Type: New Feature
>          Components: api2
>    Affects Versions: JDO 2 maintenance release 2
>            Reporter: Craig Russell
>            Assignee: Craig Russell
>             Fix For: JDO 2 maintenance release 3
>         Attachments: jdo-621.patch
> The proposed new class will use the standard enhancer API to enhance classes. The command
line parameters would be similar to the original proposal of JDO-591, with changes as needed
to use the new class in the TCK.
> java -cp classpath {enhancer-class} [options] [jdo-files] [class-files] 
>     where options can be 
>         -persistenceUnit persistence-unit-name : Name of a "persistence-unit" to enhance
the classes for 
>         -d target-dir-name : Write the enhanced classes to the specified directory 
>         -checkonly : Just check the classes for enhancement status 
>         -v : verbose output 

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message