NanoContainer IoC
  1. NanoContainer IoC
  2. NANOIOC-1

New Nano module for creation of adaptor to Type2 & Type1 frameworks

    Details

    • Type: New Feature New Feature
    • Status: Open Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Labels:
      None
    • Number of attachments :
      0

      Description

      This new sub-project takes a PicoContainer component and writes additional classes to make it compatible with Avalon, Spring, Hive Ejb etc.

      The project should use Xdoclet (or perhaps generama). It will peek into the constructor of a compiled Pico component and generate source (or perhaps binaries) for compatability with the chosen component framework.

      As well as being instantiable in its own right, there should be an Ant Task and Maven capability :

      <componizer output="build/generated-classes"
      class-suffix="AvalonComp" avalon="true"
      >
      <fileset>
      <!-- the usual -->
      </fileset>
      </componizer>

      <componizer output="build/generated-classes"
      class-suffix="EjbComp" ejb="true"
      />

      <componizer output="build/generated-classes"
      class-suffix="Bean" bean="true"
      />

      <componizer output="build/generated-classes"
      class-suffix="MBean" mbean="true"
      />

      <componizer output="build/generated-classes"
      class-suffix="Bean" bean="true"
      />

      <componizer output="build/generated-classes"
      class-suffix="HiveComp" hive="true"
      />

      <componizer output="build/generated-classes"
      spring="true" <!-- uses default generated class name -->
      />

      I think perhaps that this is a Generama/CGLib thing. It should kind of prove our lowest common denominator quest. If a ctor parameter is an interface, it is a component dependancy. If a ctor param is a string it is a configuration element (important distinction for Avalon, but not type2). Clearly there is some gap for enterpretation in between String & ineterface/impl separated params

      • Paul

        Activity

        There are no comments yet on this issue.

          People

          • Assignee:
            Paul Hammant
            Reporter:
            Paul Hammant
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: