[jboss-user] [Microcontainer] - Re: MC picking up irrelevant deployers
jaikiran
do-not-reply at jboss.com
Tue Jun 9 06:01:41 EDT 2009
"emuckenhuber" wrote : Yes, setInput() marks the Input as required and addInput() is just used for ordering.
|
So this raises the next question - what is setInputs() for? I believe for marking multiple inputs as "required". For example ABCDeployer requires InputA *and* InputB for it to be considered relevant:
public ABCDeployer()
| {
| setInputs("InputA","InputB");
|
| ...
| }
|
and internally AbstractDeployer.setInputs() does this:
| public void setInputs(Set<String> inputs)
| {
| this.inputs = inputs;
| }
So going by the code of isRelevant(...) that i posted earlier, this deployer will be considered relevant even when none of InputA or InputB are available.
As for the EJB3Deployer i tried as you suggested:
public Ejb3Deployer()
| {
| setInput(JBossMetaData.class); // additional constraint
| addInput(MergedJBossMetaDataDeployer.EJB_MERGED_ATTACHMENT_NAME);
|
and it works (i.e. the irrelevant deployments are no longer picked up). But i have to do bit more testing to ensure that this deployer is picked at the right time/order (i.e. after the MergedJBossMetadataDeployer is run for the deployment unit)
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4236301#4236301
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4236301
More information about the jboss-user
mailing list