[jboss-cvs] JBossAS SVN: r71634 - in projects/microcontainer/trunk/aop-mc-int/src: main/org/jboss/aop/microcontainer/beans/metadata and 9 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Apr 2 16:26:53 EDT 2008


Author: kabir.khan at jboss.com
Date: 2008-04-02 16:26:52 -0400 (Wed, 02 Apr 2008)
New Revision: 71634

Added:
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/DeclareDefinition.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AOPDeployment.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractAnnotationBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractDeclareBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractPointcutBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceOrInterceptorData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AfterAdviceData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationIntroductionBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationOverrideBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayBindBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayReplacementBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectManagerAwareBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BaseInterceptorData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BeforeAdviceData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BindBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowCalled.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowEntry.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowNotCalled.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowStackBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ConfigureLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CreateLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareErrorBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareWarningBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DescribeLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DomainBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DynamicCflowBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/FinallyAdviceData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstallLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstantiateLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorRefData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/IntroductionBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/LifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MetaDataBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MixinData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/NamedPointcutBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PreInstallLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrecedenceBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrepareMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackRefData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StartLifecycleBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ThrowingAdviceData.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/TypeDefBeanMetaDataFactory.java
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareDeploymentTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCaseNotAutomatic.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCaseNotAutomatic.xml
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeployemtDifferentOrderTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareTest.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentDifferentOrderTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentDifferentOrderTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentDifferentOrderTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/support/ContainsIA2.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTest.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTest.java
Removed:
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleTestCaseNotAutomatic.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/xml/
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTestCase.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/xml/
Modified:
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/advisor/test/MicrocontainerAdvisedAnnotationOverrideProxyAdvisorTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleBeansTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic2.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic2.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic0.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareAopTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/ConstructorInterceptorWithDependencyTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackTestCaseNotAutomatic.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithAnnotationDependencyTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithDependencyTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedAnnotationDependencyTestCaseNotAutomatic3.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedMethodAnnotationDependencyTestCaseNotAutomatic3.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenClassAnnotationDependencyTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyForChildTestCaseNotAutomatic2.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyTestCaseNotAutomatic2.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/IntroductionDependencyTestCaseNotAutomatic1.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXDecoratedTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXLifecycleTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiDecoratedTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiLifeCycleTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MetaDataTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MultipleLifecycleTestCase.xml
   projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/NonDefaultMethodsLifecycleCallbackTestCaseNotAutomatic.xml
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleTest.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/AspectMCAllTestSuite.java
   projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.java
Log:
[JBAOP-468] Add the missing org.jboss.aop.microcontainer.beans.metadata stuff and rewrite the tests to work with that

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/DeclareDefinition.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/DeclareDefinition.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/DeclareDefinition.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,131 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans;
+
+import org.jboss.aop.AspectManager;
+import org.jboss.aop.pointcut.DeclareDef;
+import org.jboss.aop.pointcut.ast.ParseException;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DeclareDefinition
+{
+   AspectManager manager;
+   
+   String name;
+   
+   String expr;
+   
+   String message;
+   
+   boolean isWarning;
+
+   public AspectManager getManager()
+   {
+      return manager;
+   }
+
+   public void setManager(AspectManager manager)
+   {
+      this.manager = manager;
+   }
+
+   public String getName()
+   {
+      return name;
+   }
+
+   public void setName(String name)
+   {
+      this.name = name;
+   }
+
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+
+   public String getMessage()
+   {
+      return message;
+   }
+
+   public void setMessage(String warning)
+   {
+      this.message = warning;
+   }
+
+   public boolean isWarning()
+   {
+      return isWarning;
+   }
+
+   public void setWarning(boolean isWarning)
+   {
+      this.isWarning = isWarning;
+   }
+   
+   public void start()
+   {
+      if (name == null || name.length() == 0)
+      {
+         throw new IllegalArgumentException("Null name");
+      }
+      if (manager == null)
+      {
+         throw new IllegalArgumentException("Null manager");
+      }
+      if (expr == null)
+      {
+         throw new IllegalArgumentException("Null expr");
+      }
+      if (message == null)
+      {
+         throw new IllegalArgumentException("Null message");
+      }
+      
+      try
+      {
+         DeclareDef def = new DeclareDef(name, expr, isWarning, message);
+         manager.addDeclare(def);
+      }
+      catch(ParseException e)
+      {
+         throw new IllegalArgumentException("The expression '" + expr + "' did not parse", e);
+      }
+   }
+   
+   public void stop()
+   {
+      manager.removeDeclare(name);
+   }
+   
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AOPDeployment.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AOPDeployment.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AOPDeployment.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,86 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAnyElement;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
+import org.jboss.kernel.plugins.deployment.AbstractKernelDeployment;
+import org.jboss.managed.api.annotation.ManagementObject;
+import org.jboss.managed.api.annotation.ManagementProperties;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at ManagementObject(properties = ManagementProperties.EXPLICIT) // TODO - explicitly add props we want to manage 
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="aop")
+ at XmlType(propOrder={"annotations", "classLoader", "beanFactories", "create", "start", "stop", "destroy", "aliases"})
+public class AOPDeployment extends AbstractKernelDeployment
+{
+   private static final long serialVersionUID = 1L;
+   
+   
+   @XmlElements
+   ({
+      @XmlElement(name="annotation", type=AnnotationOverrideBeanMetaDataFactory.class),
+      @XmlElement(name="annotation-introduction", type=AnnotationIntroductionBeanMetaDataFactory.class),
+      @XmlElement(name="arrayreplacement", type=ArrayReplacementBeanMetaDataFactory.class),
+      @XmlElement(name="arraybind", type=ArrayBindBeanMetaDataFactory.class),
+      @XmlElement(name="aspect", type=AspectBeanMetaDataFactory.class),
+      @XmlElement(name="bind", type=BindBeanMetaDataFactory.class),
+      @XmlElement(name="cflow-stack", type=CFlowStackBeanMetaDataFactory.class),
+      @XmlElement(name="declare-error", type=DeclareErrorBeanMetaDataFactory.class),
+      @XmlElement(name="declare-warning", type=DeclareWarningBeanMetaDataFactory.class),
+      @XmlElement(name="dynamic-cflow", type=DynamicCflowBeanMetaDataFactory.class),
+      @XmlElement(name="domain", type=DomainBeanMetaDataFactory.class),
+      @XmlElement(name="interceptor", type=InterceptorBeanMetaDataFactory.class),
+      @XmlElement(name="introduction", type=IntroductionBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-configure", type=ConfigureLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-create", type=CreateLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-describe", type=DescribeLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-install", type=InstallLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-instantiate", type=InstantiateLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-preinstall", type=PreInstallLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-start", type=StartLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="pointcut", type=NamedPointcutBeanMetaDataFactory.class),
+      @XmlElement(name="precedence", type=PrecedenceBeanMetaDataFactory.class),
+      @XmlElement(name="prepare", type=PrepareMetaDataFactory.class),
+      @XmlElement(name="stack", type=StackBeanMetaDataFactory.class),
+      @XmlElement(name="typedef", type=TypeDefBeanMetaDataFactory.class)
+   })
+   @XmlAnyElement
+   public void setBeanFactories(List<BeanMetaDataFactory> beanFactories)
+   {
+      super.setBeanFactories(beanFactories);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractAnnotationBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractAnnotationBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractAnnotationBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,101 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlValue;
+
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.util.id.GUID;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class AbstractAnnotationBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   String expr;
+   
+   boolean invisible;
+   
+   String annotation;
+
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+
+   public boolean isInvisible()
+   {
+      return invisible;
+   }
+
+   @XmlAttribute
+   public void setInvisible(boolean invisible)
+   {
+      this.invisible = invisible;
+   }
+
+   public String getAnnotation()
+   {
+      return annotation;
+   }
+
+   @XmlValue
+   public void setAnnotation(String annotation)
+   {
+      this.annotation = annotation;
+   }
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(GUID.asString(), getBeanClassName());
+      builder.addPropertyMetaData("invisible", invisible);
+      builder.addPropertyMetaData("expr", expr);
+      builder.addPropertyMetaData("annotation", annotation);
+      
+      setAspectManagerProperty(builder);
+      
+      result.add(builder.getBeanMetaData());
+      
+      return result;
+   }
+
+   
+   protected abstract String getBeanClassName();
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractDeclareBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractDeclareBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractDeclareBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,90 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlValue;
+
+import org.jboss.aop.microcontainer.beans.DeclareDefinition;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.util.id.GUID;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class AbstractDeclareBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   String expr;
+   
+   String message;
+   
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+
+   public String getMessage()
+   {
+      return message;
+   }
+
+   @XmlValue
+   public void setMessage(String message)
+   {
+      this.message = message;
+   }
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> beans = new ArrayList<BeanMetaData>();
+      
+      if (name == null)
+      {
+          name = GUID.asString();
+      }
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(name, DeclareDefinition.class.getName());
+      builder.addPropertyMetaData("expr", expr);
+      builder.addPropertyMetaData("name", name);
+      builder.addPropertyMetaData("message", message);
+      builder.addPropertyMetaData("warning", isWarning());
+      setAspectManagerProperty(builder);
+      
+      beans.add(builder.getBeanMetaData());
+      
+      return beans;
+   }
+
+   protected abstract boolean isWarning();
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractPointcutBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractPointcutBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AbstractPointcutBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,74 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.util.id.GUID;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class AbstractPointcutBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   String expr;
+
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+   
+   protected abstract String getBeanClass();
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      if (name == null)
+      {
+         name = GUID.asString();
+      }
+      
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(name, getBeanClass());
+      builder.addPropertyMetaData("name", name);
+      builder.addPropertyMetaData("expr", expr);
+      setAspectManagerProperty(builder);
+      
+      result.add(builder.getBeanMetaData());
+      
+      return result;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AdviceData extends AdviceOrInterceptorData
+{
+   String adviceMethod;
+   
+   public String getAdviceMethod()
+   {
+      return adviceMethod;
+   }
+
+   @XmlAttribute(name="name")
+   public void setAdviceMethod(String method)
+   {
+      this.adviceMethod = method;
+   }
+}
\ No newline at end of file

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceOrInterceptorData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceOrInterceptorData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AdviceOrInterceptorData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,69 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlTransient;
+
+import org.jboss.aop.advice.AdviceType;
+import org.jboss.aop.microcontainer.beans.InterceptorEntry;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class AdviceOrInterceptorData extends BaseInterceptorData
+{
+
+   AdviceType type = AdviceType.AROUND;
+
+   @XmlAttribute(name = "aspect")
+   public void setRefName(String name)
+   {
+      super.setRefName(name);
+   }
+
+   public AdviceType getType()
+   {
+      return type;
+   }
+
+   @XmlTransient
+   public void setType(AdviceType type)
+   {
+      this.type = type;
+   }
+
+   @Override
+   public String getBeanClassName()
+   {
+      return InterceptorEntry.class.getName();
+   }
+
+   public String getAdviceMethod()
+   {
+      return null;
+   }
+
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AfterAdviceData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AfterAdviceData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AfterAdviceData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import org.jboss.aop.advice.AdviceType;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AfterAdviceData extends AdviceData
+{
+   public AfterAdviceData()
+   {
+      setType(AdviceType.AFTER);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationIntroductionBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationIntroductionBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationIntroductionBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.AnnotationIntroduction;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="annotation-introduction")
+public class AnnotationIntroductionBeanMetaDataFactory extends AbstractAnnotationBeanMetaDataFactory
+{
+
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected String getBeanClassName()
+   {
+      return AnnotationIntroduction.class.getName();
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationOverrideBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationOverrideBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AnnotationOverrideBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.AnnotationOverride;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="annotation")
+public class AnnotationOverrideBeanMetaDataFactory extends AbstractAnnotationBeanMetaDataFactory
+{
+
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected String getBeanClassName()
+   {
+      return AnnotationOverride.class.getName();
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayBindBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayBindBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayBindBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,141 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.ArrayBinding;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.util.id.GUID;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="arraybind")
+public class ArrayBindBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+
+   private static final long serialVersionUID = 1L;
+   
+   String type;
+
+   private List<BaseInterceptorData> interceptors = new ArrayList<BaseInterceptorData>();
+   
+   public ArrayBindBeanMetaDataFactory()
+   {
+   }
+
+   @XmlAttribute
+   public void setType(String type)
+   {
+      this.type = type;
+   }
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+
+      //Create AspectBinding
+      if (name == null)
+      {
+         name = GUID.asString();
+      }
+      BeanMetaDataBuilder bindingBuilder = BeanMetaDataBuilder.createBuilder(name, ArrayBinding.class.getName());
+      bindingBuilder.addPropertyMetaData("name", name);
+      bindingBuilder.addPropertyMetaData("type", type);
+      setAspectManagerProperty(bindingBuilder);
+      result.add(bindingBuilder.getBeanMetaData());
+      
+      
+      if (interceptors.size() > 0)
+      {
+         List<ValueMetaData> bindingInterceptors = bindingBuilder.createList();
+         int i = 0;
+         for (BaseInterceptorData interceptor : interceptors)
+         {
+            String intName = name + "$" + i++; 
+            BeanMetaDataBuilder interceptorBuilder = BeanMetaDataBuilder.createBuilder(intName, interceptor.getBeanClassName());
+            setAspectManagerProperty(interceptorBuilder);
+            ValueMetaData injectBinding = interceptorBuilder.createInject(name, null, null, ControllerState.INSTANTIATED);
+            interceptorBuilder.addPropertyMetaData("binding", injectBinding);
+            
+            if (interceptor instanceof AdviceOrInterceptorData)
+            {
+               ValueMetaData injectAspect = interceptorBuilder.createInject(interceptor.getRefName());
+               interceptorBuilder.addPropertyMetaData("aspect", injectAspect);
+               if (((AdviceOrInterceptorData)interceptor).getAdviceMethod() != null)
+               {
+                  interceptorBuilder.addPropertyMetaData("aspectMethod", ((AdviceOrInterceptorData)interceptor).getAdviceMethod());
+               }
+               interceptorBuilder.addPropertyMetaData("type", ((AdviceOrInterceptorData)interceptor).getType());
+            }
+            else
+            {
+               ValueMetaData injectStack = interceptorBuilder.createInject(interceptor.getRefName());
+               interceptorBuilder.addPropertyMetaData("stack", injectStack);
+            }
+            result.add(interceptorBuilder.getBeanMetaData());
+            ValueMetaData injectInterceptor = bindingBuilder.createInject(intName);
+            bindingInterceptors.add(injectInterceptor);
+         }         
+         bindingBuilder.addPropertyMetaData("advices", bindingInterceptors);
+      }
+      
+      return result;
+   }
+   
+   @XmlElements
+   ({
+      @XmlElement(name="advice", type=AdviceData.class),
+      @XmlElement(name="around", type=AdviceData.class),
+      @XmlElement(name="before", type=BeforeAdviceData.class),
+      @XmlElement(name="after", type=AfterAdviceData.class),
+      @XmlElement(name="throwing", type=ThrowingAdviceData.class),
+      @XmlElement(name="finally", type=FinallyAdviceData.class),
+      @XmlElement(name="interceptor-ref", type=InterceptorRefData.class),
+      @XmlElement(name="stack-ref", type=StackRefData.class)
+   })
+   public List<BaseInterceptorData> getInterceptors()
+   {
+      return interceptors;
+   }
+
+   public void setInterceptors(List<BaseInterceptorData> interceptors)
+   {
+      this.interceptors = interceptors;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayReplacementBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayReplacementBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ArrayReplacementBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,96 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.ArrayReplacement;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.util.id.GUID;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="arrayreplacement")
+public class ArrayReplacementBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+
+   private static final long serialVersionUID = 1L;
+   
+   String expr;
+
+   String clazz;
+   
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+
+   public String getClazz()
+   {
+      return clazz;
+   }
+
+   @XmlAttribute(name="class")
+   public void setClazz(String clazz)
+   {
+      this.clazz = clazz;
+   }
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> beans = new ArrayList<BeanMetaData>();
+      
+      if (name == null)
+      {
+         name = GUID.asString();
+      }
+
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(name, ArrayReplacement.class.getName());
+      builder.addPropertyMetaData("name", name);
+      builder.addPropertyMetaData("classes", clazz);
+      builder.addPropertyMetaData("expr", expr);
+      setAspectManagerProperty(builder);
+      
+      beans.add(builder.getBeanMetaData());
+      
+      return beans;
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,197 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.Aspect;
+import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
+import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * AspectBeanMetaDataFactory.
+ * 
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 61194 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="aspect")
+public class AspectBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+   implements BeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   private String scope = "PER_VM";
+
+   private String factory;
+
+   String aspectName;
+   
+   boolean initialisedName;
+   
+   @XmlAttribute
+   public void setScope(String scope)
+   {
+      this.scope = scope;
+   }
+   
+   public String getScope()
+   {
+      return scope;
+   }
+   
+   @XmlAttribute
+   public void setFactory(String clazz)
+   {
+      this.factory = clazz;
+      if (getBean() != null)
+      {
+         throw new RuntimeException("Cannot set both factory and clazz");
+      }
+      //Meeded to satisfy validation in BeanFactoryHandler.endElement()
+      super.setBean(clazz);
+   }
+   
+   public String getFactory()
+   {
+      return factory;
+   }
+   
+   @Override
+   @XmlAttribute(name="class")
+   public void setBean(String bean)
+   {
+      if (factory != null)
+      {
+         throw new RuntimeException("Cannot set both factory and clazz");
+      }
+      super.setBean(bean);
+   }
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      if (this.name == null)
+      {
+         this.name = super.getBean();
+      }
+      
+      //Add the bean factory
+      if (!initialisedName)
+      {
+         aspectName = this.name;
+         this.name = "Factory$" + name;
+         initialisedName = true;
+      }
+      List<BeanMetaData> beans = super.getBeans();
+      if (beans.size() != 1)
+      {
+         throw new RuntimeException("Wrong number of beans" + beans);
+      }
+      BeanMetaData factory = beans.get(0);
+      BeanMetaDataBuilder factoryBuilder = BeanMetaDataBuilder.createBuilder(factory);
+      result.add(factory);
+      
+      //Add the Aspect
+      BeanMetaDataBuilder aspectBuilder = BeanMetaDataBuilder.createBuilder(aspectName, Aspect.class.getName());
+      aspectBuilder.addPropertyMetaData("scope", scope);
+      setAspectManagerProperty(aspectBuilder);
+      
+      if (this.factory != null)
+      {
+         aspectBuilder.addPropertyMetaData("factory", Boolean.TRUE);
+      }
+      result.add(aspectBuilder.getBeanMetaData());
+      
+      if (hasInjectedBeans(factory))
+      {
+         configureWithDependencies(factoryBuilder, aspectBuilder);
+      }
+      else
+      {
+         configureNoDependencies(aspectBuilder);
+      }
+
+      return result;
+   }
+
+   private void configureWithDependencies(BeanMetaDataBuilder factoryBuilder, BeanMetaDataBuilder aspectBuilder)
+   {
+      aspectBuilder.addPropertyMetaData("adviceBean", name);
+      
+      factoryBuilder.addInstallWithThis("install", aspectBuilder.getBeanMetaData().getName());
+      factoryBuilder.addUninstall("uninstall", aspectBuilder.getBeanMetaData().getName());
+   }
+   
+   private void configureNoDependencies(BeanMetaDataBuilder aspectBuilder)
+   {
+      ValueMetaData inject = aspectBuilder.createInject(name);
+      aspectBuilder.addPropertyMetaData("advice", inject);
+   }
+   
+   
+   private boolean hasInjectedBeans(BeanMetaData beanMetaData)
+   {
+      ArrayList<ValueMetaData> dependencies = new ArrayList<ValueMetaData>();
+      getDependencies(dependencies, beanMetaData);
+      
+      for (ValueMetaData dep : dependencies)
+      {
+         if(!((String)dep.getUnderlyingValue()).startsWith("jboss.kernel:service="))
+         {
+            return true;
+         }
+      }
+      return false;
+   }
+   
+   private void getDependencies(ArrayList<ValueMetaData> dependencies, MetaDataVisitorNode node)
+   {
+      Iterator<? extends MetaDataVisitorNode> children = node.getChildren();
+      
+      if (children != null)
+      {
+         while (children.hasNext())
+         {
+            MetaDataVisitorNode child = children.next();
+            if (child instanceof AbstractDependencyValueMetaData)
+            {
+               dependencies.add((AbstractDependencyValueMetaData)child);
+            }
+            getDependencies(dependencies, child);
+         }
+      }
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectManagerAwareBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectManagerAwareBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/AspectManagerAwareBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,88 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.beans.metadata.spi.factory.GenericBeanFactoryMetaData;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class AspectManagerAwareBeanMetaDataFactory extends GenericBeanFactoryMetaData
+{
+   /** Unless specified use the bean with this name as the aspect manager */
+   protected final static String DEFAULT_ASPECT_MANAGER = "AspectManager";
+   
+   /** The bean name of the aspect manager to use */
+   protected String managerBean = DEFAULT_ASPECT_MANAGER;
+
+   /** The property of the aspect manager bean, if any, containing the aspect manager */
+   protected String managerProperty;
+
+   @XmlAttribute(name="manager-bean")
+   public void setManagerBean(String managerBean)
+   {
+      this.managerBean = managerBean;
+   }
+
+   public String getManagerBean()
+   {
+      return managerBean;
+   }
+
+   @XmlAttribute(name="manager-property")
+   public void setManagerProperty(String aspectManagerProperty)
+   {
+      this.managerProperty = aspectManagerProperty;
+   }
+   
+   public String getManagerProperty()
+   {
+      return managerProperty;
+   }
+
+   protected void setAspectManagerProperty(BeanMetaDataBuilder builder)
+   {
+      setAspectManagerProperty(builder, "manager");
+   }
+
+   protected void setAspectManagerProperty(BeanMetaDataBuilder builder, String propertyName)
+   {
+      setAspectManagerProperty(builder, propertyName, managerBean, managerProperty);
+   }
+
+   protected void setAspectManagerProperty(BeanMetaDataBuilder builder, String managerBean, String managerProperty)
+   {
+      setAspectManagerProperty(builder, "manager", managerBean, managerProperty);
+   }
+
+   protected void setAspectManagerProperty(BeanMetaDataBuilder builder, String propertyName, String managerBean, String managerProperty)
+   {
+      ValueMetaData value = builder.createInject(managerBean, managerProperty);
+      builder.addPropertyMetaData(propertyName, value);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BaseInterceptorData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BaseInterceptorData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BaseInterceptorData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,53 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class BaseInterceptorData
+{
+
+   String refName;
+
+   public BaseInterceptorData()
+   {
+      super();
+   }
+
+   public String getRefName()
+   {
+      return refName;
+   }
+
+   @XmlAttribute(name="name")
+   public void setRefName(String name)
+   {
+      this.refName = name;
+   }
+
+   public abstract String getBeanClassName();
+}
\ No newline at end of file

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BeforeAdviceData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BeforeAdviceData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BeforeAdviceData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import org.jboss.aop.advice.AdviceType;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class BeforeAdviceData extends AdviceData
+{
+   public BeforeAdviceData()
+   {
+      setType(AdviceType.BEFORE);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BindBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BindBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/BindBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,148 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.AspectBinding;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.util.id.GUID;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="bind")
+public class BindBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+   private String pointcut;
+   private String cflow;
+   private List<BaseInterceptorData> interceptors = new ArrayList<BaseInterceptorData>();
+
+   public BindBeanMetaDataFactory()
+   {
+   }
+
+   @XmlAttribute
+   public void setPointcut(String pointcut)
+   {
+      this.pointcut = pointcut;
+   }
+   
+   @XmlAttribute
+   public void setCflow(String cflow)
+   {
+      this.cflow = cflow;
+   }
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+
+      //Create AspectBinding
+      if (name == null)
+      {
+         name = GUID.asString();
+      }
+      BeanMetaDataBuilder bindingBuilder = BeanMetaDataBuilder.createBuilder(name, AspectBinding.class.getName());
+      bindingBuilder.addPropertyMetaData("name", name);
+      if (cflow != null)
+      {
+         bindingBuilder.addPropertyMetaData("cflow", cflow);
+      }
+      bindingBuilder.addPropertyMetaData("pointcut", pointcut);
+      setAspectManagerProperty(bindingBuilder);
+      result.add(bindingBuilder.getBeanMetaData());
+      
+      if (interceptors.size() > 0)
+      {
+         List<ValueMetaData> bindingInterceptors = bindingBuilder.createList();
+         int i = 0;
+         for (BaseInterceptorData interceptor : interceptors)
+         {
+            String intName = name + "$" + i++; 
+            BeanMetaDataBuilder interceptorBuilder = BeanMetaDataBuilder.createBuilder(intName, interceptor.getBeanClassName());
+            setAspectManagerProperty(interceptorBuilder);
+            ValueMetaData injectBinding = interceptorBuilder.createInject(name, null, null, ControllerState.INSTANTIATED);
+            interceptorBuilder.addPropertyMetaData("binding", injectBinding);
+            
+            if (interceptor instanceof AdviceOrInterceptorData)
+            {
+               ValueMetaData injectAspect = interceptorBuilder.createInject(interceptor.getRefName());
+               interceptorBuilder.addPropertyMetaData("aspect", injectAspect);
+               if (((AdviceOrInterceptorData)interceptor).getAdviceMethod() != null)
+               {
+                  interceptorBuilder.addPropertyMetaData("aspectMethod", ((AdviceOrInterceptorData)interceptor).getAdviceMethod());
+               }
+               interceptorBuilder.addPropertyMetaData("type", ((AdviceOrInterceptorData)interceptor).getType());
+            }
+            else
+            {
+               ValueMetaData injectStack = interceptorBuilder.createInject(interceptor.getRefName());
+               interceptorBuilder.addPropertyMetaData("stack", injectStack);
+            }
+            result.add(interceptorBuilder.getBeanMetaData());
+            ValueMetaData injectInterceptor = bindingBuilder.createInject(intName);
+            bindingInterceptors.add(injectInterceptor);
+         }         
+         bindingBuilder.addPropertyMetaData("advices", bindingInterceptors);
+      }
+      
+      return result;
+   }
+   
+   @XmlElements
+   ({
+      @XmlElement(name="advice", type=AdviceData.class),
+      @XmlElement(name="around", type=AdviceData.class),
+      @XmlElement(name="before", type=BeforeAdviceData.class),
+      @XmlElement(name="after", type=AfterAdviceData.class),
+      @XmlElement(name="throwing", type=ThrowingAdviceData.class),
+      @XmlElement(name="finally", type=FinallyAdviceData.class),
+      @XmlElement(name="interceptor-ref", type=InterceptorRefData.class),
+      @XmlElement(name="stack-ref", type=StackRefData.class)
+   })
+   public List<BaseInterceptorData> getInterceptors()
+   {
+      return interceptors;
+   }
+
+   public void setInterceptors(List<BaseInterceptorData> interceptors)
+   {
+      this.interceptors = interceptors;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowCalled.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowCalled.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowCalled.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,35 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class CFlowCalled extends CFlowEntry
+{
+   public boolean getCalled()
+   {
+      return true;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowEntry.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowEntry.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowEntry.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class CFlowEntry
+{
+   private String expr;
+   private boolean called;
+
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+   
+   public boolean getCalled()
+   {
+      return called;
+   }
+   
+   public void setCalled(boolean called)
+   {
+      this.called = called;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowNotCalled.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowNotCalled.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowNotCalled.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,35 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class CFlowNotCalled extends CFlowEntry
+{
+   public boolean getCalled()
+   {
+      return false;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowStackBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowStackBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CFlowStackBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,104 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.CFlowStack;
+import org.jboss.aop.microcontainer.beans.CFlowStackEntry;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * AspectBeanMetaDataFactory.
+ * 
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 61194 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="cflow")
+public class CFlowStackBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+   implements BeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+   
+   private List<CFlowEntry> calledEntries = new ArrayList<CFlowEntry>();
+
+   public CFlowStackBeanMetaDataFactory()
+   {
+   }
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      //Add the Aspect
+      BeanMetaDataBuilder cflowStackBuilder = BeanMetaDataBuilder.createBuilder(getName(), CFlowStack.class.getName());
+      cflowStackBuilder.addPropertyMetaData("name", getName());
+      setAspectManagerProperty(cflowStackBuilder);
+      result.add(cflowStackBuilder.getBeanMetaData());
+      
+      List<ValueMetaData> entryList = cflowStackBuilder.createList(null, ArrayList.class.getName());
+      cflowStackBuilder.addPropertyMetaData("entries", entryList);
+      int i = 0;
+      if (calledEntries != null)
+      {
+         for (CFlowEntry entry : calledEntries)
+         {
+            String entryName = getName() + "$" + i++;
+            BeanMetaDataBuilder entryBuilder = BeanMetaDataBuilder.createBuilder(entryName, CFlowStackEntry.class.getName());
+            entryBuilder.addPropertyMetaData("called", entry.getCalled());
+            entryBuilder.addPropertyMetaData("expr", entry.getExpr());
+            ValueMetaData injectEntry = entryBuilder.createInject(entryName);
+            entryList.add(injectEntry);
+            result.add(entryBuilder.getBeanMetaData());
+         }
+      }
+
+      return result;
+   }
+
+   public List<CFlowEntry> getCalledEntries()
+   {
+      return calledEntries;
+   }
+
+   @XmlElements({
+      @XmlElement(name="called", type=CFlowCalled.class),
+      @XmlElement(name="not-called", type=CFlowNotCalled.class)
+   })
+   public void setCalledEntries(List<CFlowEntry> calledEntries)
+   {
+      this.calledEntries = calledEntries;
+   }
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ConfigureLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ConfigureLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ConfigureLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-configure")
+ at XmlType(propOrder={"aliases", "annotations", "classLoader", "constructor", "properties", "create", "start", "depends", "demands", "supplies", "installs", "uninstalls"})
+public class ConfigureLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.CONFIGURED;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CreateLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CreateLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/CreateLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-create")
+public class CreateLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.CREATE;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareErrorBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareErrorBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareErrorBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="declare-error")
+public class DeclareErrorBeanMetaDataFactory extends AbstractDeclareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   protected boolean isWarning()
+   {
+      return false;
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareWarningBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareWarningBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DeclareWarningBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="declare-warning")
+public class DeclareWarningBeanMetaDataFactory extends AbstractDeclareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected boolean isWarning()
+   {
+      return true;
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DescribeLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DescribeLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DescribeLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-describe")
+public class DescribeLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.DESCRIBED;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DomainBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DomainBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DomainBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,171 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAnyElement;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+import org.jboss.aop.microcontainer.beans.AOPDomain;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="domain")
+//Use the same propOrder as the GenericBeanMetaDataFactory, but remove the annotations part since we don't want that to be handled by the super class
+ at XmlType(name="domainType", propOrder={"aliases", "classLoader", "constructor", "properties", "create", "start", "depends", "demands", "supplies", "installs", "uninstalls", "installCallbacks", "uninstallCallbacks"})
+public class DomainBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+   String parentFirst;
+   String inheritDefinitions;
+   String inheritBindings;
+   String extendz;
+   
+   List<BeanMetaDataFactory> childBeans;
+   
+   public DomainBeanMetaDataFactory()
+   {
+   }
+
+   public void setParentFirst(String parentFirst)
+   {
+      this.parentFirst = parentFirst;
+   }
+
+   public void setInheritDefinitions(String inheritDefinitions)
+   {
+      this.inheritDefinitions = inheritDefinitions;
+   }
+
+   public void setInheritBindings(String inheritBindings)
+   {
+      this.inheritBindings = inheritBindings;
+   }
+
+   public void setExtends(String extendz)
+   {
+      this.extendz = extendz;
+   }
+
+   @XmlElements
+   ({
+      @XmlElement(name="annotation", type=AnnotationOverrideBeanMetaDataFactory.class),
+      @XmlElement(name="annotation-introduction", type=AnnotationIntroductionBeanMetaDataFactory.class),
+      @XmlElement(name="arrayreplacement", type=ArrayReplacementBeanMetaDataFactory.class),
+      @XmlElement(name="arraybind", type=ArrayBindBeanMetaDataFactory.class),
+      @XmlElement(name="aspect", type=AspectBeanMetaDataFactory.class),
+      @XmlElement(name="bind", type=BindBeanMetaDataFactory.class),
+      @XmlElement(name="declare-error", type=DeclareErrorBeanMetaDataFactory.class),
+      @XmlElement(name="declare-warning", type=DeclareWarningBeanMetaDataFactory.class),
+      @XmlElement(name="dynamic-cflow", type=DynamicCflowBeanMetaDataFactory.class),
+      @XmlElement(name="cflow-stack", type=CFlowStackBeanMetaDataFactory.class),
+      @XmlElement(name="interceptor", type=InterceptorBeanMetaDataFactory.class),
+      @XmlElement(name="introduction", type=IntroductionBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-configure", type=ConfigureLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-create", type=CreateLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-describe", type=DescribeLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-install", type=InstallLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-instantiate", type=InstantiateLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-preinstall", type=PreInstallLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="lifecycle-start", type=StartLifecycleBeanMetaDataFactory.class),
+      @XmlElement(name="pointcut", type=NamedPointcutBeanMetaDataFactory.class),
+      @XmlElement(name="precedence", type=PrecedenceBeanMetaDataFactory.class),
+      @XmlElement(name="prepare", type=PrepareMetaDataFactory.class),
+      @XmlElement(name="stack", type=StackBeanMetaDataFactory.class),
+      @XmlElement(name="typedef", type=TypeDefBeanMetaDataFactory.class)
+   })
+   @XmlAnyElement
+   public void setChildren(List<BeanMetaDataFactory> childBeans)
+   {
+      this.childBeans = childBeans;
+   }
+   
+   public List<BeanMetaDataFactory> getChildren()
+   {
+      return childBeans;
+   }
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      BeanMetaDataBuilder domainBuilder = BeanMetaDataBuilder.createBuilder(getName(), AOPDomain.class.getName());
+      domainBuilder.addPropertyMetaData("name", getName());
+      
+      if (parentFirst != null)
+      {
+         domainBuilder.addPropertyMetaData("parentFirst", parentFirst);
+      }
+      if (inheritDefinitions != null)
+      {
+         domainBuilder.addPropertyMetaData("inheritDefinitions", inheritDefinitions);
+      }
+      if (inheritBindings != null)
+      {
+         domainBuilder.addPropertyMetaData("inheritBindings", inheritBindings);
+      }
+      if (extendz != null)
+      {
+         domainBuilder.addPropertyMetaData("extends", extendz);
+      }
+      setAspectManagerProperty(domainBuilder);
+      result.add(domainBuilder.getBeanMetaData());
+      
+      if (childBeans != null && childBeans.size() > 0)
+      {
+         for (BeanMetaDataFactory child : childBeans)
+         {
+            if (child instanceof AspectManagerAwareBeanMetaDataFactory)
+            {
+               //Set this domain as the manager of the child beans
+               AspectManagerAwareBeanMetaDataFactory amChild = (AspectManagerAwareBeanMetaDataFactory)child;
+               amChild.setManagerBean(name);
+               amChild.setManagerProperty("domain");
+               amChild.setAspectManagerProperty(BeanMetaDataBuilder.createBuilder(bean));
+            }
+            List<BeanMetaData> childResult = child.getBeans();
+            if (childResult != null && childBeans.size() > 0)
+            {
+               result.addAll(childResult);
+            }
+         }
+      }
+      
+      return result;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DynamicCflowBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DynamicCflowBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/DynamicCflowBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,75 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.DynamicCFlowDef;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="dynamic-cflow")
+public class DynamicCflowBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   String clazz;
+
+   public String getClazz()
+   {
+      return clazz;
+   }
+
+   @XmlAttribute(name="class")
+   public void setClazz(String clazz)
+   {
+      this.clazz = clazz;
+   }
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(name, DynamicCFlowDef.class.getName());
+      builder.addPropertyMetaData("name", name);
+      builder.addPropertyMetaData("className", clazz);
+      setAspectManagerProperty(builder);
+      
+      result.add(builder.getBeanMetaData());
+
+      return result;
+   }
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/FinallyAdviceData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/FinallyAdviceData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/FinallyAdviceData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import org.jboss.aop.advice.AdviceType;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class FinallyAdviceData extends AdviceData
+{
+   public FinallyAdviceData()
+   {
+      setType(AdviceType.FINALLY);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstallLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstallLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstallLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-install")
+public class InstallLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.INSTALLED;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstantiateLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstantiateLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InstantiateLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-instantiate")
+public class InstantiateLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.INSTANTIATED;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="interceptor")
+public class InterceptorBeanMetaDataFactory extends AspectBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorRefData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorRefData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/InterceptorRefData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InterceptorRefData extends AdviceOrInterceptorData
+{
+   public InterceptorRefData()
+   {
+      super();
+   }
+
+   @XmlAttribute(name="name")
+   public void setRefName(String name)
+   {
+      super.refName = name;
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/IntroductionBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/IntroductionBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/IntroductionBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,186 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.IntroductionBinding;
+import org.jboss.aop.microcontainer.beans.MixinEntry;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.util.id.GUID;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * AspectBeanMetaDataFactory.
+ * 
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 61194 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="introduction")
+public class IntroductionBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+   implements BeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   private String clazz;
+   private String expr;
+   private String interfaces;
+   private ArrayList<MixinData> mixins = new ArrayList<MixinData>();
+   
+   public IntroductionBeanMetaDataFactory()
+   {
+   }
+   
+   public String getClazz()
+   {
+      return clazz;
+   }
+
+   @XmlAttribute(name="class")
+   public void setClazz(String clazz)
+   {
+      this.clazz = clazz;
+   }
+
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute(name="expr")
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+
+   
+   public String getInterfaces()
+   {
+      return interfaces;
+   }
+
+   public void setInterfaces(String interfaces)
+   {
+      this.interfaces = interfaces;
+   }
+
+   public ArrayList<MixinData> getMixins()
+   {
+      return mixins;
+   }
+
+   @XmlElement(name="mixin")
+   public void setMixins(ArrayList<MixinData> mixins)
+   {
+      this.mixins = mixins;
+   }
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      //Add the Introduction
+      String name = getName();
+      if (name == null)
+      {
+         name = GUID.asString();
+      }
+     
+      BeanMetaDataBuilder introductionBuilder = BeanMetaDataBuilder.createBuilder(name, IntroductionBinding.class.getName());
+      introductionBuilder.addPropertyMetaData("name", name);
+      setAspectManagerProperty(introductionBuilder);
+      if (clazz != null)
+      {
+         introductionBuilder.addPropertyMetaData("classes", clazz);
+      }
+      if (expr != null)
+      {
+         introductionBuilder.addPropertyMetaData("expr", expr);
+      }
+
+      result.add(introductionBuilder.getBeanMetaData());
+      
+      if (interfaces != null)
+      {
+         addInterfaces(introductionBuilder, interfaces);
+      }
+      if (mixins != null)
+      {
+         addMixins(introductionBuilder, result);
+      }
+      
+      return result;
+   }
+
+   public static void addInterfaces(BeanMetaDataBuilder introductionBuilder, String interfaces)
+   {
+      addInterfaces(introductionBuilder, "interfaces", interfaces);
+   }
+   
+   public static void addInterfaces(BeanMetaDataBuilder introductionBuilder, String propertyName, String interfaces)
+   {
+      List<ValueMetaData> ifs = introductionBuilder.createList(ArrayList.class.getName(), String.class.getName());
+      introductionBuilder.addPropertyMetaData(propertyName, ifs);
+      for (String token : interfaces.split(","))
+      {
+         ifs.add(introductionBuilder.createValue(token.trim()));
+      }
+   }
+   
+   private void addMixins(BeanMetaDataBuilder introductionBuilder, List<BeanMetaData> result)
+   {
+      List<ValueMetaData> mixinList = introductionBuilder.createList(ArrayList.class.getName(), null);
+      introductionBuilder.addPropertyMetaData("mixins", mixinList);
+      int i = 0;
+      for (MixinData mixin : mixins)
+      {
+         String name = introductionBuilder.getBeanMetaData().getName() + "$" + i++;
+         BeanMetaDataBuilder mixinBuilder = BeanMetaDataBuilder.createBuilder(name, MixinEntry.class.getName());
+         mixinBuilder.addPropertyMetaData("mixin", mixin.getMixin());
+         addInterfaces(mixinBuilder, "interfaces", mixin.getInterfaces());
+         if (mixin.getTransient() != null)
+         {
+            mixinBuilder.addPropertyMetaData("transient", mixin.getTransient());
+         }
+         if (mixin.getConstruction() != null)
+         {
+            mixinBuilder.addPropertyMetaData("construction", mixin.getConstruction());
+         }
+         
+         result.add(mixinBuilder.getBeanMetaData());
+         
+         ValueMetaData injectMixin = introductionBuilder.createInject(name);
+         mixinList.add(injectMixin);
+      }
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/LifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/LifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/LifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,129 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+import org.jboss.aop.microcontainer.beans.LifecycleBinding;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
+import org.jboss.beans.metadata.spi.DependencyMetaData;
+import org.jboss.beans.metadata.spi.PropertyMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.dependency.spi.ControllerState;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class LifecycleBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+   implements BeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   private String classes;
+   private String expr;
+   private String installMethod;
+   private String uninstallMethod;
+
+   @XmlAttribute
+   public void setClasses(String classes)
+   {
+      this.classes = classes;
+   }
+   
+   @XmlAttribute
+   public void setExpr(String classes)
+   {
+      this.expr = classes;
+   }
+   
+   @XmlAttribute(name="install")
+   public void setInstallMethod(String installMethod)
+   {
+      this.installMethod = installMethod;
+   }
+
+   @XmlAttribute(name="uninstall")
+   public void setUninstallMethod(String uninstallMethod)
+   {
+      this.uninstallMethod = uninstallMethod;
+   }
+
+   protected abstract ControllerState getState();
+
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+
+      //Do not include the bean factory here, just install the bean directly and the binding
+      BeanMetaDataBuilder lifecycleBuilder = BeanMetaDataBuilder.createBuilder(name, getBean());
+      if (properties != null && properties.size() > 0)
+      {
+         for (PropertyMetaData pmd : properties)
+         {
+            lifecycleBuilder.addPropertyMetaData(pmd.getName(), pmd.getValue());   
+         }
+      }
+      Set<DependencyMetaData> depends = getDepends();
+      if (depends != null && depends.size() > 0)
+      {
+         for (DependencyMetaData depend : depends)
+         {
+            lifecycleBuilder.addDependency(depend.getDependency());
+         }
+      }
+      
+      result.add(lifecycleBuilder.getBeanMetaData());
+      
+      
+      String aspectBindingName = name + "$AspectBinding";
+      BeanMetaDataBuilder bindingBuilder = BeanMetaDataBuilder.createBuilder(aspectBindingName, LifecycleBinding.class.getName());
+      bindingBuilder.addPropertyMetaData("callbackBean", name);
+      setAspectManagerProperty(bindingBuilder);
+      if (expr != null)
+      {
+         bindingBuilder.addPropertyMetaData("expr", expr);
+      }
+      else if (classes != null) 
+      {
+         bindingBuilder.addPropertyMetaData("classes", classes);         
+      }
+      bindingBuilder.addPropertyMetaData("state", getState());
+      if (installMethod != null)
+      {
+         bindingBuilder.addPropertyMetaData("installMethod", installMethod);
+      }
+      if (uninstallMethod != null)
+      {
+         bindingBuilder.addPropertyMetaData("uninstallMethod", uninstallMethod);
+      }
+      result.add(bindingBuilder.getBeanMetaData());
+      
+      return result;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MetaDataBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MetaDataBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MetaDataBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,87 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAnyElement;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.xb.annotations.JBossXmlSchema;
+import org.w3c.dom.Element;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="metadata")
+public class MetaDataBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   String tag;
+   
+   String clazz;
+   
+   List<Element> elements;
+
+   public String getTag()
+   {
+      return tag;
+   }
+
+   @XmlAttribute
+   public void setTag(String tag)
+   {
+      this.tag = tag;
+   }
+
+   public String getClazz()
+   {
+      return clazz;
+   }
+
+   @XmlAttribute(name="class")
+   public void setClazz(String clazz)
+   {
+      this.clazz = clazz;
+   }
+
+   public List<Element> getElements()
+   {
+      return elements;
+   }
+
+   @XmlAnyElement
+   public void setElements(List<Element> elements)
+   {
+      this.elements = elements;
+   }
+   
+   
+   
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MixinData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MixinData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/MixinData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,78 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlElement;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MixinData
+{
+   String mixin;
+   String isTransient;
+   String construction;
+   String interfaces;
+
+   public String getTransient()
+   {
+      return isTransient;
+   }
+
+   public void setTransient(String isTransient)
+   {
+      this.isTransient = isTransient;
+   }
+
+   public String getMixin()
+   {
+      return mixin;
+   }
+
+   @XmlElement(name="class")
+   public void setMixin(String mixin)
+   {
+      this.mixin = mixin;
+   }
+
+   public String getConstruction()
+   {
+      return construction;
+   }
+
+   public void setConstruction(String construction)
+   {
+      this.construction = construction;
+   }
+
+   public String getInterfaces()
+   {
+      return interfaces;
+   }
+
+   public void setInterfaces(String interfaces)
+   {
+      this.interfaces = interfaces;
+   }   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/NamedPointcutBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/NamedPointcutBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/NamedPointcutBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.NamedPointcut;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="pointcut")
+public class NamedPointcutBeanMetaDataFactory extends AbstractPointcutBeanMetaDataFactory
+{
+
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected String getBeanClass()
+   {
+      return NamedPointcut.class.getName();
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PreInstallLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PreInstallLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PreInstallLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * PreInstall lifecycle callback.
+ * 
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-preinstall")
+public class PreInstallLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.PRE_INSTALL;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrecedenceBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrecedenceBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrecedenceBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,110 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.PrecedenceDef;
+import org.jboss.aop.microcontainer.beans.PrecedenceDefEntry;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.util.id.GUID;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="precedence")
+public class PrecedenceBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+   private List<BaseInterceptorData> entries = new ArrayList<BaseInterceptorData>();
+   
+   public PrecedenceBeanMetaDataFactory()
+   {
+   }
+   
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+      
+      //Add the PrecedenceDef
+      String name = getName();
+      if (name == null)
+      {
+         name = GUID.asString();
+      }
+      BeanMetaDataBuilder precedenceBuilder = BeanMetaDataBuilder.createBuilder(name, PrecedenceDef.class.getName());
+      precedenceBuilder.addPropertyMetaData("name", getName());
+      setAspectManagerProperty(precedenceBuilder);
+      result.add(precedenceBuilder.getBeanMetaData());
+      
+      List<ValueMetaData> entryList = precedenceBuilder.createList(ArrayList.class.getName(), null);
+      precedenceBuilder.addPropertyMetaData("entries", entryList);
+      int i = 0;
+      for (BaseInterceptorData entry : entries)
+      {
+         String entryName = name + "$" + i++;
+         BeanMetaDataBuilder entryBuilder = BeanMetaDataBuilder.createBuilder(entryName, PrecedenceDefEntry.class.getName());
+         
+         entryBuilder.addPropertyMetaData("aspectName", entry.getRefName());
+         if (entry instanceof AdviceOrInterceptorData)
+         {
+            entryBuilder.addPropertyMetaData("aspectMethod", ((AdviceOrInterceptorData)entry).getAdviceMethod());
+         }
+         
+         ValueMetaData injectEntry = precedenceBuilder.createInject(entryName);
+         entryList.add(injectEntry);
+         result.add(entryBuilder.getBeanMetaData());
+      }
+
+      return result;
+   }
+
+   @XmlElements
+   ({
+      @XmlElement(name="advice", type=AdviceData.class),
+      @XmlElement(name="interceptor-ref", type=InterceptorRefData.class)
+   })
+   public List<BaseInterceptorData> getEntries()
+   {
+      return entries;
+   }
+
+   public void setEntries(List<BaseInterceptorData> entries)
+   {
+      this.entries = entries;
+   }
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrepareMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrepareMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/PrepareMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.Prepare;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="prepare")
+public class PrepareMetaDataFactory extends AbstractPointcutBeanMetaDataFactory
+{
+
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected String getBeanClass()
+   {
+      return Prepare.class.getName();
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,127 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.Stack;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="stack")
+public class StackBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+   private List<BaseInterceptorData> interceptors = new ArrayList<BaseInterceptorData>();
+
+   public StackBeanMetaDataFactory()
+   {
+   }
+   
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> result = new ArrayList<BeanMetaData>();
+
+      //Create Stack
+      BeanMetaDataBuilder stackBuilder = BeanMetaDataBuilder.createBuilder(name, Stack.class.getName());
+      stackBuilder.addPropertyMetaData("name", name);
+      setAspectManagerProperty(stackBuilder);
+      result.add(stackBuilder.getBeanMetaData());
+      
+      if (interceptors.size() > 0)
+      {
+         List<ValueMetaData> advices = stackBuilder.createList();
+         int i = 0;
+         for (BaseInterceptorData interceptor : interceptors)
+         {
+            String intName = name + "$" + i++; 
+            BeanMetaDataBuilder interceptorBuilder = BeanMetaDataBuilder.createBuilder(intName, interceptor.getBeanClassName());
+            setAspectManagerProperty(interceptorBuilder);
+            interceptorBuilder.addPropertyMetaData("forStack", Boolean.TRUE);
+            
+            if (interceptor instanceof AdviceOrInterceptorData)
+            {
+               ValueMetaData injectAspect = interceptorBuilder.createInject(interceptor.getRefName());
+               interceptorBuilder.addPropertyMetaData("aspect", injectAspect);
+               if (((AdviceOrInterceptorData)interceptor).getAdviceMethod() != null)
+               {
+                  interceptorBuilder.addPropertyMetaData("aspectMethod", ((AdviceOrInterceptorData)interceptor).getAdviceMethod());
+               }
+               interceptorBuilder.addPropertyMetaData("type", ((AdviceOrInterceptorData)interceptor).getType());
+            }
+            else
+            {
+               ValueMetaData injectStack = interceptorBuilder.createInject(interceptor.getRefName());
+               interceptorBuilder.addPropertyMetaData("stack", injectStack);
+            }
+            result.add(interceptorBuilder.getBeanMetaData());
+            ValueMetaData injectAdvice = stackBuilder.createInject(intName);
+            advices.add(injectAdvice);
+         }         
+         stackBuilder.addPropertyMetaData("advices", advices);
+      }
+      
+      return result;
+   }
+   
+   public void addInterceptor(BaseInterceptorData interceptorData)
+   {
+      interceptors.add(interceptorData);
+   }
+
+   @XmlElements
+   ({
+      @XmlElement(name="advice", type=AdviceData.class),
+      @XmlElement(name="around", type=AdviceData.class),
+      @XmlElement(name="before", type=BeforeAdviceData.class),
+      @XmlElement(name="after", type=AfterAdviceData.class),
+      @XmlElement(name="throwing", type=ThrowingAdviceData.class),
+      @XmlElement(name="finally", type=FinallyAdviceData.class),
+      @XmlElement(name="interceptor-ref", type=InterceptorRefData.class),
+      @XmlElement(name="stack-ref", type=StackRefData.class)
+   })
+   public List<BaseInterceptorData> getInterceptors()
+   {
+      return interceptors;
+   }
+
+   public void setInterceptors(List<BaseInterceptorData> interceptors)
+   {
+      this.interceptors = interceptors;
+   }
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackRefData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackRefData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StackRefData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import org.jboss.aop.microcontainer.beans.StackEntry;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class StackRefData extends BaseInterceptorData
+{
+   @Override
+   public String getBeanClassName()
+   {
+      return StackEntry.class.getName();
+   }
+}
\ No newline at end of file

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StartLifecycleBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StartLifecycleBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/StartLifecycleBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="lifecycle-start")
+public class StartLifecycleBeanMetaDataFactory extends LifecycleBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+
+   @Override
+   protected ControllerState getState()
+   {
+      return ControllerState.START;
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ThrowingAdviceData.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ThrowingAdviceData.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/ThrowingAdviceData.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import org.jboss.aop.advice.AdviceType;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class ThrowingAdviceData extends AdviceData
+{
+   public ThrowingAdviceData()
+   {
+      setType(AdviceType.THROWING);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/TypeDefBeanMetaDataFactory.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/TypeDefBeanMetaDataFactory.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/TypeDefBeanMetaDataFactory.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,79 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.aop.microcontainer.beans.TypeDef;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+ at JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="typedef")
+public class TypeDefBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
+{
+   private static final long serialVersionUID = 1L;
+   private String expr;
+
+   public TypeDefBeanMetaDataFactory()
+   {
+   }
+   
+   public String getExpr()
+   {
+      return expr;
+   }
+
+   @XmlAttribute
+   public void setExpr(String expr)
+   {
+      this.expr = expr;
+   }
+
+   @Override
+   public List<BeanMetaData> getBeans()
+   {
+      ArrayList<BeanMetaData> beans = new ArrayList<BeanMetaData>();
+      
+      BeanMetaDataBuilder typedefBuilder = BeanMetaDataBuilder.createBuilder(getName(), TypeDef.class.getName());
+      typedefBuilder.addPropertyMetaData("name", getName());
+      typedefBuilder.addPropertyMetaData("expr", expr);
+      
+      setAspectManagerProperty(typedefBuilder);
+      
+      beans.add(typedefBuilder.getBeanMetaData());
+      
+      return beans;
+   }
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+ at JBossXmlAdaptedTypes
+({
+   @JBossXmlAdaptedType(type=Cardinality.class, valueAdapter=CardinalityValueAdapter.class),
+   @JBossXmlAdaptedType(type=ControllerMode.class, valueAdapter= ControllerModeValueAdapter.class),
+   @JBossXmlAdaptedType(type=ControllerState.class, valueAdapter=ControllerStateValueAdapter.class),
+   @JBossXmlAdaptedType(type=FromContext.class, valueAdapter=FromContextValueAdapter.class),
+   @JBossXmlAdaptedType(type= InjectOption.class, valueAdapter=InjectionOptionValueAdapter.class),
+   @JBossXmlAdaptedType(type=AutowireType.class, valueAdapter= AutowireTypeValueAdapter.class)
+})
+package org.jboss.aop.microcontainer.beans.metadata;
+
+import org.jboss.beans.metadata.api.model.AutowireTypeValueAdapter;
+import org.jboss.beans.metadata.plugins.CardinalityValueAdapter;
+import org.jboss.beans.metadata.plugins.ControllerModeValueAdapter;
+import org.jboss.beans.metadata.plugins.ControllerStateValueAdapter;
+import org.jboss.beans.metadata.api.model.FromContext;
+import org.jboss.beans.metadata.api.model.FromContextValueAdapter;
+import org.jboss.beans.metadata.api.model.InjectOption;
+import org.jboss.beans.metadata.api.model.InjectionOptionValueAdapter;
+import org.jboss.beans.metadata.api.model.AutowireType;
+import org.jboss.dependency.spi.Cardinality;
+import org.jboss.dependency.spi.ControllerMode;
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.xb.annotations.JBossXmlAdaptedType;
+import org.jboss.xb.annotations.JBossXmlAdaptedTypes;
+

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/advisor/test/MicrocontainerAdvisedAnnotationOverrideProxyAdvisorTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/advisor/test/MicrocontainerAdvisedAnnotationOverrideProxyAdvisorTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/advisor/test/MicrocontainerAdvisedAnnotationOverrideProxyAdvisorTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -4,9 +4,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
    
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.MetaDataContextInterceptor">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.MetaDataContextInterceptor">
       <property name="annotation">org.jboss.test.microcontainer.advisor.test.AnnotationWithValue</property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.advisor.test.AnnotationWithValue->doSomething(..)) OR execution(* @org.jboss.test.microcontainer.advisor.test.AnnotationWithValue->@org.jboss.test.microcontainer.advisor.test.AnnotationWithValue(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,25 +1,25 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 	
-	<annotation xmlns="urn:jboss:aop-beans:1.0" expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
+	<annotation expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
 		@org.jboss.test.microcontainer.beans.Annotation1
 	</annotation>
 
-	<annotation xmlns="urn:jboss:aop-beans:1.0" expr="method(void org.jboss.test.microcontainer.beans.POJO->method())" invisible="false">
+	<annotation expr="method(void org.jboss.test.microcontainer.beans.POJO->method())" invisible="false">
 		@org.jboss.test.microcontainer.beans.Annotation2
 	</annotation>
 	
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->@org.jboss.test.microcontainer.beans.Annotation2(..))">
+	<bind pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->@org.jboss.test.microcontainer.beans.Annotation2(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+	
+	<annotation xmlns="urn:jboss:aop-beans:1.0" expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
+		@org.jboss.test.microcontainer.beans.Annotation1
+	</annotation>
+
+	<annotation xmlns="urn:jboss:aop-beans:1.0" expr="method(void org.jboss.test.microcontainer.beans.POJO->method())" invisible="false">
+		@org.jboss.test.microcontainer.beans.Annotation2
+	</annotation>
+	
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->@org.jboss.test.microcontainer.beans.Annotation2(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,18 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory">
+   <aspect factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory">
    </aspect>
 
-   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+   <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.SimpleAspectFactory" name="advice"/>
    </bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
-   
-</deployment>
+
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory">
+   </aspect>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.SimpleAspectFactory" name="advice"/>
+   </bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,18 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect">
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect">
    </aspect>
 
-   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+   <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </bind>
 	
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect">
+   </aspect>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </bind>
+	
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,6 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
+<aop xmlns="urn:jboss:aop-beans:1.0">
    <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
    	<property name="dependency"><inject bean="Dependency"/></property>
-   </aop:aspect>
+   </aspect>
 
-	<aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
-		<aop:advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
-   </aop:bind>
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+		<advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+   </bind>
 
    <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+   	<aop:property name="dependency"><aop:inject bean="Dependency"/></aop:property>
+   </aop:aspect>
+
+	<aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+		<aop:advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+   </aop:bind>
+
+   <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,22 +1,22 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 	
-	<cflow-stack xmlns="urn:jboss:aop-beans:1.0" name="CFlow">
+	<cflow-stack name="CFlow">
 		<not-called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->notCallPOJO(..)"/>
 		<called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->callPOJO(..)"/>
 	</cflow-stack>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))" cflow="CFlow">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))" cflow="CFlow">
 		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
 	</bind>
 	   
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	
+	<cflow-stack xmlns="urn:jboss:aop-beans:1.0" name="CFlow">
+		<not-called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->notCallPOJO(..)"/>
+		<called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->callPOJO(..)"/>
+	</cflow-stack>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))" cflow="CFlow">
+		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+	</bind>
+	   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<aop xmlns="urn:jboss:aop-beans:1.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <declare-error name="DeclareError" expr="call(* org.acme.Foo->error(..))">Error!!!</declare-error>
+
+   <declare-warning name="DeclareWarning" expr="call(* org.acme.Foo->warning(..))">Warning!!!</declare-warning>
+
+   <declare-error expr="call(* org.acme.Foo->anonymous(..))">Anon!!!</declare-error>
+
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <bean name="DeclareError" class="org.jboss.aop.microcontainer.beans.DeclareDefinition">
+      <property name="manager"><inject bean="AspectManager"/></property>
+      <property name="name">DeclareError</property>
+      <property name="expr">call(* org.acme.Foo->error(..))</property>
+      <property name="message">Error!!!</property>
+      <property name="warning">false</property>
+   </bean>
+
+   <bean name="DeclareWarning" class="org.jboss.aop.microcontainer.beans.DeclareDefinition">
+      <property name="manager"><inject bean="AspectManager"/></property>
+      <property name="name">DeclareWarning</property>
+      <property name="expr">call(* org.acme.Foo->warning(..))</property>
+      <property name="message">Warning!!!</property>
+      <property name="warning">true</property>
+   </bean>
+
+   <bean name="DeclareErrorAnynomous" class="org.jboss.aop.microcontainer.beans.DeclareDefinition">
+      <property name="manager"><inject bean="AspectManager"/></property>
+      <property name="name">Some-GUID-Generated-by-xml-layer</property>
+      <property name="expr">call(* org.acme.Foo->anonymous(..))</property>
+      <property name="message">Anon!!!</property>
+      <property name="warning">false</property>
+   </bean>
+
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <declare-error xmlns="urn:jboss:aop-beans:1.0" name="DeclareError" expr="call(* org.acme.Foo->error(..))">Error!!!</declare-error>
+
+   <declare-warning xmlns="urn:jboss:aop-beans:1.0" name="DeclareWarning" expr="call(* org.acme.Foo->warning(..))">Warning!!!</declare-warning>
+
+   <declare-error xmlns="urn:jboss:aop-beans:1.0" expr="call(* org.acme.Foo->anonymous(..))">Anon!!!</declare-error>
+
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,18 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <domain xmlns="urn:jboss:aop-beans:1.0" name="AOPDomain">
+   <domain name="AOPDomain">
 
       <annotation xmlns="urn:jboss:aop-beans:1.0" expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
          @org.jboss.test.microcontainer.beans.Annotation1
       </annotation>
 
-      <annotation-introduction xmlns="urn:jboss:aop-beans:1.0" expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
+      <annotation-introduction expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
          @org.jboss.test.microcontainer.beans.Annotation1
       </annotation-introduction>
 
@@ -21,7 +21,7 @@
          <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
       </precedence>
 
-      <introduction xmlns="urn:jboss:aop-beans:1.0" name="MixinBinding" class="org.jboss.test.microcontainer.beans.POJO">
+      <introduction name="MixinBinding" class="org.jboss.test.microcontainer.beans.POJO">
          <mixin>
             <interfaces>org.jboss.test.microcontainer.beans.MixinInterface</interfaces>
             <class>org.jboss.test.microcontainer.beans.MixinImpl</class>
@@ -29,13 +29,13 @@
          </mixin>
       </introduction>
 
-      <pointcut xmlns="urn:jboss:aop-beans:1.0" name="NamedPointcut" expr="all(org.acme.POJO)"/>
+      <pointcut name="NamedPointcut" expr="all(org.acme.POJO)"/>
 
-      <prepare xmlns="urn:jboss:aop-beans:1.0" name="Prepare" expr="all(org.acme.POJO)"/>
+      <prepare name="Prepare" expr="all(org.acme.POJO)"/>
       
-      <dynamic-cflow xmlns="urn:jboss:aop-beans:1.0" name="DynamicCFlow" class="org.jboss.test.microcontainer.beans.DynamicCFlowImpl"/>
+      <dynamic-cflow name="DynamicCFlow" class="org.jboss.test.microcontainer.beans.DynamicCFlowImpl"/>
       
-      <cflow-stack xmlns="urn:jboss:aop-beans:1.0" name="CFlow">
+      <cflow-stack name="CFlow">
          <not-called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->notCallPOJO(..)"/>
          <called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->callPOJO(..)"/>
       </cflow-stack>
@@ -43,7 +43,7 @@
       <typedef name="TypeDef" expr="class(org.jboss.test.microcontainer.beans.POJO)"/>
    
       <aspect class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
-         <mc:property xmlns:mc="urn:jboss:bean-deployer:2.0" name="someProperty">This is only a test</mc:property>
+         <property name="someProperty">This is only a test</property>
       </aspect>
 
       <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
@@ -65,6 +65,8 @@
       <arraybind name="TestArrayBinding" type="READ_WRITE">
          <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
       </arraybind>
+
+      <declare-error name="DeclareError" expr="call(* org.acme.Foo->error(..))">Error!!!</declare-error>
    </domain>   
    
-</deployment>
+</aop>
\ No newline at end of file

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleBeansTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleBeansTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleBeansTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -191,4 +191,12 @@
       <property name="binding"><inject bean="TestArrayBinding" state="Instantiated"/></property>
    </bean>
 
+   <bean name="DeclareError" class="org.jboss.aop.microcontainer.beans.DeclareDefinition">
+      <property name="manager"><inject bean="AOPDomain" property="domain"/></property>
+      <property name="name">DeclareError</property>
+      <property name="expr">call(* org.acme.Foo->error(..))</property>
+      <property name="message">Error!!!</property>
+      <property name="warning">false</property>
+   </bean>
+
 </deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <domain xmlns="urn:jboss:aop-beans:1.0" name="AOPDomain">
+
+      <annotation xmlns="urn:jboss:aop-beans:1.0" expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
+         @org.jboss.test.microcontainer.beans.Annotation1
+      </annotation>
+
+      <annotation-introduction xmlns="urn:jboss:aop-beans:1.0" expr="class(org.jboss.test.microcontainer.beans.POJO)" invisible="false">
+         @org.jboss.test.microcontainer.beans.Annotation1
+      </annotation-introduction>
+
+      <precedence xmlns="urn:jboss:aop-beans:1.0">
+         <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+         <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+      </precedence>
+
+      <introduction xmlns="urn:jboss:aop-beans:1.0" name="MixinBinding" class="org.jboss.test.microcontainer.beans.POJO">
+         <mixin>
+            <interfaces>org.jboss.test.microcontainer.beans.MixinInterface</interfaces>
+            <class>org.jboss.test.microcontainer.beans.MixinImpl</class>
+            <transient>true</transient>
+         </mixin>
+      </introduction>
+
+      <pointcut xmlns="urn:jboss:aop-beans:1.0" name="NamedPointcut" expr="all(org.acme.POJO)"/>
+
+      <prepare xmlns="urn:jboss:aop-beans:1.0" name="Prepare" expr="all(org.acme.POJO)"/>
+      
+      <dynamic-cflow xmlns="urn:jboss:aop-beans:1.0" name="DynamicCFlow" class="org.jboss.test.microcontainer.beans.DynamicCFlowImpl"/>
+      
+      <cflow-stack xmlns="urn:jboss:aop-beans:1.0" name="CFlow">
+         <not-called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->notCallPOJO(..)"/>
+         <called expr="void org.jboss.test.microcontainer.beans.test.CFlowTest->callPOJO(..)"/>
+      </cflow-stack>
+
+      <typedef name="TypeDef" expr="class(org.jboss.test.microcontainer.beans.POJO)"/>
+   
+      <aspect class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
+         <property xmlns:mc="urn:jboss:bean-deployer:2.0" name="someProperty">This is only a test</property>
+      </aspect>
+
+      <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+      <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+      <stack name="TestStack">
+         <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+      </stack>
+      
+      <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+         <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithProperty" name="advice"/>
+         <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+         <stack-ref name="TestStack"/>
+      </bind>
+
+      <arrayreplacement class="org.jboss.test.microcontainer.beans.woven.test.ClassWithArray"/>
+      
+      <arraybind name="TestArrayBinding" type="READ_WRITE">
+         <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+      </arraybind>
+      
+      <declare-error name="DeclareError" expr="call(* org.acme.Foo->error(..))">Error!!!</declare-error>
+   </domain>   
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-	<dynamic-cflow xmlns="urn:jboss:aop-beans:1.0" name="DynamicCFlow" class="org.jboss.test.microcontainer.beans.DynamicCFlowImpl"/>
+	<dynamic-cflow name="DynamicCFlow" class="org.jboss.test.microcontainer.beans.DynamicCFlowImpl"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))" cflow="DynamicCFlow">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))" cflow="DynamicCFlow">
 		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
 	</bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+	<dynamic-cflow xmlns="urn:jboss:aop-beans:1.0" name="DynamicCFlow" class="org.jboss.test.microcontainer.beans.DynamicCFlowImpl"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))" cflow="DynamicCFlow">
+		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+	</bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<interceptor  xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
+	<interceptor factory="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
 
-	<bind  xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
       <interceptor-ref name="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
 	</bind>
 
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
 
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<interceptor  xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
+
+	<bind  xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
+	</bind>
+
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+	<interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 	
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
 		<interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 	</bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+	
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+		<interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+	</bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
+   <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
       <property name="dependency"><inject bean="Dependency"/></property>
-   </aop:interceptor>
+   </interceptor>
 
-   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
-      <aop:interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
-   </aop:bind>
+   <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
+   </bind>
 
    <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
+      <property name="dependency"><inject bean="Dependency"/></property>
+   </interceptor>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
+   </bind>
+
+   <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,21 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 	
-	<introduction xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.POJO">
+	<introduction class="org.jboss.test.microcontainer.beans.POJO">
 		<interfaces>org.jboss.test.microcontainer.beans.IntroductionInterface</interfaces>
 	</introduction>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.IntroductionInterface}->*(..))">
+	<bind pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.IntroductionInterface}->*(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+	
+	<introduction xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.POJO">
+		<interfaces>org.jboss.test.microcontainer.beans.IntroductionInterface</interfaces>
+	</introduction>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.IntroductionInterface}->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,22 +1,22 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 	
-	<introduction xmlns="urn:jboss:aop-beans:1.0" expr="has(* *->method())">
+	<introduction expr="has(* *->method())">
 		<interfaces>org.jboss.test.microcontainer.beans.IntroductionInterface</interfaces>
 	</introduction>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.IntroductionInterface}->*(..))">
+	<bind pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.IntroductionInterface}->*(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>
 

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+	
+	<introduction xmlns="urn:jboss:aop-beans:1.0" expr="has(* *->method())">
+		<interfaces>org.jboss.test.microcontainer.beans.IntroductionInterface</interfaces>
+	</introduction>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.IntroductionInterface}->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>
+

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,16 +1,16 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.LightweightAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.LightweightAspect"/>
 
-   <bind xmlns="urn:jboss:aop-beans:1.0" name="Binding" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+   <bind name="Binding" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
       <before aspect="org.jboss.test.microcontainer.beans.LightweightAspect" name="before"/>
       <around aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
       <after aspect="org.jboss.test.microcontainer.beans.LightweightAspect" name="after"/>
@@ -21,4 +21,4 @@
 	<!-- TODO This test should go somewhere so it is only run as woven
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    -->
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.LightweightAspect"/>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" name="Binding" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <before aspect="org.jboss.test.microcontainer.beans.LightweightAspect" name="before"/>
+      <around aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+      <after aspect="org.jboss.test.microcontainer.beans.LightweightAspect" name="after"/>
+      <throwing aspect="org.jboss.test.microcontainer.beans.LightweightAspect" name="throwing"/>
+      <finally aspect="org.jboss.test.microcontainer.beans.LightweightAspect" name="finaly"/>
+   </bind>
+	
+	<!-- TODO This test should go somewhere so it is only run as woven
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   -->
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<introduction xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.POJO">
+	<introduction class="org.jboss.test.microcontainer.beans.POJO">
 		<mixin>
 			<interfaces>org.jboss.test.microcontainer.beans.MixinInterface</interfaces>
 			<class>org.jboss.test.microcontainer.beans.MixinImpl</class>
@@ -14,12 +14,12 @@
 		</mixin>
 	</introduction>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.MixinInterface}->*(..))">
+	<bind pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.MixinInterface}->*(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<introduction xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.POJO">
+		<mixin>
+			<interfaces>org.jboss.test.microcontainer.beans.MixinInterface</interfaces>
+			<class>org.jboss.test.microcontainer.beans.MixinImpl</class>
+			<transient>true</transient>
+		</mixin>
+	</introduction>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.MixinInterface}->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<introduction xmlns="urn:jboss:aop-beans:1.0" expr="has(* *->method())">
+	<introduction expr="has(* *->method())">
 		<mixin>
 			<construction>new org.jboss.test.microcontainer.beans.MixinImpl(this, "CUSTOM CONSTRUCTION")</construction>
          <interfaces>
@@ -16,12 +16,12 @@
    	</mixin>
    </introduction>
 	
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 	
-   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.MixinInterface}->*(..))">
+   <bind pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.MixinInterface}->*(..))">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<introduction xmlns="urn:jboss:aop-beans:1.0" expr="has(* *->method())">
+		<mixin>
+			<construction>new org.jboss.test.microcontainer.beans.MixinImpl(this, "CUSTOM CONSTRUCTION")</construction>
+         <interfaces>
+					org.jboss.test.microcontainer.beans.MixinInterface
+         </interfaces>
+         <class>org.jboss.test.microcontainer.beans.MixinImpl</class>
+   	</mixin>
+   </introduction>
+	
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.beans.MixinInterface}->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,20 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 	
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-	<interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+	<interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
 		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
 		<interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 	</bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+	
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+	<interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+		<interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+	</bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency1" class="org.jboss.test.microcontainer.beans.Dependency"/>
    
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency2" class="org.jboss.test.microcontainer.beans.Dependency"/>
    
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic2.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic2.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyAopTestCaseNotAutomatic2.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,26 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
       <property name="dependency"><inject bean="Dependency1"/></property>
-   </aop:aspect>
+   </aspect>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
+   <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
       <property name="dependency"><inject bean="Dependency2"/></property>
-   </aop:interceptor>
+   </interceptor>
  
-   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->*(..))">
-      <aop:advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
-   </aop:bind>
+   <bind pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+   </bind>
 	
-   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation2->*(..))">
-      <aop:interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
-   </aop:bind>
+   <bind pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation2->*(..))">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
+   </bind>
    
    <bean name="Intercepted1" class="org.jboss.test.microcontainer.beans.POJO">
    	<annotation>@org.jboss.test.microcontainer.beans.Annotation1</annotation>
@@ -35,4 +35,4 @@
    	<annotation>@org.jboss.test.microcontainer.beans.Annotation2</annotation>
    </bean>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency1" class="org.jboss.test.microcontainer.beans.Dependency"/>
+   
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency2" class="org.jboss.test.microcontainer.beans.Dependency"/>
+   
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+      <property name="dependency"><inject bean="Dependency1"/></property>
+   </aspect>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
+      <property name="dependency"><inject bean="Dependency2"/></property>
+   </interceptor>
+ 
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+   </bind>
+	
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation2->*(..))">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
+   </bind>
+   
+   <bean name="Intercepted1" class="org.jboss.test.microcontainer.beans.POJO">
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation1</annotation>
+   </bean>
+   
+   <bean name="Intercepted2" class="org.jboss.test.microcontainer.beans.POJO">
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation2</annotation>
+   </bean>
+   
+   <bean name="Intercepted3" class="org.jboss.test.microcontainer.beans.POJO">
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation1</annotation>
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation2</annotation>
+   </bean>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
    
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,22 +1,22 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
       <property name="dependency"><inject bean="Dependency"/></property>
-   </aop:aspect>
+   </aspect>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 
-   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
-      <aop:advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
-      <aop:interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
-   </aop:bind>
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   </bind>
    
    <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
+   
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+      <aop:property name="dependency"><aop:inject bean="Dependency"/></aop:property>
+   </aop:aspect>
+
+   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <aop:advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+      <aop:interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   </aop:bind>
+   
+   <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,34 +1,34 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory"/>
+	<aspect factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory"/>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
+   <aspect factory="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 
-   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStackA">
+   <stack name="TestStackA">
       <advice aspect="org.jboss.test.microcontainer.beans.SimpleAspectFactory" name="advice"/>
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </stack>
 
-   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStackB">
+   <stack name="TestStackB">
       <interceptor-ref name="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
       <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
    </stack>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
 		<stack-ref name="TestStackA"/>
 		<stack-ref name="TestStackB"/>
 	</bind>
 
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
 
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory"/>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStackA">
+      <advice aspect="org.jboss.test.microcontainer.beans.SimpleAspectFactory" name="advice"/>
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </stack>
+
+   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStackB">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.SimpleInterceptorFactory"/>
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   </stack>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+		<stack-ref name="TestStackA"/>
+		<stack-ref name="TestStackB"/>
+	</bind>
+
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+	<aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
    
-   <pointcut xmlns="urn:jboss:aop-beans:1.0" name="NamedPointcut" expr="execution(* org.jboss.test.microcontainer.beans.POJO->*())"/>
+   <pointcut name="NamedPointcut" expr="execution(* org.jboss.test.microcontainer.beans.POJO->*())"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="NamedPointcut">
+	<bind pointcut="NamedPointcut">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
 	</bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   
+   <pointcut xmlns="urn:jboss:aop-beans:1.0" name="NamedPointcut" expr="execution(* org.jboss.test.microcontainer.beans.POJO->*())"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="NamedPointcut">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+	</bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,31 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 	
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-	<aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" name="AspectA" class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
+	<aspect name="AspectA" class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
    	<property name="someProperty">PropertyA</property>
-   </aop:aspect>
+   </aspect>
 
-   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" name="AspectB" class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
+   <aspect name="AspectB" class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
    	<property name="someProperty">PropertyB</property> 
-   </aop:aspect>
+   </aspect>
 
-   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->method())">
+   <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->method())">
       <advice aspect="AspectA" name="advice"/>
    </bind>
    
-   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->method(int))">
+   <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->method(int))">
       <advice aspect="AspectB" name="advice"/>
    </bind>
 
 	<bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
-
-
-
-   
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+	
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" name="AspectA" class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
+   	<aop:property name="someProperty">PropertyA</aop:property>
+   </aop:aspect>
+
+   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" name="AspectB" class="org.jboss.test.microcontainer.beans.TestAspectWithProperty">
+   	<aop:property name="someProperty">PropertyB</aop:property> 
+   </aop:aspect>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->method())">
+      <advice aspect="AspectA" name="advice"/>
+   </bind>
+   
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->method(int))">
+      <advice aspect="AspectB" name="advice"/>
+   </bind>
+
+	<bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>
+
+
+
+   

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
@@ -22,4 +22,4 @@
 	
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+	<aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+   <precedence xmlns="urn:jboss:aop-beans:1.0">
+   	<interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </precedence>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   </bind>
+	
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,23 +1,23 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory"/>
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   <aspect factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
    
-   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStack">
+   <stack name="TestStack">
    	<advice aspect="org.jboss.test.microcontainer.beans.SimpleAspectFactory" name="advice"/>
    	<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </stack>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+	<bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
 		<stack-ref name="TestStack"/>
 	</bind>
 
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" factory="org.jboss.test.microcontainer.beans.SimpleAspectFactory"/>
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   
+   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStack">
+   	<advice aspect="org.jboss.test.microcontainer.beans.SimpleAspectFactory" name="advice"/>
+   	<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </stack>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+		<stack-ref name="TestStack"/>
+	</bind>
+
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency1" class="org.jboss.test.microcontainer.beans.Dependency"/>
 
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency2" class="org.jboss.test.microcontainer.beans.Dependency"/>
 
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic2.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic2.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyAopTestCaseNotAutomatic2.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,40 +1,40 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
       <property name="dependency"><inject bean="Dependency1"/></property>
-   </aop:aspect>
+   </aspect>
 
-   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
+   <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
       <property name="dependency"><inject bean="Dependency2"/></property>
-   </aop:interceptor>
+   </interceptor>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 
-   <stack xmlns="urn:jboss:aop-beans:1.0" name="AspectStack">
+   <stack name="AspectStack">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
    </stack>
 
-   <stack xmlns="urn:jboss:aop-beans:1.0" name="InterceptorStack">
+   <stack name="InterceptorStack">
       <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
       <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
    </stack>
 
-   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->*(..))">
-      <aop:stack-ref name="AspectStack"/>
-   </aop:bind>
+   <bind pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->*(..))">
+      <stack-ref name="AspectStack"/>
+   </bind>
    
-   <aop:bind xmlns:aop="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation2->*(..))">
-      <aop:stack-ref name="InterceptorStack"/>
-   </aop:bind>
+   <bind pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation2->*(..))">
+      <stack-ref name="InterceptorStack"/>
+   </bind>
    
    <bean name="Intercepted1" class="org.jboss.test.microcontainer.beans.POJO">
    	<annotation>@org.jboss.test.microcontainer.beans.Annotation1</annotation>
@@ -49,4 +49,4 @@
    	<annotation>@org.jboss.test.microcontainer.beans.Annotation2</annotation>
    </bean>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency1" class="org.jboss.test.microcontainer.beans.Dependency"/>
+
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency2" class="org.jboss.test.microcontainer.beans.Dependency"/>
+
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+      <property name="dependency"><inject bean="Dependency1"/></property>
+   </aspect>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency">
+      <property name="dependency"><inject bean="Dependency2"/></property>
+   </interceptor>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+   <stack xmlns="urn:jboss:aop-beans:1.0" name="AspectStack">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+   </stack>
+
+   <stack xmlns="urn:jboss:aop-beans:1.0" name="InterceptorStack">
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptorWithDependency"/>
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   </stack>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation1->*(..))">
+      <stack-ref name="AspectStack"/>
+   </bind>
+   
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.beans.Annotation2->*(..))">
+      <stack-ref name="InterceptorStack"/>
+   </bind>
+   
+   <bean name="Intercepted1" class="org.jboss.test.microcontainer.beans.POJO">
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation1</annotation>
+   </bean>
+   
+   <bean name="Intercepted2" class="org.jboss.test.microcontainer.beans.POJO">
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation2</annotation>
+   </bean>
+   
+   <bean name="Intercepted3" class="org.jboss.test.microcontainer.beans.POJO">
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation1</annotation>
+   	<annotation>@org.jboss.test.microcontainer.beans.Annotation2</annotation>
+   </bean>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
    
-</deployment>
+</aop>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,26 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:aspect xmlns:aop="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
       <property name="dependency"><inject bean="Dependency"/></property>
-   </aop:aspect>
+   </aspect>
 
-   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 
-   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStack">
+   <stack name="TestStack">
       <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
       <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
    </stack>
 
-   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+   <bind pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
       <stack-ref name="TestStack"/>
    </bind>
    
    <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency" class="org.jboss.test.microcontainer.beans.Dependency"/>
+   
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspectWithDependency">
+      <property name="dependency"><inject bean="Dependency"/></property>
+   </aspect>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+   <stack xmlns="urn:jboss:aop-beans:1.0" name="TestStack">
+      <advice aspect="org.jboss.test.microcontainer.beans.TestAspectWithDependency" name="advice"/>
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   </stack>
+
+   <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.beans.POJO->*(..))">
+      <stack-ref name="TestStack"/>
+   </bind>
+   
+   <bean name="Intercepted" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.TestAspect"/>
    
-   <typedef xmlns="urn:jboss:aop-beans:1.0" name="TypeDef" expr="class(org.jboss.test.microcontainer.beans.POJO)"/>
+   <typedef name="TypeDef" expr="class(org.jboss.test.microcontainer.beans.POJO)"/>
 
-	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $typedef{TypeDef}->*(..))">
+	<bind pointcut="execution(* $typedef{TypeDef}->*(..))">
 		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
 	</bind>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+   
+   <typedef xmlns="urn:jboss:aop-beans:1.0" name="TypeDef" expr="class(org.jboss.test.microcontainer.beans.POJO)"/>
+
+	<bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $typedef{TypeDef}->*(..))">
+		<advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+	</bind>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,24 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.woven.test.TestArrayAspect"/>
+   <aspect class="org.jboss.test.microcontainer.beans.woven.test.TestArrayAspect"/>
 
-   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+   <interceptor class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
 
-   <prepare xmlns="urn:jboss:aop-beans:1.0" expr="field(* org.jboss.test.microcontainer.beans.woven.test.ClassWithArray->*)"/>
+   <prepare expr="field(* org.jboss.test.microcontainer.beans.woven.test.ClassWithArray->*)"/>
 
-   <arrayreplacement xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.woven.test.ClassWithArray"/>
+   <arrayreplacement class="org.jboss.test.microcontainer.beans.woven.test.ClassWithArray"/>
 
-   <arraybind xmlns="urn:jboss:aop-beans:1.0" type="READ_WRITE">
+   <arraybind type="READ_WRITE">
       <advice aspect="org.jboss.test.microcontainer.beans.woven.test.TestArrayAspect" name="advice"/>
       <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/> 
    </arraybind>
   
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.woven.test.ClassWithArray"/>
 
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/ArrayDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aspect xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.woven.test.TestArrayAspect"/>
+
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestInterceptor"/>
+
+   <prepare xmlns="urn:jboss:aop-beans:1.0" expr="field(* org.jboss.test.microcontainer.beans.woven.test.ClassWithArray->*)"/>
+
+   <arrayreplacement xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.woven.test.ClassWithArray"/>
+
+   <arraybind xmlns="urn:jboss:aop-beans:1.0" type="READ_WRITE">
+      <advice aspect="org.jboss.test.microcontainer.beans.woven.test.TestArrayAspect" name="advice"/>
+      <interceptor-ref name="org.jboss.test.microcontainer.beans.TestInterceptor"/> 
+   </arraybind>
+  
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.woven.test.ClassWithArray"/>
+
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareAopTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareAopTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareAopTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
+<aop xmlns="urn:jboss:aop-beans:1.0">
 
    <bean name="AspectManager" class="org.jboss.aop.AspectManager">
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <prepare xmlns="urn:jboss:aop-beans:1.0" expr="all(org.jboss.test.microcontainer.beans.POJO)"/>
+   <prepare expr="all(org.jboss.test.microcontainer.beans.POJO)"/>
    
    <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
    
-</deployment>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareDeploymentTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareDeploymentTestCase.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/beans/woven/test/PrepareDeploymentTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <prepare xmlns="urn:jboss:aop-beans:1.0" expr="all(org.jboss.test.microcontainer.beans.POJO)"/>
+   
+   <bean name="Bean" class="org.jboss.test.microcontainer.beans.POJO"/>
+   
+</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/ConstructorInterceptorWithDependencyTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/ConstructorInterceptorWithDependencyTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/ConstructorInterceptorWithDependencyTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,12 +6,12 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" 
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" 
       name="InterceptedAdvice" 
       class="org.jboss.test.microcontainer.support.InterceptorWithDependency"
       manager-bean="TheAspectManager">
       <property name="simpleBean"><inject bean="Dependency"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" 
       pointcut="execution(@org.jboss.test.microcontainer.support.Test->new(..))"

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
 <deployment xmlns="urn:jboss:bean-deployer:2.0">
-
+<!--
   <bean name="Bean1" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
     <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="",exposedInterface=org.jboss.test.microcontainer.support.SimpleBean.class)</annotation>
   </bean>
@@ -36,5 +36,15 @@
       <value>123</value>
     </property>
   </bean>
+  -->
+  <interceptor xmlns="urn:jboss:aop-beans:1.0" class="org.jboss.test.microcontainer.beans.TestAspect"/>
+  
+  <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="all(@org.jboss.test.microcontainer.support.ContainsIA2)">
+    <advice aspect="org.jboss.test.microcontainer.beans.TestAspect" name="advice"/>
+  </bind>
 
+  <bean name="Bean7" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+    <annotation>@org.jboss.test.microcontainer.support.ContainsIA2</annotation>
+  </bean>
+
 </deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackTestCaseNotAutomatic.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackTestCaseNotAutomatic.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackTestCaseNotAutomatic.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -5,12 +5,12 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
                name="LifecycleCallback"
                class="org.jboss.test.microcontainer.support.SimpleLifecycleCallback"
                classes="org.jboss.test.microcontainer.support.SimpleBeanImpl">
 		<property name="testProperty">Test123</property>               
-   </aop:lifecycle-configure>
+   </lifecycle-configure>
             
    <bean name="Intercepted" class="org.jboss.test.microcontainer.support.SimpleBeanImpl"/>
    

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<aop xmlns="urn:jboss:aop-beans:1.0">
+
+   <bean name="Dependency" class="java.lang.Object"/>
+
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<aop xmlns="urn:jboss:aop-beans:1.0">
+
+   <bean name="TheAspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <lifecycle-configure
+               name="LifecycleCallback"
+               class="org.jboss.test.microcontainer.support.LifecycleCallbackWithBeanDependency"
+               expr="class(org.jboss.test.microcontainer.support.SimpleBeanImpl)"
+               manager-bean="TheAspectManager">
+      <property name="dependency"><inject bean="Dependency"/></property>
+   </lifecycle-configure>
+
+   <bean name="Intercepted" class="org.jboss.test.microcontainer.support.SimpleBeanImpl"/>
+   
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic0.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="Dependency" class="java.lang.Object"/>
+
+</deployment>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic1.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="TheAspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
+               name="LifecycleCallback"
+               class="org.jboss.test.microcontainer.support.LifecycleCallbackWithBeanDependency"
+               expr="class(org.jboss.test.microcontainer.support.SimpleBeanImpl)"
+               manager-bean="TheAspectManager">
+      <property name="dependency"><inject bean="Dependency"/></property>
+   </lifecycle-configure>
+
+   <bean name="Intercepted" class="org.jboss.test.microcontainer.support.SimpleBeanImpl"/>
+   
+</deployment>

Deleted: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
-   <bean name="Dependency" class="java.lang.Object"/>
-
-</deployment>

Deleted: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
-   <bean name="TheAspectManager" class="org.jboss.aop.AspectManager">
-      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
-   </bean>
-
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="LifecycleCallback"
-               class="org.jboss.test.microcontainer.support.LifecycleCallbackWithBeanDependency"
-               expr="class(org.jboss.test.microcontainer.support.SimpleBeanImpl)"
-               manager-bean="TheAspectManager">
-      <property name="dependency"><inject bean="Dependency"/></property>
-   </aop:lifecycle-configure>
-
-   <bean name="Intercepted" class="org.jboss.test.microcontainer.support.SimpleBeanImpl"/>
-   
-</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithAnnotationDependencyTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithAnnotationDependencyTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithAnnotationDependencyTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
       <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->*(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithDependencyTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithDependencyTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithDependencyTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithDependency">
       <property name="simpleBean"><inject bean="Dependency"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->*(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedAnnotationDependencyTestCaseNotAutomatic3.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedAnnotationDependencyTestCaseNotAutomatic3.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedAnnotationDependencyTestCaseNotAutomatic3.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithNestedAnnotationDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithNestedAnnotationDependency">
       <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->*(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedMethodAnnotationDependencyTestCaseNotAutomatic3.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedMethodAnnotationDependencyTestCaseNotAutomatic3.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithNestedMethodAnnotationDependencyTestCaseNotAutomatic3.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithNestedAnnotationDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithNestedAnnotationDependency">
       <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->*(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenClassAnnotationDependencyTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenClassAnnotationDependencyTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenClassAnnotationDependencyTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
       <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->*(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyForChildTestCaseNotAutomatic2.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyForChildTestCaseNotAutomatic2.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyForChildTestCaseNotAutomatic2.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
       <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->@org.jboss.test.microcontainer.support.Test(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyTestCaseNotAutomatic2.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyTestCaseNotAutomatic2.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/InterceptorWithOverriddenMethodAnnotationDependencyTestCaseNotAutomatic2.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithAnnotationDependency">
       <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* @org.jboss.test.microcontainer.support.Test->@org.jboss.test.microcontainer.support.Test(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/IntroductionDependencyTestCaseNotAutomatic1.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/IntroductionDependencyTestCaseNotAutomatic1.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/IntroductionDependencyTestCaseNotAutomatic1.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithDependency">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="InterceptedAdvice" class="org.jboss.test.microcontainer.support.InterceptorWithDependency">
       <property name="simpleBean"><inject bean="Dependency"/></property>
-   </aop:interceptor>
+   </interceptor>
    
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* $instanceof{org.jboss.test.microcontainer.support.MarkerInterface}->*(..))">
       <interceptor-ref name="InterceptedAdvice"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXDecoratedTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXDecoratedTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXDecoratedTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -10,13 +10,13 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="JMXAspect" class="org.jboss.aop.microcontainer.aspects.jmx.JMXIntroduction">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="JMXAspect" class="org.jboss.aop.microcontainer.aspects.jmx.JMXIntroduction">
       <property name="mbeanServer"><inject bean="MBeanServer"/></property>
-   </aop:interceptor>
+   </interceptor>
    
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="MetaDataContextAspect" class="org.jboss.test.microcontainer.support.MetaDataContextInterceptor">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="MetaDataContextAspect" class="org.jboss.test.microcontainer.support.MetaDataContextInterceptor">
       <property name="annotation">org.jboss.aop.microcontainer.aspects.jmx.JMX</property>
-   </aop:interceptor>
+   </interceptor>
    
    <introduction xmlns="urn:jboss:aop-beans:1.0" class="@org.jboss.aop.microcontainer.aspects.jmx.JMX">
       <interfaces>org.jboss.kernel.spi.dependency.KernelControllerContextAware</interfaces>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXLifecycleTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXLifecycleTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JMXLifecycleTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -10,12 +10,12 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
                name="DependencyAdvice"
                class="org.jboss.aop.microcontainer.aspects.jmx.JMXLifecycleCallback"
                classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX">
       <property name="mbeanServer"><inject bean="MBeanServer"/></property>
-   </aop:lifecycle-configure>
+   </lifecycle-configure>
 
    <bean name="Bean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
       <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="", exposedInterface=org.jboss.test.microcontainer.support.SimpleBean.class)</annotation>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiDecoratedTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiDecoratedTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiDecoratedTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,13 +6,13 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="JndiAspect" class="org.jboss.aop.microcontainer.aspects.jndi.JndiIntroduction">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="JndiAspect" class="org.jboss.aop.microcontainer.aspects.jndi.JndiIntroduction">
       <property name="env">
            <map class="java.util.Properties" keyClass="java.lang.String" valueClass="java.lang.String">
               <entry><key>java.naming.factory.initial</key><value>org.jboss.test.microcontainer.support.jndi.MockInitialContextFactory</value></entry>
            </map>
       </property>
-   </aop:interceptor>
+   </interceptor>
    
    <introduction xmlns="urn:jboss:aop-beans:1.0" class="@org.jboss.aop.microcontainer.aspects.jndi.JndiBinding">
       <interfaces>org.jboss.kernel.spi.dependency.KernelControllerContextAware</interfaces>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiLifeCycleTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiLifeCycleTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/JndiLifeCycleTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,7 +6,7 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
       name="DependencyAdvice"
       class="org.jboss.aop.microcontainer.aspects.jndi.JndiLifecycleCallback"
       classes="@org.jboss.aop.microcontainer.aspects.jndi.JndiBinding">
@@ -15,7 +15,7 @@
             <entry><key>java.naming.factory.initial</key><value>org.jboss.test.microcontainer.support.jndi.MockInitialContextFactory</value></entry>
          </map>
       </property>
-   </aop:lifecycle-configure>
+   </lifecycle-configure>
 
 
    <bean name="Bean" class="org.jboss.test.microcontainer.support.jndi.SimpleBean">

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCaseNotAutomatic.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCaseNotAutomatic.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCaseNotAutomatic.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<aop xmlns="urn:jboss:aop-beans:1.0">
+
+   <bean name="MBeanServer" class="java.lang.Object">
+      <constructor factoryClass="javax.management.MBeanServerFactory" factoryMethod="createMBeanServer"/>
+   </bean>
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <lifecycle-configure
+               name="ConfigureAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Configure">
+   </lifecycle-configure>
+
+   <lifecycle-create
+               name="CreateAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Create">
+   </lifecycle-create>
+
+   <lifecycle-describe
+               name="DescribeAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Describe">
+   </lifecycle-describe>
+
+   <lifecycle-install
+               name="InstallAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Install">
+   </lifecycle-install>
+
+   <lifecycle-instantiate
+               name="InstantiateAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Instantiate">
+   </lifecycle-instantiate>
+
+   <lifecycle-start
+               name="StartAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Start">
+   </lifecycle-start>
+
+   <bean name="ConfigureBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Configure</annotation>
+   </bean>
+
+   <bean name="CreateBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Create</annotation>
+   </bean>
+
+   <bean name="DescribeBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Describe</annotation>
+   </bean>
+
+   <bean name="InstallBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Install</annotation>
+   </bean>
+
+   <bean name="InstantiateBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Instantiate</annotation>
+   </bean>
+
+   <bean name="StartBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Start</annotation>
+   </bean>
+</aop>

Added: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCaseNotAutomatic.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCaseNotAutomatic.xml	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCaseNotAutomatic.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="MBeanServer" class="java.lang.Object">
+      <constructor factoryClass="javax.management.MBeanServerFactory" factoryMethod="createMBeanServer"/>
+   </bean>
+
+   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
+      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
+   </bean>
+
+   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+               name="ConfigureAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Configure">
+   </aop:lifecycle-configure>
+
+   <aop:lifecycle-create xmlns:aop="urn:jboss:aop-beans:1.0"
+               name="CreateAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Create">
+   </aop:lifecycle-create>
+
+   <aop:lifecycle-describe xmlns:aop="urn:jboss:aop-beans:1.0"
+               name="DescribeAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Describe">
+   </aop:lifecycle-describe>
+
+   <aop:lifecycle-install xmlns:aop="urn:jboss:aop-beans:1.0"
+               name="InstallAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Install">
+   </aop:lifecycle-install>
+
+   <aop:lifecycle-instantiate xmlns:aop="urn:jboss:aop-beans:1.0"
+               name="InstantiateAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Instantiate">
+   </aop:lifecycle-instantiate>
+
+   <aop:lifecycle-start xmlns:aop="urn:jboss:aop-beans:1.0"
+               name="StartAdvice"
+               class="org.jboss.test.microcontainer.support.LifecycleCallback"
+               classes="@org.jboss.test.microcontainer.support.Start">
+   </aop:lifecycle-start>
+
+   <bean name="ConfigureBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Configure</annotation>
+   </bean>
+
+   <bean name="CreateBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Create</annotation>
+   </bean>
+
+   <bean name="DescribeBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Describe</annotation>
+   </bean>
+
+   <bean name="InstallBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Install</annotation>
+   </bean>
+
+   <bean name="InstantiateBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Instantiate</annotation>
+   </bean>
+
+   <bean name="StartBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
+      <annotation>@org.jboss.test.microcontainer.support.Start</annotation>
+   </bean>
+</deployment>

Deleted: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleTestCaseNotAutomatic.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleTestCaseNotAutomatic.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/LifecycleTestCaseNotAutomatic.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
-   <bean name="MBeanServer" class="java.lang.Object">
-      <constructor factoryClass="javax.management.MBeanServerFactory" factoryMethod="createMBeanServer"/>
-   </bean>
-
-   <bean name="AspectManager" class="org.jboss.aop.AspectManager">
-      <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
-   </bean>
-
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="ConfigureAdvice"
-               class="org.jboss.test.microcontainer.support.LifecycleCallback"
-               classes="@org.jboss.test.microcontainer.support.Configure">
-   </aop:lifecycle-configure>
-
-   <aop:lifecycle-create xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="CreateAdvice"
-               class="org.jboss.test.microcontainer.support.LifecycleCallback"
-               classes="@org.jboss.test.microcontainer.support.Create">
-   </aop:lifecycle-create>
-
-   <aop:lifecycle-describe xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="DescribeAdvice"
-               class="org.jboss.test.microcontainer.support.LifecycleCallback"
-               classes="@org.jboss.test.microcontainer.support.Describe">
-   </aop:lifecycle-describe>
-
-   <aop:lifecycle-install xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="InstallAdvice"
-               class="org.jboss.test.microcontainer.support.LifecycleCallback"
-               classes="@org.jboss.test.microcontainer.support.Install">
-   </aop:lifecycle-install>
-
-   <aop:lifecycle-instantiate xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="InstantiateAdvice"
-               class="org.jboss.test.microcontainer.support.LifecycleCallback"
-               classes="@org.jboss.test.microcontainer.support.Instantiate">
-   </aop:lifecycle-instantiate>
-
-   <aop:lifecycle-start xmlns:aop="urn:jboss:aop-beans:1.0"
-               name="StartAdvice"
-               class="org.jboss.test.microcontainer.support.LifecycleCallback"
-               classes="@org.jboss.test.microcontainer.support.Start">
-   </aop:lifecycle-start>
-
-   <bean name="ConfigureBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-      <annotation>@org.jboss.test.microcontainer.support.Configure</annotation>
-   </bean>
-
-   <bean name="CreateBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-      <annotation>@org.jboss.test.microcontainer.support.Create</annotation>
-   </bean>
-
-   <bean name="DescribeBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-      <annotation>@org.jboss.test.microcontainer.support.Describe</annotation>
-   </bean>
-
-   <bean name="InstallBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-      <annotation>@org.jboss.test.microcontainer.support.Install</annotation>
-   </bean>
-
-   <bean name="InstantiateBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-      <annotation>@org.jboss.test.microcontainer.support.Instantiate</annotation>
-   </bean>
-
-   <bean name="StartBean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-      <annotation>@org.jboss.test.microcontainer.support.Start</annotation>
-   </bean>
-</deployment>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MetaDataTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MetaDataTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MetaDataTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -6,9 +6,9 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:interceptor xmlns:aop="urn:jboss:aop-beans:1.0" name="MetaDataContextAspect" class="org.jboss.test.microcontainer.support.MetaDataContextInterceptor">
+   <interceptor xmlns="urn:jboss:aop-beans:1.0" name="MetaDataContextAspect" class="org.jboss.test.microcontainer.support.MetaDataContextInterceptor">
       <property name="annotation">org.jboss.test.microcontainer.support.Test</property>
-   </aop:interceptor>
+   </interceptor>
 
    <bind xmlns="urn:jboss:aop-beans:1.0" pointcut="execution(* org.jboss.test.microcontainer.support.PropertyBean->*(..))">
       <interceptor-ref name="MetaDataContextAspect"/>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MultipleLifecycleTestCase.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MultipleLifecycleTestCase.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/MultipleLifecycleTestCase.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -10,18 +10,18 @@
       <constructor factoryClass="org.jboss.aop.AspectManager" factoryMethod="instance"/>
    </bean>
 
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
                name="JMXAdvice"
                class="org.jboss.aop.microcontainer.aspects.jmx.JMXLifecycleCallback"
                classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX">
       <property name="mbeanServer"><inject bean="MBeanServer"/></property>
-   </aop:lifecycle-configure>
+   </lifecycle-configure>
 
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
                name="JndiAdvice"
                class="org.jboss.test.microcontainer.support.SimpleLifecycleCallback"
                classes="org.jboss.test.microcontainer.support.SimpleBeanImpl">
-   </aop:lifecycle-configure>
+   </lifecycle-configure>
 
    <bean name="Bean" class="org.jboss.test.microcontainer.support.SimpleBeanImpl">
       <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="", exposedInterface=org.jboss.test.microcontainer.support.SimpleBean.class)</annotation>

Modified: projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/NonDefaultMethodsLifecycleCallbackTestCaseNotAutomatic.xml
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/NonDefaultMethodsLifecycleCallbackTestCaseNotAutomatic.xml	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/resources/tests/org/jboss/test/microcontainer/test/NonDefaultMethodsLifecycleCallbackTestCaseNotAutomatic.xml	2008-04-02 20:26:52 UTC (rev 71634)
@@ -4,7 +4,7 @@
    <bean name="TheAspectManager" class="org.jboss.test.microcontainer.support.AspectManagerBean">
    </bean>
 
-   <aop:lifecycle-configure xmlns:aop="urn:jboss:aop-beans:1.0"
+   <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
                name="LifecycleCallback"
                class="org.jboss.test.microcontainer.support.NonDefaultMethodsLifecycleCallback"
                classes="org.jboss.test.microcontainer.support.SimpleBeanImpl"
@@ -12,7 +12,7 @@
                uninstall="uninit"
                manager-bean="TheAspectManager"
                manager-property="manager">
-   </aop:lifecycle-configure>
+   </lifecycle-configure>
    
 
    <bean name="Intercepted" class="org.jboss.test.microcontainer.support.SimpleBeanImpl"/>

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AnnotationOverrideDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AnnotationOverrideDeploymentTestCase extends AnnotationOverrideTest
+{
+   public static Test suite()
+   {
+      return suite(AnnotationOverrideDeploymentTestCase.class);
+   }
+   
+   public AnnotationOverrideDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectFactorySimpleDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AspectFactorySimpleDeploymentTestCase extends AspectFactorySimpleTest
+{
+   public static Test suite()
+   {
+      return suite(AspectFactorySimpleDeploymentTestCase.class);
+   }
+   
+   public AspectFactorySimpleDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectSimpleDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AspectSimpleDeploymentTestCase extends AspectSimpleTest
+{
+
+   public static Test suite()
+   {
+      return suite(AspectSimpleDeploymentTestCase.class);
+   }
+
+   public AspectSimpleDeploymentTestCase(String name)
+   {
+      super(name);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeployemtDifferentOrderTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeployemtDifferentOrderTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeployemtDifferentOrderTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AspectWithDependencyDeployemtDifferentOrderTestCase extends AspectWithDependencyDeploymentTestCase
+{
+   public static Test suite()
+   {
+      TestSuite suite =  new TestSuite();
+      suite.addTest(new AspectWithDependencyDeployemtDifferentOrderTestCase("testInterceptorWithDependencyWrongOrder"));
+      suite.addTest(new AspectWithDependencyDeployemtDifferentOrderTestCase("testInterceptorWithDependencyCorrectOrder"));
+      return suite;
+   }
+
+   public AspectWithDependencyDeployemtDifferentOrderTestCase(String test)
+   {
+      super(test);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/AspectWithDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,55 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AspectWithDependencyDeploymentTestCase extends AspectWithDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(AspectWithDependencyDeploymentTestCase.class);
+   }
+   
+   public AspectWithDependencyDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "AspectWithDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "AspectWithDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/CFlowDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class CFlowDeploymentTestCase extends CFlowTest
+{
+   public static Test suite()
+   {
+      return suite(CFlowDeploymentTestCase.class);
+   }
+   
+   public CFlowDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareAopTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DeclareAopTestCase extends DeclareTest
+{
+   public DeclareAopTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(DeclareAopTestCase.class);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareBeansTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DeclareBeansTestCase extends DeclareTest
+{
+   public DeclareBeansTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(DeclareBeansTestCase.class);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DeclareDeploymentTestCase extends DeclareTest
+{
+   public DeclareDeploymentTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(DeclareDeploymentTestCase.class);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareTest.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareTest.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DeclareTest.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,83 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import java.util.Iterator;
+
+import org.jboss.aop.AspectManager;
+import org.jboss.aop.pointcut.DeclareDef;
+import org.jboss.test.aop.junit.AOPMicrocontainerTest;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class DeclareTest extends AOPMicrocontainerTest
+{
+   public DeclareTest(String name)
+   {
+      super(name);
+   }
+   
+   public void testDeclares()
+   {
+      AspectManager manager = AspectManager.instance();
+      
+      boolean doneAnonymous = false;
+      int i = 0;
+      Iterator<DeclareDef> it = manager.getDeclares();
+      while (it.hasNext())
+      {
+         DeclareDef def = it.next();
+         if (def.getName().equals("DeclareError"))
+         {
+            checkDeclare(def, false, "call(* org.acme.Foo->error(..))", "Error!!!");
+         }
+         else if (def.getName().equals("DeclareWarning"))
+         {
+            checkDeclare(def, true, "call(* org.acme.Foo->warning(..))", "Warning!!!");
+         }
+         else
+         {
+            //This one will have a GUID for its name when done from a deployment or aop xml
+            if (doneAnonymous)
+            {
+               fail("Already done an anonymous DeclareDef in the deployment");
+            }
+            checkDeclare(def, false, "call(* org.acme.Foo->anonymous(..))", "Anon!!!");
+            doneAnonymous = true;
+         }
+         i++;
+      }
+      
+      assertEquals("Wrong number of DeclareDefs", 3, i);
+   }
+   
+   private void checkDeclare(DeclareDef def, boolean isWarning, String expr, String msg)
+   {
+      assertEquals(isWarning, def.getWarning());
+      assertEquals(expr, def.getExpr());
+      assertEquals(msg, def.getMsg());
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DomainSimpleDeploymentTestCase extends DomainSimpleTest
+{
+
+   public DomainSimpleDeploymentTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(DomainSimpleDeploymentTestCase.class);
+   }
+
+}

Modified: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleTest.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleTest.java	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DomainSimpleTest.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -22,10 +22,12 @@
 package org.jboss.test.microcontainer.beans.test;
 
 import java.util.Collection;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
 import org.jboss.aop.AspectManager;
+import org.jboss.aop.pointcut.DeclareDef;
 import org.jboss.test.microcontainer.beans.POJO;
 import org.jboss.test.microcontainer.beans.TestAspect;
 import org.jboss.test.microcontainer.beans.TestAspectWithProperty;
@@ -112,6 +114,16 @@
 
       o = manager.getArrayBinding("TestArrayBinding");
       checkShouldBeThere(o, shouldBeThere);
+      
+      Iterator<DeclareDef> it = manager.getDeclares();
+      if (shouldBeThere)
+      {
+         assertTrue(it.hasNext());
+         o = it.next();
+         assertNotNull(o);
+      }
+      assertFalse(it.hasNext());
+      
    }
 
    private void checkShouldBeThere(Object o, boolean shouldBeThere)

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/DynamicCFlowDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DynamicCFlowDeploymentTestCase extends DynamicCFlowTest
+{
+   public static Test suite()
+   {
+      return suite(DynamicCFlowDeploymentTestCase.class);
+   }
+   
+   public DynamicCFlowDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorFactorySimpleDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InterceptorFactorySimpleDeploymentTestCase extends InterceptorFactorySimpleTest
+{
+   public static Test suite()
+   {
+      return suite(InterceptorFactorySimpleDeploymentTestCase.class);
+   }
+   
+   public InterceptorFactorySimpleDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorSimpleDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InterceptorSimpleDeploymentTestCase extends InterceptorSimpleTest
+{
+
+   public static Test suite()
+   {
+      return suite(InterceptorSimpleDeploymentTestCase.class);
+   }
+   
+   public InterceptorSimpleDeploymentTestCase(String name)
+   {
+      super(name);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentDifferentOrderTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentDifferentOrderTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentDifferentOrderTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InterceptorWithDependencyDeploymentDifferentOrderTestCase extends InterceptorWithDependencyDeploymentTestCase
+{
+   public static Test suite()
+   {
+      TestSuite suite =  new TestSuite();
+      suite.addTest(new InterceptorWithDependencyDeploymentTestCase("testInterceptorWithDependencyWrongOrder"));
+      suite.addTest(new InterceptorWithDependencyDeploymentTestCase("testInterceptorWithDependencyCorrectOrder"));
+      return suite;
+   }
+
+   public InterceptorWithDependencyDeploymentDifferentOrderTestCase(String test)
+   {
+      super(test);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/InterceptorWithDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,55 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InterceptorWithDependencyDeploymentTestCase extends InterceptorWithDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(InterceptorWithDependencyDeploymentTestCase.class);
+   }
+   
+   public InterceptorWithDependencyDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "InterceptorWithDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "InterceptorWithDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionClassesDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class IntroductionClassesDeploymentTestCase extends IntroductionClassesTest
+{
+   public static Test suite()
+   {
+      return suite(IntroductionClassesDeploymentTestCase.class);
+   }
+   
+   public IntroductionClassesDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/IntroductionExprDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class IntroductionExprDeploymentTestCase extends IntroductionExprTest
+{
+   public static Test suite()
+   {
+      return suite(IntroductionExprDeploymentTestCase.class);
+   }
+   
+   public IntroductionExprDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/LightweightAspectDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,45 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class LightweightAspectDeploymentTestCase extends LightweightAspectTest
+{
+   public static Test suite()
+   {
+      return suite(LightweightAspectDeploymentTestCase.class);
+   }
+   
+   public LightweightAspectDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinClassesDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MixinClassesDeploymentTestCase extends MixinClassesTest
+{
+   public static Test suite()
+   {
+      return suite(MixinClassesDeploymentTestCase.class);
+   }
+   
+   public MixinClassesDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MixinExprDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MixinExprDeploymentTestCase extends MixinExprTest
+{
+   public static Test suite()
+   {
+      return suite(MixinExprDeploymentTestCase.class);
+   }
+   
+   public MixinExprDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdviceDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MultipleAdviceDeploymentTestCase extends MultipleAdviceTest
+{
+   public static Test suite()
+   {
+      return suite(MultipleAdviceDeploymentTestCase.class);
+   }
+   
+   public MultipleAdviceDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase
+      extends
+         MultipleAdvicesWithMultipleDependencyDeploymentTestCase
+{
+   public static Test suite()
+   {
+      TestSuite suite =  new TestSuite();
+      suite.addTest(new MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyWrongOrder"));
+      suite.addTest(new MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyCorrectOrder"));
+      return suite;
+   }
+
+   public MultipleAdvicesWithMultipleDependencyDeploymentDifferentOrderTestCase(String test)
+   {
+      super(test);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithMultipleDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,61 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MultipleAdvicesWithMultipleDependencyDeploymentTestCase extends MultipleAdvicesWithMultipleDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(MultipleAdvicesWithMultipleDependencyDeploymentTestCase.class);
+   }
+   
+   public MultipleAdvicesWithMultipleDependencyDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+   @Override
+   public String getFile0()
+   {
+      return "MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   public String getFile1()
+   {
+      return "MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+
+   @Override
+   public String getFile2()
+   {
+      return "MultipleAdvicesWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml";
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase
+      extends
+         MultipleAdvicesWithSingleDependencyDeploymentTestCase
+{
+   public static Test suite()
+   {
+      TestSuite suite =  new TestSuite();
+      suite.addTest(new MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyWrongOrder"));
+      suite.addTest(new MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyCorrectOrder"));
+      return suite;
+   }
+
+   public MultipleAdvicesWithSingleDependencyDeploymentDifferentOrderTestCase(String test)
+   {
+      super(test);
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleAdvicesWithSingleDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,57 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MultipleAdvicesWithSingleDependencyDeploymentTestCase extends MultipleAdvicesWithSingleDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(MultipleAdvicesWithSingleDependencyDeploymentTestCase.class);
+   }
+   
+   public MultipleAdvicesWithSingleDependencyDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "MultipleAdvicesWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/MultipleStackDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class MultipleStackDeploymentTestCase extends MultipleStackTest
+{
+   public static Test suite()
+   {
+      return suite(MultipleStackDeploymentTestCase.class);
+   }
+   
+   public MultipleStackDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NamedPointcutDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class NamedPointcutDeploymentTestCase extends NamedPointcutTest
+{
+   public static Test suite()
+   {
+      return suite(NamedPointcutAopTestCase.class);
+   }
+   
+   public NamedPointcutDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/NonStandardNameAspectDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class NonStandardNameAspectDeploymentTestCase extends NonStandardNameAspectTest
+{
+   public static Test suite()
+   {
+      return suite(NonStandardNameAspectDeploymentTestCase.class);
+   }
+   
+   public NonStandardNameAspectDeploymentTestCase(String test)
+   {
+      super(test);
+   }  
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/PrecedenceDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class PrecedenceDeploymentTestCase extends PrecedenceTest
+{
+   public static Test suite()
+   {
+      return suite(PrecedenceDeploymentTestCase.class);
+   }
+   
+   public PrecedenceDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class StackDeploymentTestCase extends StackTest
+{
+   public static Test suite()
+   {
+      return suite(StackDeploymentTestCase.class);
+   }
+   
+   public StackDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentDifferentOrderTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentDifferentOrderTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentDifferentOrderTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class StackWithMultipleDependencyDeploymentDifferentOrderTestCase extends StackWithMultipleDependencyDeploymentTestCase
+{
+   public static Test suite()
+   {
+      TestSuite suite =  new TestSuite();
+      suite.addTest(new StackWithMultipleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyWrongOrder"));
+      suite.addTest(new StackWithMultipleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyCorrectOrder"));
+      return suite;
+   }
+   
+   public StackWithMultipleDependencyDeploymentDifferentOrderTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithMultipleDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,61 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class StackWithMultipleDependencyDeploymentTestCase extends StackWithMultipleDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(StackWithMultipleDependencyDeploymentTestCase.class);
+   }
+   
+   public StackWithMultipleDependencyDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "StackWithMultipleDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "StackWithMultipleDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+
+   @Override
+   protected String getFile2()
+   {
+      return "StackWithMultipleDependencyDeploymentTestCaseNotAutomatic2.xml";
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentDifferentOrderTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentDifferentOrderTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentDifferentOrderTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class StackWithSingleDependencyDeploymentDifferentOrderTestCase extends StackWithSingleDependencyDeploymentTestCase
+{
+   public static Test suite()
+   {
+      TestSuite suite =  new TestSuite();
+      suite.addTest(new StackWithSingleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyWrongOrder"));
+      suite.addTest(new StackWithSingleDependencyDeploymentDifferentOrderTestCase("testInterceptorWithDependencyCorrectOrder"));
+      return suite;
+   }
+
+   public StackWithSingleDependencyDeploymentDifferentOrderTestCase(String test)
+   {
+      super(test);
+   }   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/StackWithSingleDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,57 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class StackWithSingleDependencyDeploymentTestCase extends StackWithSingleDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(StackWithSingleDependencyDeploymentTestCase.class);
+   }
+   
+   public StackWithSingleDependencyDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "StackWithSingleDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "StackWithSingleDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+
+   
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/beans/test/TypeDefDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,43 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.beans.test;
+
+import junit.framework.Test;
+
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class TypeDefDeploymentTestCase extends TypeDefTest
+{
+   public static Test suite()
+   {
+      return suite(TypeDefDeploymentTestCase.class);
+   }
+   
+   public TypeDefDeploymentTestCase(String test)
+   {
+      super(test);
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/support/ContainsIA2.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/support/ContainsIA2.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/support/ContainsIA2.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.microcontainer.support;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
+
+import org.jboss.metadata.spi.annotation.InstanceAnnotation;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+ at Retention(RetentionPolicy.RUNTIME)
+ at Target({ElementType.TYPE, ElementType.METHOD})
+ at InstanceAnnotation(false)
+public @interface ContainsIA2
+{
+}
\ No newline at end of file

Modified: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/AspectMCAllTestSuite.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/AspectMCAllTestSuite.java	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/AspectMCAllTestSuite.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -54,7 +54,7 @@
       suite.addTest(InterceptorWithOverriddenMethodAnnotationDependencyForChildTestCase.suite());
       suite.addTest(InterceptorWithOverriddenMethodAnnotationDependencyTestCase.suite());
       suite.addTest(IntroductionDependencyTestCase.suite());
-      suite.addTest(LifecycleTestCase.suite());
+      suite.addTest(LifecycleAopTestCase.suite());
       suite.addTest(JMXDecoratedTestCase.suite());
       suite.addTest(JMXLifecycleTestCase.suite());
       suite.addTest(JndiDecoratedTestCase.suite());

Modified: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.java	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/HasInstanceAnnotationTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -43,13 +43,15 @@
 
    public void testInstanceAnnotation() throws Throwable
    {
-      assertIsPojo("Bean1");
-      assertIsPojo("Bean2");
-
-      assertIsAspectized("Bean3");
-      assertIsAspectized("Bean4");
-
-      assertIsAspectized("Bean5");
-      assertIsAspectized("Bean6");
+//      assertIsPojo("Bean1");
+//      assertIsPojo("Bean2");
+//
+//      assertIsAspectized("Bean3");
+//      assertIsAspectized("Bean4");
+//
+//      assertIsAspectized("Bean5");
+//      assertIsAspectized("Bean6");
+      
+      assertIsAspectized("Bean7");
    }
 }

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyAopTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InitialLifecycleCallbackWithDependencyAopTestCase extends InitialLifecycleCallbackWithDependencyTest
+{
+   public InitialLifecycleCallbackWithDependencyAopTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(InitialLifecycleCallbackWithDependencyAopTestCase.class);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "InitialLifecycleCallbackWithDependencyAopTestCaseNotAutomatic1.xml";
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,55 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class InitialLifecycleCallbackWithDependencyDeploymentTestCase extends InitialLifecycleCallbackWithDependencyTest
+{
+
+   public InitialLifecycleCallbackWithDependencyDeploymentTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(InitialLifecycleCallbackWithDependencyDeploymentTestCase.class);
+   }
+
+   @Override
+   protected String getFile0()
+   {
+      return "InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic0.xml";
+   }
+
+   @Override
+   protected String getFile1()
+   {
+      return "InitialLifecycleCallbackWithDependencyDeploymentTestCaseNotAutomatic1.xml";
+   }
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTest.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTest.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTest.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,357 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.test;
+
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.kernel.spi.dependency.KernelControllerContext;
+import org.jboss.test.aop.junit.AOPMicrocontainerTest;
+import org.jboss.test.microcontainer.support.LifecycleCallbackWithBeanDependency;
+import org.jboss.test.microcontainer.support.SimpleBean;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public abstract class InitialLifecycleCallbackWithDependencyTest extends AOPMicrocontainerTest
+{
+   public InitialLifecycleCallbackWithDependencyTest(String name)
+   {
+      super(name);
+   }
+
+   public void testLifecycleInterceptionsWithDependencyCorrectOrder() throws Exception
+   {
+      deploy(getFile0());
+      try
+      {
+         Object dependency = getCheckBeanExists("Dependency");
+         assertNotNull(dependency);
+         boolean itworked = false;
+
+         LifecycleCallbackWithBeanDependency.interceptions.clear();
+         deploy(getFile1());
+         try
+         {
+            validate();
+            getCheckBeanExists("Intercepted");
+            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
+            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+            assertEquals("Intercepted", handled.contextName);
+            assertEquals(ControllerState.CONFIGURED, handled.toState);
+            assertNotNull(lifecycle.getDependency());
+            assertEquals(dependency, lifecycle.getDependency());
+            itworked = true;
+         }
+         finally
+         {
+            LifecycleCallbackWithBeanDependency.interceptions.clear();
+            undeploy(getFile1());
+            if (itworked)
+            {
+               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+               assertEquals("Intercepted", handled.contextName);
+               assertEquals(ControllerState.CONFIGURED, handled.toState);
+            }
+         }
+      }
+      finally
+      {
+         undeploy(getFile0());
+      }
+   }
+   
+   public void testLifecycleInterceptionsWithDependencyWrongOrder() throws Exception
+   {
+      deploy(getFile1());
+      try
+      {
+         SimpleBean bean;
+         try
+         {
+            bean = (SimpleBean) getBean("Intercepted");
+            fail("'Interceped' should not be installed yet");
+         }
+         catch (IllegalStateException expected)
+         {
+         }
+         
+         bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
+         assertNull("This should not be deployed until the interceptor is", bean);
+
+         boolean itworked = false;
+         LifecycleCallbackWithBeanDependency.interceptions.clear();
+         deploy(getFile0());
+         try
+         {
+            validate();
+            Object dependency = getCheckBeanExists("Dependency");
+            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
+            getCheckBeanExists("Intercepted");
+            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+            assertEquals("Intercepted", handled.contextName);
+            assertEquals(ControllerState.CONFIGURED, handled.toState);
+            assertNotNull(lifecycle.getDependency());
+            assertEquals(dependency, lifecycle.getDependency());
+            
+            itworked = true;
+            
+         }
+         finally
+         {
+            LifecycleCallbackWithBeanDependency.interceptions.clear();
+            undeploy(getFile0());
+            if (itworked)
+            {
+               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+               assertEquals("Intercepted", handled.contextName);
+               assertEquals(ControllerState.CONFIGURED, handled.toState);
+            }
+
+            try
+            {
+               bean = (SimpleBean) getBean("Intercepted");
+               fail("'Interceped' should not be installed yet");
+            }
+            catch (IllegalStateException expected)
+            {
+            }
+            
+            bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
+            assertNull("This should not be deployed until the interceptor is", bean);
+         }
+      }
+      finally
+      {
+         undeploy(getFile1());
+      }
+   }
+   
+   public void testLifecycleInterceptionsWithDependencyRedeploy() throws Exception
+   {
+      deploy(getFile1());
+      try
+      {
+         SimpleBean bean;
+         try
+         {
+            bean = (SimpleBean) getBean("Intercepted");
+            fail("'Interceped' should not be installed yet");
+         }
+         catch (IllegalStateException expected)
+         {
+         }
+         
+         bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
+         assertNull("This should not be deployed until the interceptor is", bean);
+
+         boolean itworked = false;
+         LifecycleCallbackWithBeanDependency.interceptions.clear();
+         deploy(getFile0());
+         try
+         {
+            validate();
+            Object dependency = getCheckBeanExists("Dependency");
+            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
+            getCheckBeanExists("Intercepted");
+            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+            assertEquals("Intercepted", handled.contextName);
+            assertEquals(ControllerState.CONFIGURED, handled.toState);
+            assertNotNull(lifecycle.getDependency());
+            assertEquals(dependency, lifecycle.getDependency());
+            
+            itworked = true;
+            
+         }
+         finally
+         {
+            LifecycleCallbackWithBeanDependency.interceptions.clear();
+            undeploy(getFile0());
+            if (itworked)
+            {
+               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+               assertEquals("Intercepted", handled.contextName);
+               assertEquals(ControllerState.CONFIGURED, handled.toState);
+            }
+
+            try
+            {
+               bean = (SimpleBean) getBean("Intercepted");
+               fail("'Interceped' should not be installed yet");
+            }
+            catch (IllegalStateException expected)
+            {
+            }
+            
+            bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
+            assertNull("This should not be deployed until the interceptor is", bean);
+         }
+         
+         try
+         {
+            bean = (SimpleBean) getBean("Intercepted");
+            fail("'Interceped' should not be installed yet");
+         }
+         catch (IllegalStateException expected)
+         {
+            KernelControllerContext context = getControllerContext("Intercepted", ControllerState.DESCRIBED);
+            assertNotNull(context);
+         }
+
+         itworked = false;
+         LifecycleCallbackWithBeanDependency.interceptions.clear();
+         deploy(getFile0());
+         try
+         {
+            validate();
+            Object dependency = getCheckBeanExists("Dependency");
+            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
+            getCheckBeanExists("Intercepted");
+            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+            assertEquals("Intercepted", handled.contextName);
+            assertEquals(ControllerState.CONFIGURED, handled.toState);
+            assertNotNull(lifecycle.getDependency());
+            assertTrue("Should not be caching the lifecycle's callback across rebinding", dependency == lifecycle.getDependency());
+            
+            itworked = true;
+         }
+         finally
+         {
+            LifecycleCallbackWithBeanDependency.interceptions.clear();
+            undeploy(getFile0());
+            if (itworked)
+            {
+               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+               assertEquals("Intercepted", handled.contextName);
+               assertEquals(ControllerState.CONFIGURED, handled.toState);
+            }
+
+            try
+            {
+               bean = (SimpleBean) getBean("Intercepted");
+               fail("'Interceped' should not be installed yet");
+            }
+            catch (IllegalStateException expected)
+            {
+            }
+            
+            bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
+            assertNull("This should not be deployed until the interceptor is", bean);
+         }
+      }
+      finally
+      {
+         undeploy(getFile1());
+      }
+   }
+
+   public void testLifecycleInterceptionsWithDependencyRedeploy2() throws Exception
+   {
+      deploy(getFile0());
+      try
+      {
+         Object dependency = getCheckBeanExists("Dependency");
+         boolean itworked = false;
+
+         LifecycleCallbackWithBeanDependency.interceptions.clear();
+         deploy(getFile1());
+         try
+         {
+            validate();
+            getCheckBeanExists("Intercepted");
+            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
+            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+            assertEquals("Intercepted", handled.contextName);
+            assertEquals(ControllerState.CONFIGURED, handled.toState);
+            assertNotNull(lifecycle.getDependency());
+            assertTrue(dependency == lifecycle.getDependency());
+            itworked = true;
+         }
+         finally
+         {
+            LifecycleCallbackWithBeanDependency.interceptions.clear();
+            undeploy(getFile1());
+            if (itworked)
+            {
+               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+               assertEquals("Intercepted", handled.contextName);
+               assertEquals(ControllerState.CONFIGURED, handled.toState);
+            }
+         }
+         
+         Object dependency2 = getCheckBeanExists("Dependency");
+         assertTrue(dependency == dependency2);
+         LifecycleCallbackWithBeanDependency.interceptions.clear();
+         deploy(getFile1());
+         try
+         {
+            validate();
+            getCheckBeanExists("Intercepted");
+            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
+            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+            assertEquals("Intercepted", handled.contextName);
+            assertEquals(ControllerState.CONFIGURED, handled.toState);
+            assertNotNull(lifecycle.getDependency());
+            assertTrue(dependency == lifecycle.getDependency());
+            itworked = true;
+         }
+         finally
+         {
+            LifecycleCallbackWithBeanDependency.interceptions.clear();
+            undeploy(getFile1());
+            if (itworked)
+            {
+               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
+               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
+               assertEquals("Intercepted", handled.contextName);
+               assertEquals(ControllerState.CONFIGURED, handled.toState);
+            }
+         }
+      }
+      finally
+      {
+         undeploy(getFile0());
+      }
+   }
+   
+   public Object getCheckBeanExists(String name)
+   {
+      Object bean = getBean(name);
+      assertNotNull(bean);
+      return bean;
+   }
+   
+   protected abstract String getFile0();
+   
+   protected abstract String getFile1();
+}

Deleted: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCase.java	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/InitialLifecycleCallbackWithDependencyTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,360 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source.
-* Copyright 2006, Red Hat Middleware LLC, and individual contributors
-* as indicated by the @author tags. See the copyright.txt file in the
-* distribution for a full listing of individual contributors. 
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/ 
-package org.jboss.test.microcontainer.test;
-
-import junit.framework.Test;
-
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.kernel.spi.dependency.KernelControllerContext;
-import org.jboss.test.aop.junit.AOPMicrocontainerTest;
-import org.jboss.test.microcontainer.support.LifecycleCallbackWithBeanDependency;
-import org.jboss.test.microcontainer.support.SimpleBean;
-
-/**
- * 
- * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
- * @version $Revision: 1.1 $
- */
-public class InitialLifecycleCallbackWithDependencyTestCase extends AOPMicrocontainerTest
-{
-   public static Test suite()
-   {
-      return suite(InitialLifecycleCallbackWithDependencyTestCase.class);
-   }
-   
-   public InitialLifecycleCallbackWithDependencyTestCase(String name)
-   {
-      super(name);
-   }
-
-   public void testLifecycleInterceptionsWithDependencyCorrectOrder() throws Exception
-   {
-      deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-      try
-      {
-         Object dependency = getCheckBeanExists("Dependency");
-         assertNotNull(dependency);
-         boolean itworked = false;
-
-         LifecycleCallbackWithBeanDependency.interceptions.clear();
-         deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-         try
-         {
-            validate();
-            getCheckBeanExists("Intercepted");
-            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
-            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-            assertEquals("Intercepted", handled.contextName);
-            assertEquals(ControllerState.CONFIGURED, handled.toState);
-            assertNotNull(lifecycle.getDependency());
-            assertEquals(dependency, lifecycle.getDependency());
-            itworked = true;
-         }
-         finally
-         {
-            LifecycleCallbackWithBeanDependency.interceptions.clear();
-            undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-            if (itworked)
-            {
-               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-               assertEquals("Intercepted", handled.contextName);
-               assertEquals(ControllerState.CONFIGURED, handled.toState);
-            }
-         }
-      }
-      finally
-      {
-         undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-      }
-   }
-   
-   public void testLifecycleInterceptionsWithDependencyWrongOrder() throws Exception
-   {
-      deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-      try
-      {
-         SimpleBean bean;
-         try
-         {
-            bean = (SimpleBean) getBean("Intercepted");
-            fail("'Interceped' should not be installed yet");
-         }
-         catch (IllegalStateException expected)
-         {
-         }
-         
-         bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
-         assertNull("This should not be deployed until the interceptor is", bean);
-
-         boolean itworked = false;
-         LifecycleCallbackWithBeanDependency.interceptions.clear();
-         deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-         try
-         {
-            validate();
-            Object dependency = getCheckBeanExists("Dependency");
-            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
-            getCheckBeanExists("Intercepted");
-            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-            assertEquals("Intercepted", handled.contextName);
-            assertEquals(ControllerState.CONFIGURED, handled.toState);
-            assertNotNull(lifecycle.getDependency());
-            assertEquals(dependency, lifecycle.getDependency());
-            
-            itworked = true;
-            
-         }
-         finally
-         {
-            LifecycleCallbackWithBeanDependency.interceptions.clear();
-            undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-            if (itworked)
-            {
-               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-               assertEquals("Intercepted", handled.contextName);
-               assertEquals(ControllerState.CONFIGURED, handled.toState);
-            }
-
-            try
-            {
-               bean = (SimpleBean) getBean("Intercepted");
-               fail("'Interceped' should not be installed yet");
-            }
-            catch (IllegalStateException expected)
-            {
-            }
-            
-            bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
-            assertNull("This should not be deployed until the interceptor is", bean);
-         }
-      }
-      finally
-      {
-         undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-      }
-   }
-   
-   public void testLifecycleInterceptionsWithDependencyRedeploy() throws Exception
-   {
-      deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-      try
-      {
-         SimpleBean bean;
-         try
-         {
-            bean = (SimpleBean) getBean("Intercepted");
-            fail("'Interceped' should not be installed yet");
-         }
-         catch (IllegalStateException expected)
-         {
-         }
-         
-         bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
-         assertNull("This should not be deployed until the interceptor is", bean);
-
-         boolean itworked = false;
-         LifecycleCallbackWithBeanDependency.interceptions.clear();
-         deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-         try
-         {
-            validate();
-            Object dependency = getCheckBeanExists("Dependency");
-            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
-            getCheckBeanExists("Intercepted");
-            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-            assertEquals("Intercepted", handled.contextName);
-            assertEquals(ControllerState.CONFIGURED, handled.toState);
-            assertNotNull(lifecycle.getDependency());
-            assertEquals(dependency, lifecycle.getDependency());
-            
-            itworked = true;
-            
-         }
-         finally
-         {
-            LifecycleCallbackWithBeanDependency.interceptions.clear();
-            undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-            if (itworked)
-            {
-               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-               assertEquals("Intercepted", handled.contextName);
-               assertEquals(ControllerState.CONFIGURED, handled.toState);
-            }
-
-            try
-            {
-               bean = (SimpleBean) getBean("Intercepted");
-               fail("'Interceped' should not be installed yet");
-            }
-            catch (IllegalStateException expected)
-            {
-            }
-            
-            bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
-            assertNull("This should not be deployed until the interceptor is", bean);
-         }
-         
-         try
-         {
-            bean = (SimpleBean) getBean("Intercepted");
-            fail("'Interceped' should not be installed yet");
-         }
-         catch (IllegalStateException expected)
-         {
-            KernelControllerContext context = getControllerContext("Intercepted", ControllerState.DESCRIBED);
-            assertNotNull(context);
-         }
-
-         itworked = false;
-         LifecycleCallbackWithBeanDependency.interceptions.clear();
-         deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-         try
-         {
-            validate();
-            Object dependency = getCheckBeanExists("Dependency");
-            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
-            getCheckBeanExists("Intercepted");
-            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-            assertEquals("Intercepted", handled.contextName);
-            assertEquals(ControllerState.CONFIGURED, handled.toState);
-            assertNotNull(lifecycle.getDependency());
-            assertTrue("Should not be caching the lifecycle's callback across rebinding", dependency == lifecycle.getDependency());
-            
-            itworked = true;
-         }
-         finally
-         {
-            LifecycleCallbackWithBeanDependency.interceptions.clear();
-            undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-            if (itworked)
-            {
-               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-               assertEquals("Intercepted", handled.contextName);
-               assertEquals(ControllerState.CONFIGURED, handled.toState);
-            }
-
-            try
-            {
-               bean = (SimpleBean) getBean("Intercepted");
-               fail("'Interceped' should not be installed yet");
-            }
-            catch (IllegalStateException expected)
-            {
-            }
-            
-            bean = (SimpleBean) getBean("Intercepted", ControllerState.DESCRIBED);
-            assertNull("This should not be deployed until the interceptor is", bean);
-         }
-      }
-      finally
-      {
-         undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-      }
-   }
-
-   public void testLifecycleInterceptionsWithDependencyRedeploy2() throws Exception
-   {
-      deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-      try
-      {
-         Object dependency = getCheckBeanExists("Dependency");
-         boolean itworked = false;
-
-         LifecycleCallbackWithBeanDependency.interceptions.clear();
-         deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-         try
-         {
-            validate();
-            getCheckBeanExists("Intercepted");
-            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
-            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-            assertEquals("Intercepted", handled.contextName);
-            assertEquals(ControllerState.CONFIGURED, handled.toState);
-            assertNotNull(lifecycle.getDependency());
-            assertTrue(dependency == lifecycle.getDependency());
-            itworked = true;
-         }
-         finally
-         {
-            LifecycleCallbackWithBeanDependency.interceptions.clear();
-            undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-            if (itworked)
-            {
-               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-               assertEquals("Intercepted", handled.contextName);
-               assertEquals(ControllerState.CONFIGURED, handled.toState);
-            }
-         }
-         
-         Object dependency2 = getCheckBeanExists("Dependency");
-         assertTrue(dependency == dependency2);
-         LifecycleCallbackWithBeanDependency.interceptions.clear();
-         deploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-         try
-         {
-            validate();
-            getCheckBeanExists("Intercepted");
-            LifecycleCallbackWithBeanDependency lifecycle = (LifecycleCallbackWithBeanDependency)getCheckBeanExists("LifecycleCallback");
-            assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-            LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-            assertEquals("Intercepted", handled.contextName);
-            assertEquals(ControllerState.CONFIGURED, handled.toState);
-            assertNotNull(lifecycle.getDependency());
-            assertTrue(dependency == lifecycle.getDependency());
-            itworked = true;
-         }
-         finally
-         {
-            LifecycleCallbackWithBeanDependency.interceptions.clear();
-            undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic1.xml");
-            if (itworked)
-            {
-               assertEquals(1, LifecycleCallbackWithBeanDependency.interceptions.size());
-               LifecycleCallbackWithBeanDependency.Handled handled = LifecycleCallbackWithBeanDependency.interceptions.get(0);
-               assertEquals("Intercepted", handled.contextName);
-               assertEquals(ControllerState.CONFIGURED, handled.toState);
-            }
-         }
-      }
-      finally
-      {
-         undeploy("InitialLifecycleCallbackWithDependencyTestCaseNotAutomatic0.xml");
-      }
-   }
-   
-   public Object getCheckBeanExists(String name)
-   {
-      Object bean = getBean(name);
-      assertNotNull(bean);
-      return bean;
-   }
-}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleAopTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class LifecycleAopTestCase extends LifecycleTest
+{
+   public LifecycleAopTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(LifecycleAopTestCase.class);
+   }
+
+   @Override
+   protected String getFile()
+   {
+      return "LifecycleAopTestCaseNotAutomatic.xml";
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleDeploymentTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.microcontainer.test;
+
+import junit.framework.Test;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class LifecycleDeploymentTestCase extends LifecycleTest
+{
+   public LifecycleDeploymentTestCase(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(LifecycleDeploymentTestCase.class);
+   }
+   
+   @Override
+   protected String getFile()
+   {
+      return "LifecycleDeploymentTestCaseNotAutomatic.xml";
+   }
+
+}

Added: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTest.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTest.java	                        (rev 0)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTest.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -0,0 +1,105 @@
+/*
+  * JBoss, Home of Professional Open Source
+  * Copyright 2005, JBoss Inc., and individual contributors as indicated
+  * by the @authors tag. See the copyright.txt in the distribution for a
+  * full listing of individual contributors.
+  *
+  * This is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU Lesser General Public License as
+  * published by the Free Software Foundation; either version 2.1 of
+  * the License, or (at your option) any later version.
+  *
+  * This software is distributed in the hope that it will be useful,
+  * but WITHOUT ANY WARRANTY; without even the implied warranty of
+  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  * Lesser General Public License for more details.
+  *
+  * You should have received a copy of the GNU Lesser General Public
+  * License along with this software; if not, write to the Free
+  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+  */
+package org.jboss.test.microcontainer.test;
+
+import java.util.ArrayList;
+
+import org.jboss.test.aop.junit.AOPMicrocontainerTest;
+import org.jboss.test.microcontainer.support.Configure;
+import org.jboss.test.microcontainer.support.Create;
+import org.jboss.test.microcontainer.support.Describe;
+import org.jboss.test.microcontainer.support.Install;
+import org.jboss.test.microcontainer.support.Instantiate;
+import org.jboss.test.microcontainer.support.LifecycleCallback;
+import org.jboss.test.microcontainer.support.Start;
+
+public abstract class LifecycleTest extends AOPMicrocontainerTest
+{
+   public LifecycleTest(String name)
+   {
+      super(name);
+   }
+
+   public void testLifecycleInterceptions() throws Exception
+   {
+      boolean undeployed = false;
+      try
+      {
+         LifecycleCallback.interceptions.clear();
+         deploy(getFile());
+         
+         //Verify the beans exist
+         checkBeanExists("ConfigureBean");
+         checkBeanExists("CreateBean");
+         checkBeanExists("DescribeBean"); 
+         checkBeanExists("InstallBean");
+         checkBeanExists("InstantiateBean"); 
+         checkBeanExists("StartBean"); 
+
+         //Now check the expected lifecycle events for each bean
+         checkExpectedAnnotations("ConfigureBean", Configure.class);
+         checkExpectedAnnotations("CreateBean", Create.class);
+         checkExpectedAnnotations("DescribeBean", Describe.class);
+         checkExpectedAnnotations("InstallBean", Install.class);
+         checkExpectedAnnotations("InstantiateBean", Instantiate.class);
+         checkExpectedAnnotations("StartBean", Start.class);
+         
+         
+         LifecycleCallback.interceptions.clear();
+         
+         undeploy(getFile());
+         undeployed = true;
+         
+         checkExpectedAnnotations("ConfigureBean", Configure.class);
+         checkExpectedAnnotations("CreateBean", Create.class);
+         checkExpectedAnnotations("DescribeBean", Describe.class);
+         checkExpectedAnnotations("InstallBean", Install.class);
+         checkExpectedAnnotations("InstantiateBean", Instantiate.class);
+         checkExpectedAnnotations("StartBean", Start.class);
+         
+      }
+      finally
+      {
+         if (!undeployed)
+         {
+            undeploy(getFile());
+         }
+      }
+   }
+   
+   public void checkBeanExists(String name)
+   {
+      Object bean = getBean(name);
+      assertNotNull(bean);
+   }
+   
+   public void checkExpectedAnnotations(String name, Class<?> annotation)
+   {
+      ArrayList<Class<?>> events = LifecycleCallback.interceptions.get(name);
+      assertNotNull(events);
+      assertEquals("Wrong events, expected one element only " + events, 1, events.size());
+      Class<?> actualAnnotation = events.get(0);
+      assertEquals(annotation, actualAnnotation);
+   }
+   
+   protected abstract String getFile();
+}

Deleted: projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTestCase.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTestCase.java	2008-04-02 19:09:53 UTC (rev 71633)
+++ projects/microcontainer/trunk/aop-mc-int/src/tests/org/jboss/test/microcontainer/test/LifecycleTestCase.java	2008-04-02 20:26:52 UTC (rev 71634)
@@ -1,110 +0,0 @@
-/*
-  * JBoss, Home of Professional Open Source
-  * Copyright 2005, JBoss Inc., and individual contributors as indicated
-  * by the @authors tag. See the copyright.txt in the distribution for a
-  * full listing of individual contributors.
-  *
-  * This is free software; you can redistribute it and/or modify it
-  * under the terms of the GNU Lesser General Public License as
-  * published by the Free Software Foundation; either version 2.1 of
-  * the License, or (at your option) any later version.
-  *
-  * This software is distributed in the hope that it will be useful,
-  * but WITHOUT ANY WARRANTY; without even the implied warranty of
-  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-  * Lesser General Public License for more details.
-  *
-  * You should have received a copy of the GNU Lesser General Public
-  * License along with this software; if not, write to the Free
-  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-  */
-package org.jboss.test.microcontainer.test;
-
-import java.util.ArrayList;
-
-import junit.framework.Test;
-
-import org.jboss.test.aop.junit.AOPMicrocontainerTest;
-import org.jboss.test.microcontainer.support.Configure;
-import org.jboss.test.microcontainer.support.Create;
-import org.jboss.test.microcontainer.support.Describe;
-import org.jboss.test.microcontainer.support.Install;
-import org.jboss.test.microcontainer.support.Instantiate;
-import org.jboss.test.microcontainer.support.LifecycleCallback;
-import org.jboss.test.microcontainer.support.Start;
-
-public class LifecycleTestCase extends AOPMicrocontainerTest
-{
-   public static Test suite()
-   {
-      return suite(LifecycleTestCase.class);
-   }
-   
-   public LifecycleTestCase(String name)
-   {
-      super(name);
-   }
-
-   public void testLifecycleInterceptions() throws Exception
-   {
-      boolean undeployed = false;
-      try
-      {
-         LifecycleCallback.interceptions.clear();
-         deploy("LifecycleTestCaseNotAutomatic.xml");
-         
-         //Verify the beans exist
-         checkBeanExists("ConfigureBean");
-         checkBeanExists("CreateBean");
-         checkBeanExists("DescribeBean"); 
-         checkBeanExists("InstallBean");
-         checkBeanExists("InstantiateBean"); 
-         checkBeanExists("StartBean"); 
-
-         //Now check the expected lifecycle events for each bean
-         checkExpectedAnnotations("ConfigureBean", Configure.class);
-         checkExpectedAnnotations("CreateBean", Create.class);
-         checkExpectedAnnotations("DescribeBean", Describe.class);
-         checkExpectedAnnotations("InstallBean", Install.class);
-         checkExpectedAnnotations("InstantiateBean", Instantiate.class);
-         checkExpectedAnnotations("StartBean", Start.class);
-         
-         
-         LifecycleCallback.interceptions.clear();
-         
-         undeploy("LifecycleTestCaseNotAutomatic.xml");
-         undeployed = true;
-         
-         checkExpectedAnnotations("ConfigureBean", Configure.class);
-         checkExpectedAnnotations("CreateBean", Create.class);
-         checkExpectedAnnotations("DescribeBean", Describe.class);
-         checkExpectedAnnotations("InstallBean", Install.class);
-         checkExpectedAnnotations("InstantiateBean", Instantiate.class);
-         checkExpectedAnnotations("StartBean", Start.class);
-         
-      }
-      finally
-      {
-         if (!undeployed)
-         {
-            undeploy("LifecycleTestCaseNotAutomatic.xml");
-         }
-      }
-   }
-   
-   public void checkBeanExists(String name)
-   {
-      Object bean = getBean(name);
-      assertNotNull(bean);
-   }
-   
-   public void checkExpectedAnnotations(String name, Class<?> annotation)
-   {
-      ArrayList<Class<?>> events = LifecycleCallback.interceptions.get(name);
-      assertNotNull(events);
-      assertEquals("Wrong events, expected one element only " + events, 1, events.size());
-      Class<?> actualAnnotation = events.get(0);
-      assertEquals(annotation, actualAnnotation);
-   }
-}




More information about the jboss-cvs-commits mailing list