[jboss-dev-forums] [Design the new POJO MicroContainer] - Re: Way to control when injection happens?
alesj
do-not-reply at jboss.com
Wed Oct 15 04:16:44 EDT 2008
"adrian at jboss.org" wrote : It's here:
| https://jira.jboss.org/jira/browse/JBMICROCONT-81
| but Ales has closed it.
|
| He's done it for annotations but not for xml.
|
| Which maybe enough if you do?
|
Sure. ;-)
I've written two examples (they are commited to the trunk)
of what you can do to enable this:
(1) annotation based
| <deployment xmlns="urn:jboss:bean-deployer:2.0">
|
| <bean name="AnnotationHandlerFactory">
| <constructor factoryClass="org.jboss.kernel.plugins.annotations.BeanAnnotationAdapterFactory" factoryMethod="getInstance" />
| </bean>
| <bean name="AnnotationHandler">
| <constructor factoryMethod="getBeanAnnotationAdapter">
| <factory bean="AnnotationHandlerFactory"/>
| </constructor>
| <incallback method="addAnnotationPlugin" />
| <uncallback method="removeAnnotationPlugin" />
| </bean>
| <bean name="SuperDemandAnnotationPlugin" class="org.jboss.test.kernel.deployment.support.SuperDemandAnnotationPlugin" />
|
| <bean name="Manager" class="org.jboss.test.kernel.deployment.support.SomeCacheTreeManager">
| <property name="clusteredCache"><inject bean="HAPartitionCacheHandler" property="cache"/></property>
| <annotation>@org.jboss.test.kernel.deployment.support.SuperDemand(demand="Partition", whenRequired="Configured", dependentState="Start")</annotation>
| </bean>
|
| <bean name="HAPartitionCacheHandler" class="org.jboss.test.kernel.deployment.support.HAPartitionCacheHandler"/>
|
| <bean name="Partition" class="org.jboss.test.kernel.deployment.support.HAPartition">
| <property name="handler"><inject bean="HAPartitionCacheHandler"/></property>
| </bean>
|
| </deployment>
|
(2) install
| <deployment xmlns="urn:jboss:bean-deployer:2.0">
|
| <bean name="SuperDemand" class="org.jboss.test.kernel.deployment.support.SuperDemandCreator"/>
|
| <bean name="Manager" class="org.jboss.test.kernel.deployment.support.SomeCacheTreeManager">
| <property name="clusteredCache"><inject bean="HAPartitionCacheHandler" property="cache"/></property>
| <install bean="SuperDemand" method="createDependency" whenRequired="Instantiated">
| <parameter><inject fromContext="name"/></parameter>
| <parameter>Partition</parameter>
| <parameter>Configured</parameter>
| <parameter>Start</parameter>
| </install>
| </bean>
|
| <bean name="HAPartitionCacheHandler" class="org.jboss.test.kernel.deployment.support.HAPartitionCacheHandler"/>
|
| <bean name="Partition" class="org.jboss.test.kernel.deployment.support.HAPartition">
| <property name="handler"><inject bean="HAPartitionCacheHandler"/></property>
| </bean>
|
| </deployment>
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4182301#4182301
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4182301
More information about the jboss-dev-forums
mailing list