13 Replies Latest reply on Jun 5, 2007 3:22 PM by Kabir Khan

    Spring-int schema support

    Ales Justin Master

      I'm just going through Spring xml schema and there are a couple of features that need to be discussed if we really want to support them.

      First here are some that I think are useful to be added to existing bean metadata support:
      - parent (http://www.springframework.org/docs/reference/beans.html#beans-child-bean-definitions)
      - abstract (same link as parent)

      After you have these previous two, there is a 'merge' option on collections:
      - http://www.springframework.org/docs/reference/beans.html#beans-collection-elements
      Which is probably trivial to implement.

      There are two that fit in the ConfigureAction:
      - autowire (http://www.springframework.org/docs/reference/beans.html#beans-factory-autowire)
      - dependency-check (http://www.springframework.org/docs/reference/beans.html#beans-factory-dependencies)
      I already added support for optional 'autowire-candidate' aka 'contextual-injection-candidate'.

      'scope' element will probably be handled by our kernel scoping impl - additional API on top of deployers?

      And two more which can probably be handled by our aspectized MC configuration:
      - lookup-method (http://www.springframework.org/docs/reference/beans.html#beans-factory-lookup-method-injection)
      - replaced-method (http://www.springframework.org/docs/reference/beans.html#beans-factory-arbitrary-method-replacement)
      Kabir?
      How to integrate this with Joinpoint instantiation?

      Some of them have a 'global' deployment default value.

      What's the deal with all those lifecycle, aware, post-callback interfaces:
      - http://www.springframework.org/docs/reference/beans.html#beans-factory-nature
      - http://www.springframework.org/docs/reference/beans.html#beans-factory-extension
      We can probably wrap most of them into MC features.
      How to get classes into classpath? Meaning, can we ship our own small artifact/jar with just those interfaces?
      So that the notion of not needing full blown Spring IoC is still there. ;-)