Re: Incorporating VPP code into cgen

From: Mike Kienenberger (mkienen..laska.net)
Date: Mon May 23 2005 - 16:47:41 EDT

  • Next message: Erik Hatcher: "Re: Incorporating VPP code into cgen"

    Andrus Adamchik <andru..bjectstyle.org> wrote:
    > I'd say if we have to do that, we should create our own classes and paste
    > the code there under ObjectStyle license, and put the VPP license in our
    > third party liceses directory under docs.
    >
    > My reasoning is that if we have a Java class under our source tree, it is
    > a part of Cayenne and we will be maintaining it. Otherwise it should be
    > imported as a binary jar.
    >
    > BTW, how many Java classes from VPP are you planning to import,

    I'm still trying to determine how many I'm going to import :) I'd actually
    prefer to import it as a binary jar, but I'd be concerned about the
    additional configuration needed to get the cgen task defined. On the other
    hand, perhaps that's not an issue now that we're using antlib.xml. I'm also
    not yet sure how easy it will be to override any vpp logic we're not
    interested in.

    > and what benefit they add to cgen (FileSets and mappers I would imagine)?

    Actually, the filesets and mappers aren't the reason. The current
    implementation already covers that well enough.

    The benefits we could reap are as follows (from
    http://vpp.sourceforge.net/manual/index.html )
    The first two items are the ones I need.

    1) ability to add velocity context attributes by class ("velocity tool"
    instance).
    2) ability to add velocity context attributes via a property or property
    file.

    Example:

     <vppconfig id="vppconfig0" >
        <context>
          <property key="foo" value="bar" />
          <property file="some.properties" />
          <tool key="mytool" className="foo.bar.MyTool" />
        </context>
      </vppconfig>

    The others that we could get "for free" would be (in my order of perceived
    importance),

    3) ability to specify the resource loader (for Erik's #parse classpath
    request)
    4) ability to specify a velocity macro library
    5) ability to log all velocity messages to the ant logger (default
    configuration for the runtime.log.logsystem engine property).
    6) ability to configure all of these options as a standalone ant vppconfig
    element so it can be shared between tasks.
    7) ability to add an event handler
    8) ability to specify other velocity engine properties.
    9) reference to hash table of all ant properties and to the ant project
    object.
    10) conformance to the vpp ant api.



    This archive was generated by hypermail 2.0.0 : Mon May 23 2005 - 16:45:27 EDT