1. Torque
  2. TORQUE-50

Supporting local and add-on Generator "Override" jars



      <From an e-mail proposal talked about on the torque-dev list>

      I've been looking at how to package, document, contribute
      my betwixt map/dtd generation code. As Thomas pointed out,
      it's not truely mainstream Torque but might be a useful
      addon. Anyway, this got me thinking about how to best
      support template and/or generator local modifications or

      If the generator build scripts supplied by the Torque
      distro had classpaths that first tried to add any
      *-override.jar files before the distro files, then
      Templates and generator classes could easily be locally
      overriden. This is trivial to do with the Ant
      torque-build.xml. I assume that it would be easy in Maven?

      If no *override.jar files exist, it's a standard install.
      But if you've got local changes to implement or want to
      use a supplied add-on, just add *override.jar files to the
      correct directory(s) and use the standard generation

      IMHO, this seems cleaner than trying to maintain a full
      customized template or generator distros. If a new
      version comes out, just grab the standard, check for
      any gottcha's between it and your modified code, add back
      in your override jars. All the benefits of a new version
      with your local mods included.

      In a lot of cases, like changes to sql generation
      templates (e.g. MySQL Table options ) or new db
      adaptor support (like Informix/MSSQL7), this will be
      very easy. These areas don't change a lot or are
      mostly new templates.

      It also allows for easier add-on contributions. An add-on
      could be supplied as a set of jars that are simply put in
      the correct directories using common How-To instructions.
      The add-in supplier just needs to document any additional

      It's not perfect since add-on's can override each other
      and break... but it's better than it was.

      1. custom-templates.xml
        10 kB
        CG Monroe
      2. Generator Override
        17 kB
        CG Monroe
      3. how-templates-work.xml
        7 kB
        CG Monroe


        No work has yet been logged on this issue.


          • Assignee:
            CG Monroe
          • Votes:
            0 Vote for this issue
            0 Start watching this issue


            • Created: