Author: rotty3000
Date: Sat Apr 14 01:09:09 2018
New Revision: 1829114

URL: http://svn.apache.org/viewvc?rev=1829114&view=rev
Log:
WIP

Added:
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/DiscoveryExtension.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/OSGiBean.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BeanElementException.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BlacklistQualifierException.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/ReferenceEventImpl.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Init.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Phase_Init.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/v2/
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/v2/component/
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/v2/component/Component.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/v2/component/ContainerComponent.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/v2/component/FactoryComponent.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/v2/component/SingleComponent.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/component/Discovery_Ctor_dynamic_greedy_Test2.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/component/Discovery_Ctor_dynamic_reluctant_Test.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/component/Discovery_Ctor_static_greedy_Test.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/component/Discovery_Ctor_static_reluctant_Test.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/component/IfBeanClassIsOSGiAnnotatedTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel_ReferenceServiceObjectsTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ReferenceEventImpl.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorCollectionFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorCollectionFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorFooBar.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooBar.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorFooFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorFooFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorFooOptional.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicgreedy/CtorListFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorCollectionFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorCollectionFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorArrayListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorFooBar.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooBar.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorFooFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorFooFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorFooOptional.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctordynamicreluctant/CtorListFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorCollectionFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorCollectionFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorFooBar.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooBar.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorFooFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorFooFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorFooOptional.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticgreedy/CtorListFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorCollectionFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorCollectionFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooBar.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooBar.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooNamed.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooOptional.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorListFoo.java
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.Bar.xml
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarAnnotated.xml
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-only.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated.xml
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-annotated.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooAnnotated.xml
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooService.xml
      - copied, changed from r1828903, 
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml
    aries/trunk/cdi/hs_err_pid14088.log
Removed:
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentDiscoveryExtension.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentModel.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/ComponentLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/ConfigurationLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/DefaultLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/ReferenceLiteral.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/ServiceEventImpl.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Phase_Init.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/component/ComponentExtension_Ctor_static_reluctant_Test.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel_ServiceObjectsTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorArrayListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorCollectionFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooBar.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ServiceEventImpl.java
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-annotated.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-configuration.xml
    aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-only.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-references.xml
    
aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-services.xml
    
aries/trunk/cdi/cdi-extension-http/src/main/java/org/apache/aries/cdi/extension/http/Activator.java
    
aries/trunk/cdi/cdi-extension-jndi/src/main/java/org/apache/aries/cdi/extension/jndi/Activator.java
Modified:
    aries/trunk/cdi/cdi-extender/pom.xml
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/Activator.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/CdiBundle.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/command/CdiCommand.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentProperties.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentRuntimeExtension.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationBean.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallback.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedService.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationModel.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerBootstrap.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerDiscovery.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerState.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/context/BundleContextBean.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/extension/ExtensionDependency.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/BeansModel.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/Constants.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/OSGiBeansHandler.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/ObserverMethodAnnotated.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Phase_Configuration.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Phase_Extension.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Phase_Publish.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/phase/Phase_Reference.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/reference/ReferenceBean.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/reference/ReferenceCallback.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/service/ServiceDeclaration.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/util/Types.java
    
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/provider/CDIProvider.java
    aries/trunk/cdi/cdi-extender/src/main/resources/META-INF/cdi.xsd
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallbackTest_Ignore.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallbackTest_Optional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallbackTest_Require.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedServiceTest_Ignore.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedServiceTest_Optional.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedServiceTest_Require.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/container/ContainerDiscoveryTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/model/EventsTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/model/ModelTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/phase/ConfigurationPhaseTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel_PropertiesTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel_ServiceReferenceTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel_ServiceTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/internal/reference/ReferenceModel_TupleTest.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/MockCdiContainer.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/MockCdiContainerAndComponents.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/MockInjectionPoint.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/TestUtil.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ArrayListFooProducer.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/BarAnnotated.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/BarProducer.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CollectionFooProducer.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/FooAnnotated.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/FooProducer.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ListFooProducer.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/MethodBindFooNamed.java
    
aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ObserverFoo.java
    aries/trunk/cdi/cdi-extension-http/bnd.bnd
    aries/trunk/cdi/cdi-extension-jndi/bnd.bnd
    aries/trunk/cdi/cdi-itests/logback.xml
    aries/trunk/cdi/cdi-itests/pom.xml
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/CdiEventObserver.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ConstructorInjectedService.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedBundleScopedImpl.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedPrototypeScopedImpl.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedService.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_Optional.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceProperties.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceReference.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/MethodInjectedService.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ServiceWithProperties.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/AbstractTestCase.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiBeanTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiContainerTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiExtenderTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/ConfigurationTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/EventsTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/JndiExtensionTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OSGiBeanDescriptorTests.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanA.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanB.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb5/ConfigurationBeanC.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/BarServlet.java
    
aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/FooServlet.java
    aries/trunk/cdi/javax.inject-api/README

Modified: aries/trunk/cdi/cdi-extender/pom.xml
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/pom.xml?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/pom.xml (original)
+++ aries/trunk/cdi/cdi-extender/pom.xml Sat Apr 14 01:09:09 2018
@@ -84,7 +84,7 @@
                <dependency>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-osgi-bundle</artifactId>
-                       <version>3.0.1.Final</version>
+                       <version>3.0.2.Final</version>
                        <exclusions>
                                <exclusion>
                                        <groupId>javax.annotation</groupId>

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/Activator.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/Activator.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/Activator.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/Activator.java
 Sat Apr 14 01:09:09 2018
@@ -22,7 +22,10 @@ import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
 
+import javax.enterprise.inject.spi.CDI;
+
 import org.apache.aries.cdi.container.internal.command.CdiCommand;
+import org.apache.aries.cdi.provider.CDIProvider;
 import org.apache.felix.utils.extender.AbstractExtender;
 import org.apache.felix.utils.extender.Extension;
 import org.osgi.framework.Bundle;
@@ -35,6 +38,10 @@ import org.slf4j.LoggerFactory;
 
 public class Activator extends AbstractExtender {
 
+       static {
+               CDI.setCDIProvider(new CDIProvider());
+       }
+
        public Activator() {
                setSynchronous(true);
        }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/CdiBundle.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/CdiBundle.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/CdiBundle.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/CdiBundle.java
 Sat Apr 14 01:09:09 2018
@@ -20,8 +20,8 @@ import java.util.concurrent.locks.Reentr
 
 import org.apache.aries.cdi.container.internal.command.CdiCommand;
 import org.apache.aries.cdi.container.internal.container.ContainerState;
+import org.apache.aries.cdi.container.internal.phase.Init;
 import org.apache.aries.cdi.container.internal.phase.Phase;
-import org.apache.aries.cdi.container.internal.phase.Phase_Init;
 import org.apache.felix.utils.extender.Extension;
 import org.osgi.framework.Bundle;
 import org.slf4j.Logger;
@@ -60,7 +60,7 @@ public class CdiBundle implements Extens
                        _command.add(_bundle, _containerState);
 
                        try {
-                               _nextPhase = new Phase_Init(_bundle, 
_containerState);
+                               _nextPhase = new Init(_bundle, _containerState);
 
                                _nextPhase.open();
                        }
@@ -71,8 +71,6 @@ public class CdiBundle implements Extens
 
                                _command.remove(_bundle);
 
-                               _containerState.close();
-
                                _containerState = null;
                        }
                }
@@ -105,8 +103,6 @@ public class CdiBundle implements Extens
 
                        _nextPhase = null;
 
-                       _containerState.close();
-
                        _containerState = null;
 
                        if (_log.isDebugEnabled()) {

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/command/CdiCommand.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/command/CdiCommand.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/command/CdiCommand.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/command/CdiCommand.java
 Sat Apr 14 01:09:09 2018
@@ -14,39 +14,22 @@
 
 package org.apache.aries.cdi.container.internal.command;
 
-import java.util.Arrays;
 import java.util.Collection;
-import java.util.Collections;
-import java.util.Dictionary;
-import java.util.Formatter;
-import java.util.List;
 import java.util.Map;
-import java.util.Map.Entry;
 import java.util.concurrent.ConcurrentHashMap;
 
-import org.apache.aries.cdi.container.internal.component.ComponentModel;
-import 
org.apache.aries.cdi.container.internal.configuration.ConfigurationCallback;
 import org.apache.aries.cdi.container.internal.container.ContainerState;
-import org.apache.aries.cdi.container.internal.extension.ExtensionDependency;
-import org.apache.aries.cdi.container.internal.model.BeansModel;
-import org.apache.aries.cdi.container.internal.reference.ReferenceCallback;
-import org.apache.aries.cdi.container.internal.reference.ReferenceModel;
-import org.apache.aries.cdi.container.internal.service.ServiceDeclaration;
-import org.apache.aries.cdi.container.internal.util.Conversions;
 import org.osgi.framework.Bundle;
 
 public class CdiCommand {
 
-       public String list() {
-               try (Formatter f = new Formatter()) {
-                       for (ContainerState cdiContainerState : 
_states.values()) {
-                               f.format("[%s]%n", cdiContainerState.id());
-                       }
-                       return f.toString();
-               }
+       public Collection<ContainerState> list() {
+               return _states.values();
        }
 
-       public String info(Bundle bundle) {
+       public ContainerState info(Bundle bundle) {
+               return _states.get(bundle);
+               /*
                try (Formatter f = new Formatter()) {
                        ContainerState containerState = _states.get(bundle);
 
@@ -138,6 +121,7 @@ public class CdiCommand {
 
                        return f.toString();
                }
+                */
        }
 
        public void add(Bundle bundle, ContainerState cdiContainerState) {
@@ -150,5 +134,4 @@ public class CdiCommand {
 
        private final Map<Bundle, ContainerState> _states = new 
ConcurrentHashMap<>();
 
-
 }
\ No newline at end of file

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentProperties.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentProperties.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentProperties.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentProperties.java
 Sat Apr 14 01:09:09 2018
@@ -14,23 +14,9 @@
 
 package org.apache.aries.cdi.container.internal.component;
 
-import java.util.Dictionary;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Map;
-
-import javax.enterprise.inject.spi.Bean;
-
-import 
org.apache.aries.cdi.container.internal.configuration.ConfigurationCallback;
-import org.apache.aries.cdi.container.internal.container.ContainerState;
-import org.apache.aries.cdi.container.internal.util.Conversions;
-import org.apache.aries.cdi.container.internal.util.Maps;
-import org.osgi.service.cdi.annotations.Configuration;
-import org.osgi.util.converter.TypeReference;
-
 public class ComponentProperties {
 
-       public ComponentProperties bean(Bean<?> bean) {
+/*     public ComponentProperties bean(Bean<?> bean) {
                _bean = bean;
                return this;
        }
@@ -115,5 +101,5 @@ public class ComponentProperties {
        private ContainerState _containerState;
        private String[] _pid;
        private boolean _hidePrivate = false;
-
+*/
 }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentRuntimeExtension.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentRuntimeExtension.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentRuntimeExtension.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/ComponentRuntimeExtension.java
 Sat Apr 14 01:09:09 2018
@@ -14,57 +14,11 @@
 
 package org.apache.aries.cdi.container.internal.component;
 
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.CopyOnWriteArrayList;
-import java.util.concurrent.atomic.AtomicInteger;
-
-import javax.enterprise.context.Dependent;
-import javax.enterprise.event.Observes;
-import javax.enterprise.inject.spi.AfterBeanDiscovery;
-import javax.enterprise.inject.spi.Annotated;
-import javax.enterprise.inject.spi.AnnotatedConstructor;
-import javax.enterprise.inject.spi.AnnotatedField;
-import javax.enterprise.inject.spi.AnnotatedMethod;
-import javax.enterprise.inject.spi.AnnotatedType;
-import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.BeanManager;
 import javax.enterprise.inject.spi.Extension;
-import javax.enterprise.inject.spi.InjectionPoint;
-import javax.enterprise.inject.spi.ObserverMethod;
-import javax.enterprise.inject.spi.ProcessAnnotatedType;
-import javax.enterprise.inject.spi.ProcessBean;
-import javax.enterprise.inject.spi.ProcessInjectionPoint;
-import javax.enterprise.inject.spi.ProcessObserverMethod;
-
-import org.apache.aries.cdi.container.internal.configuration.ConfigurationBean;
-import 
org.apache.aries.cdi.container.internal.configuration.ConfigurationModel;
-import org.apache.aries.cdi.container.internal.container.ContainerState;
-import org.apache.aries.cdi.container.internal.literal.ComponentLiteral;
-import org.apache.aries.cdi.container.internal.literal.ConfigurationLiteral;
-import org.apache.aries.cdi.container.internal.literal.ReferenceLiteral;
-import org.apache.aries.cdi.container.internal.model.ObserverMethodAnnotated;
-import org.apache.aries.cdi.container.internal.reference.ReferenceBean;
-import org.apache.aries.cdi.container.internal.reference.ReferenceModel;
-import org.apache.aries.cdi.container.internal.service.ServiceDeclaration;
-import org.apache.aries.cdi.container.internal.util.Sets;
-import org.apache.aries.cdi.container.internal.util.Types;
-import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.Configuration;
-import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferencePolicy;
-import org.osgi.service.cdi.annotations.ServiceEvent;
-import org.osgi.service.cdi.annotations.ServiceScope;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 public class ComponentRuntimeExtension implements Extension {
 
-       public ComponentRuntimeExtension(ContainerState containerState) {
+/*     public ComponentRuntimeExtension(ContainerState containerState) {
                _containerState = containerState;
        }
 
@@ -168,9 +122,9 @@ public class ComponentRuntimeExtension i
                return null;
        }
 
-       /*
+
         * discover if an annotated class is a component
-        */
+
        <X> void processAnnotatedType(@Observes ProcessAnnotatedType<X> pat, 
BeanManager beanManager) {
                final AnnotatedType<X> at = pat.getAnnotatedType();
 
@@ -396,5 +350,5 @@ public class ComponentRuntimeExtension i
        private final AtomicInteger _mark = new AtomicInteger();
        private final ContainerState _containerState;
        private final List<Bean<?>> _beans = new CopyOnWriteArrayList<>();
-
+*/
 }

Added: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/DiscoveryExtension.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/DiscoveryExtension.java?rev=1829114&view=auto
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/DiscoveryExtension.java
 (added)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/DiscoveryExtension.java
 Sat Apr 14 01:09:09 2018
@@ -0,0 +1,515 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.aries.cdi.container.internal.component;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Executable;
+import java.lang.reflect.Parameter;
+import java.util.Arrays;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.function.Predicate;
+import java.util.stream.Stream;
+
+import javax.enterprise.event.Observes;
+import javax.enterprise.inject.spi.AfterBeanDiscovery;
+import javax.enterprise.inject.spi.Annotated;
+import javax.enterprise.inject.spi.AnnotatedField;
+import javax.enterprise.inject.spi.AnnotatedParameter;
+import javax.enterprise.inject.spi.AnnotatedType;
+import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.inject.spi.Extension;
+import javax.enterprise.inject.spi.InjectionPoint;
+import javax.enterprise.inject.spi.ProcessAnnotatedType;
+import javax.enterprise.inject.spi.ProcessBean;
+import javax.enterprise.inject.spi.ProcessInjectionPoint;
+import javax.enterprise.inject.spi.ProcessManagedBean;
+import javax.enterprise.inject.spi.ProcessProducerField;
+import javax.enterprise.inject.spi.ProcessProducerMethod;
+import javax.enterprise.inject.spi.ProcessSessionBean;
+import javax.enterprise.inject.spi.ProcessSyntheticBean;
+
+import 
org.apache.aries.cdi.container.internal.configuration.ConfigurationModel;
+import org.apache.aries.cdi.container.internal.model.BeansModel;
+import org.apache.aries.cdi.container.internal.reference.ReferenceModel;
+import org.apache.aries.cdi.container.internal.v2.component.ContainerComponent;
+import org.osgi.service.cdi.annotations.ComponentScoped;
+import org.osgi.service.cdi.annotations.Configuration;
+import org.osgi.service.cdi.annotations.FactoryComponent;
+import org.osgi.service.cdi.annotations.Reference;
+import org.osgi.service.cdi.annotations.Service;
+import org.osgi.service.cdi.annotations.SingleComponent;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class DiscoveryExtension implements Extension {
+
+       public DiscoveryExtension(BeansModel beansModel, ContainerComponent 
containerComponent) {
+               _beansModel = beansModel;
+               _containerComponent = containerComponent;
+       }
+
+       void afterBeanDiscovery(@Observes AfterBeanDiscovery abd) {
+               _beansModel.getErrors().stream().forEach(err ->
+                       abd.addDefinitionError(err)
+               );
+       }
+
+       /*
+        * Process annotated classes to sync them up with the meta-model.
+        */
+       <X> void processAnnotatedType(@Observes ProcessAnnotatedType<X> pat, 
BeanManager beanManager) {
+               final AnnotatedType<X> at = pat.getAnnotatedType();
+
+               Class<X> annotatedClass = at.getJavaClass();
+
+               final String className = annotatedClass.getName();
+
+               OSGiBean osgiBean = _beansModel.getOSGiBean(className);
+
+               if (osgiBean == null) {
+                       return;
+               }
+
+               osgiBean.found(true);
+
+//             if (checkIfBeanClassIsOSGiAnnotated(annotatedClass)) {
+//                     if (_log.isDebugEnabled()) {
+//                             _log.debug("CDIe - OSGi CDI annotations found. 
Clearing descriptor infos for {}", className);
+//                     }
+//             }
+       }
+
+       void processInjectionPoint(@Observes ProcessInjectionPoint<?, ?> pip) {
+               final InjectionPoint injectionPoint = pip.getInjectionPoint();
+
+               Annotated annotated = injectionPoint.getAnnotated();
+
+               Class<?> injectionPointClass = null;
+
+               if (annotated instanceof AnnotatedParameter) {
+                       AnnotatedParameter<?> ap = 
(AnnotatedParameter<?>)annotated;
+
+                       Parameter javaParameter = ap.getJavaParameter();
+
+                       Executable declaringExecutable = 
javaParameter.getDeclaringExecutable();
+
+                       injectionPointClass = 
declaringExecutable.getDeclaringClass(); //TODO verify
+               }
+               else {
+                       AnnotatedField<?> af = (AnnotatedField<?>)annotated;
+
+                       injectionPointClass = 
af.getDeclaringType().getJavaClass();
+               }
+
+               String injectionPointClassName = injectionPointClass.getName();
+
+               OSGiBean osgiBean = 
_beansModel.getOSGiBean(injectionPointClassName);
+
+               if (osgiBean == null) {
+                       return;
+               }
+
+               Reference reference = annotated.getAnnotation(Reference.class);
+               Configuration configuration = 
annotated.getAnnotation(Configuration.class);
+
+               // Is it annotated with @Reference?
+
+               if (reference != null) {
+                       processReference(pip, osgiBean, reference, 
configuration);
+
+                       return;
+               }
+
+               // Is it annotated with @Configuration?
+
+               else if (configuration != null) {
+                       processConfiguration(pip, osgiBean);
+
+                       return;
+               }
+       }
+
+       void proc(@Observes ProcessBean<?> pb) {
+               Annotated annotated = null;
+               Class<?> annotatedClass = null;
+
+               if (pb instanceof ProcessManagedBean) {
+                       ProcessManagedBean<?> bean = (ProcessManagedBean<?>)pb;
+
+                       annotated = bean.getAnnotated();
+                       annotatedClass = 
bean.getAnnotatedBeanClass().getJavaClass();
+               }
+               else if (pb instanceof ProcessSessionBean) {
+                       ProcessSessionBean<?> bean = (ProcessSessionBean<?>)pb;
+
+                       annotated = bean.getAnnotated();
+                       annotatedClass = 
bean.getAnnotatedBeanClass().getJavaClass();
+               }
+               else if (pb instanceof ProcessProducerMethod) {
+                       ProcessProducerMethod<?, ?> producer = 
(ProcessProducerMethod<?, ?>)pb;
+
+                       annotated = producer.getAnnotated();
+                       annotatedClass = 
producer.getAnnotatedProducerMethod().getDeclaringType().getJavaClass();
+               }
+               else if (pb instanceof ProcessProducerField) {
+                       ProcessProducerField<?, ?> producer = 
(ProcessProducerField<?, ?>)pb;
+
+                       annotated = producer.getAnnotated();
+                       annotatedClass = 
producer.getAnnotatedProducerField().getDeclaringType().getJavaClass();
+               }
+               else if (pb instanceof ProcessSyntheticBean) {
+                       ProcessSyntheticBean<?> synthetic = 
(ProcessSyntheticBean<?>)pb;
+
+                       annotated = synthetic.getAnnotated();
+                       annotatedClass = synthetic.getBean().getBeanClass();
+               }
+               else {
+                       return;
+               }
+
+               String className = annotatedClass.getName();
+
+               OSGiBean osgiBean = _beansModel.getOSGiBean(className);
+
+               if (osgiBean == null) {
+                       return;
+               }
+
+               if (Optional.ofNullable(
+                               
annotated.getAnnotation(SingleComponent.class)).isPresent()) {
+
+                       osgiBean.setComponent(new 
org.apache.aries.cdi.container.internal.v2.component.SingleComponent(className));
+               }
+               else if (Optional.ofNullable(
+                               
annotated.getAnnotation(FactoryComponent.class)).isPresent()) {
+
+                       osgiBean.setComponent(new 
org.apache.aries.cdi.container.internal.v2.component.FactoryComponent(className));
+               }
+               else {
+                       osgiBean.setComponent(_containerComponent);
+               }
+       }
+
+       /*
+       void processObserverMethod(@Observes 
ProcessObserverMethod<ReferenceEvent<?>, ?> pom) {
+               ObserverMethod<ServiceEvent<?>> observerMethod = 
pom.getObserverMethod();
+
+               if (_log.isDebugEnabled()) {
+                       _log.debug("CDIe - Processing observer method {}", 
observerMethod);
+               }
+
+               Class<?> beanClass = observerMethod.getBeanClass();
+
+               final String className = beanClass.getName();
+
+               ComponentModel componentModel = 
_beansModel.getComponentModel(className);
+
+               if (componentModel == null) {
+                       pom.addDefinitionError(
+                               new IllegalArgumentException(
+                                       String.format(
+                                               "The observer method {} is 
using the event type 'ServiceEvent' but is not defined as a bean",
+                                               observerMethod)));
+
+                       return;
+               }
+
+               Reference reference = getQualifier(observerMethod, 
Reference.class);
+               Configuration configuration = getQualifier(observerMethod, 
Configuration.class);
+
+               if (reference != null) {
+                       processReference(pom, componentModel, reference, 
configuration);
+
+                       return;
+               }
+       }
+
+       @SuppressWarnings("unchecked")
+       private <T extends Annotation> T getQualifier(
+               ObserverMethod<ServiceEvent<?>> observerMethod, Class<T> clazz) 
{
+               Set<Annotation> qualifiers = 
observerMethod.getObservedQualifiers();
+               for (Annotation annotation : qualifiers) {
+                       if 
(clazz.isAssignableFrom(annotation.annotationType())) {
+                               return (T)annotation;
+                       }
+               }
+               return null;
+       }
+*/
+       private void processConfiguration(
+               ProcessInjectionPoint<?, ?> pip,
+               OSGiBean osgiBean) {
+
+               InjectionPoint injectionPoint = pip.getInjectionPoint();
+
+               ConfigurationModel configurationModel = new 
ConfigurationModel.Builder(
+                       injectionPoint.getType()
+               ).injectionPoint(
+                       injectionPoint
+               ).build();
+
+               osgiBean.addConfiguration(configurationModel.toDTO());
+       }
+
+       private void processReference(
+               ProcessInjectionPoint<?, ?> pip,
+               OSGiBean osgiBean,
+               Reference reference,
+               Configuration configuration) {
+
+               InjectionPoint injectionPoint = pip.getInjectionPoint();
+
+               try {
+                       if (configuration != null) {
+                               throw new IllegalArgumentException(
+                                       String.format(
+                                               "Cannot use @Reference and 
@Configuration on the same injection point {}",
+                                               injectionPoint));
+                       }
+
+                       ReferenceModel referenceModel = new 
ReferenceModel.Builder(
+                       ).injectionPoint(
+                               injectionPoint
+                       ).build();
+
+                       osgiBean.addReference(referenceModel.toDTO());
+               }
+               catch (IllegalArgumentException iae) {
+                       _log.error("CDIe - Component definition error on {}", 
injectionPoint, iae);
+
+                       pip.addDefinitionError(iae);
+               }
+       }
+
+       /*
+       private void processReference(
+               ProcessObserverMethod<ServiceEvent<?>, ?> pom,
+               ComponentModel componentModel,
+               Reference reference,
+               Configuration configuration) {
+
+               ObserverMethod<ServiceEvent<?>> observerMethod = 
pom.getObserverMethod();
+
+               try {
+                       if (configuration != null) {
+                               throw new IllegalArgumentException(
+                                       String.format(
+                                               "Cannot use @Reference and 
@Configuration on the same observer method {}",
+                                               observerMethod));
+                       }
+
+                       ReferenceModel referenceModel = new 
ReferenceModel.Builder(
+                               observerMethod.getObservedQualifiers()
+                       ).annotated(
+                               new ObserverMethodAnnotated(observerMethod)
+                       ).policy(
+                               ReferencePolicy.DYNAMIC
+                       ).build();
+
+                       if 
(componentModel.getReferences().remove(referenceModel)) {
+                               if (_log.isDebugEnabled()) {
+                                       _log.debug("CDIe - OSGi CDI annotations 
found. Clearing descriptor reference for {}", observerMethod);
+                               }
+                       }
+
+                       referenceModel.found(true);
+
+                       componentModel.getReferences().add(referenceModel);
+               }
+               catch (IllegalArgumentException iae) {
+                       _log.error("CDIe - Component definition error on {}", 
observerMethod, iae);
+
+                       pom.addDefinitionError(iae);
+               }
+       }
+        */
+
+       static boolean checkIfBeanClassIsOSGiAnnotated(Class<?> annotatedClass) 
{
+               // check for @SingleComponent
+
+               if (Optional.ofNullable(
+                               
annotatedClass.getAnnotation(SingleComponent.class)).isPresent()) {
+
+                       return true;
+               }
+
+               // check for @FactoryComponent
+
+               if (Optional.ofNullable(
+                               
annotatedClass.getAnnotation(FactoryComponent.class)).isPresent()) {
+
+                       return true;
+               }
+
+               // check for @ComponentScoped
+
+               if (Optional.ofNullable(
+                               
annotatedClass.getAnnotation(ComponentScoped.class)).isPresent()) {
+
+                       return true;
+               }
+
+               // check for @ComponentScoped on (producer) fields
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredFields()
+                       ).filter(
+                               field -> Arrays.stream(
+                                       field.getAnnotations()
+                               ).filter(
+                                       annotation -> 
ComponentScoped.class.equals(annotation.annotationType())
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @ComponentScoped on (producer) methods
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredMethods()
+                       ).filter(
+                               method -> Arrays.stream(
+                                       method.getAnnotations()
+                               ).filter(
+                                       annotation -> 
ComponentScoped.class.equals(annotation.annotationType())
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Service
+
+               if (Optional.ofNullable(
+                               
annotatedClass.getAnnotation(Service.class)).isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Service on implements
+
+               if (Arrays.stream(
+                               annotatedClass.getAnnotatedInterfaces()
+                       ).filter(
+                               annotatedType -> 
Objects.nonNull(annotatedType.getAnnotation(Service.class))
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Service on extends
+
+               if (Stream.of(
+                               annotatedClass.getAnnotatedSuperclass()
+                       ).filter(
+                               annotatedType -> 
Objects.nonNull(annotatedType.getAnnotation(Service.class))
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Service on (producer) fields
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredFields()
+                       ).filter(
+                               field -> Arrays.stream(
+                                       field.getAnnotations()
+                               ).filter(
+                                       annotation -> 
Service.class.equals(annotation.annotationType())
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Service on (producer) methods
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredMethods()
+                       ).filter(
+                               method -> Arrays.stream(
+                                       method.getAnnotations()
+                               ).filter(
+                                       annotation -> 
Service.class.equals(annotation.annotationType())
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               Predicate<Annotation> hasAnnotations = annotation ->
+                       Configuration.class.isInstance(annotation) || 
Reference.class.isInstance(annotation);
+
+               // check for @Configuration/@Reference on constructors
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredConstructors()
+                       ).filter(
+                               ctor -> Arrays.stream(
+                                       ctor.getParameterAnnotations()
+                               ).flatMap(
+                                       array -> Arrays.stream(array)
+                               ).filter(
+                                       hasAnnotations
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Configuration/@Reference on fields
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredFields()
+                       ).filter(
+                               field -> Arrays.stream(
+                                       field.getAnnotations()
+                               ).filter(
+                                       hasAnnotations
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               // check for @Configuration/@Reference on methods
+
+               if (Arrays.stream(
+                               annotatedClass.getDeclaredMethods()
+                       ).filter(
+                               method -> Arrays.stream(
+                                       method.getParameterAnnotations()
+                               ).flatMap(
+                                       array -> Arrays.stream(array)
+                               ).filter(
+                                       hasAnnotations
+                               ).findFirst().isPresent()
+                       ).findAny().isPresent()) {
+
+                       return true;
+               }
+
+               return false;
+       }
+
+       private static final Logger _log = 
LoggerFactory.getLogger(DiscoveryExtension.class);
+
+       private final BeansModel _beansModel;
+       private final ContainerComponent _containerComponent;
+
+}

Added: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/OSGiBean.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/OSGiBean.java?rev=1829114&view=auto
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/OSGiBean.java
 (added)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/component/OSGiBean.java
 Sat Apr 14 01:09:09 2018
@@ -0,0 +1,118 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.aries.cdi.container.internal.component;
+
+import java.util.List;
+import java.util.Objects;
+import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.aries.cdi.container.internal.v2.component.Component;
+import org.osgi.service.cdi.runtime.dto.template.ConfigurationTemplateDTO;
+import org.osgi.service.cdi.runtime.dto.template.ReferenceTemplateDTO;
+
+public class OSGiBean implements Comparable<OSGiBean> {
+
+       public static class Builder {
+
+               public Builder(Class<?> beanClass) {
+                       Objects.requireNonNull(beanClass);
+                       _beanClass = beanClass;
+               }
+
+               public OSGiBean build() {
+                       return new OSGiBean(_beanClass);
+               }
+
+               private Class<?> _beanClass;
+
+       }
+
+       private OSGiBean(
+               Class<?> beanClass) {
+
+               _beanClass = beanClass;
+       }
+
+       public void addConfiguration(ConfigurationTemplateDTO dto) {
+               if (_component == null) {
+                       _configurations.add(dto);
+               }
+               else {
+                       _component.addConfiguration(dto);
+               }
+       }
+
+       public void addReference(ReferenceTemplateDTO dto) {
+               if (_component == null) {
+                       _references.add(dto);
+               }
+               else {
+                       _component.addReference(dto);
+               }
+       }
+
+       @Override
+       public int compareTo(OSGiBean other) {
+               return 
_beanClass.getName().compareTo(other._beanClass.getName());
+       }
+
+       public boolean found() {
+               return _found.get();
+       }
+
+       public void found(boolean found) {
+               _found.set(found);
+       }
+
+       public Class<?> getBeanClass() {
+               return _beanClass;
+       }
+
+       public Component getComponent() {
+               return _component;
+       }
+
+       public void setComponent(Component component) {
+               _component = component;
+               _configurations.removeIf(
+                       dto -> {
+                               _component.addConfiguration(dto);
+                               return true;
+                       }
+               );
+               _references.removeIf(
+                       dto -> {
+                               _component.addReference(dto);
+                               return true;
+                       }
+               );
+       }
+
+       @Override
+       public String toString() {
+               if (_string == null) {
+                       _string = String.format("OSGiBean[%s]", 
_beanClass.getName());
+               }
+               return _string;
+       }
+
+       private final Class<?> _beanClass;
+       private final List<ConfigurationTemplateDTO> _configurations = new 
CopyOnWriteArrayList<>();
+       private final List<ReferenceTemplateDTO> _references = new 
CopyOnWriteArrayList<>();
+       private volatile Component _component;
+       private final AtomicBoolean _found = new AtomicBoolean();
+       private volatile String _string;
+}

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationBean.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationBean.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationBean.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationBean.java
 Sat Apr 14 01:09:09 2018
@@ -14,31 +14,83 @@
 
 package org.apache.aries.cdi.container.internal.configuration;
 
-import static org.apache.aries.cdi.container.internal.util.Reflection.cast;
-
 import java.lang.annotation.Annotation;
-import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
-import java.util.Collections;
-import java.util.Dictionary;
-import java.util.List;
 import java.util.Set;
 
-import javax.enterprise.context.Dependent;
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.inject.spi.Decorator;
 import javax.enterprise.inject.spi.InjectionPoint;
 
-import org.apache.aries.cdi.container.internal.component.ComponentModel;
-import org.apache.aries.cdi.container.internal.component.ComponentProperties;
-import org.apache.aries.cdi.container.internal.container.ContainerState;
-import org.apache.aries.cdi.container.internal.util.Conversions;
-
 public class ConfigurationBean implements Bean<Object> {
 
-       public ConfigurationBean(
+       @Override
+       public Object create(CreationalContext<Object> creationalContext) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public void destroy(Object instance, CreationalContext<Object> 
creationalContext) {
+               // TODO Auto-generated method stub
+
+       }
+
+       @Override
+       public Set<Type> getTypes() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Set<Annotation> getQualifiers() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Class<? extends Annotation> getScope() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public String getName() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Set<Class<? extends Annotation>> getStereotypes() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public boolean isAlternative() {
+               // TODO Auto-generated method stub
+               return false;
+       }
+
+       @Override
+       public Class<?> getBeanClass() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Set<InjectionPoint> getInjectionPoints() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public boolean isNullable() {
+               // TODO Auto-generated method stub
+               return false;
+       }
+
+/*     public ConfigurationBean(
                ContainerState containerState,
                ConfigurationModel configurationModel,
                ComponentModel componentModel,
@@ -160,5 +212,5 @@ public class ConfigurationBean implement
        private final ContainerState _containerState;
        private final InjectionPoint _injectionPoint;
        private String _string;
-
+*/
 }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallback.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallback.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallback.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationCallback.java
 Sat Apr 14 01:09:09 2018
@@ -14,19 +14,11 @@
 
 package org.apache.aries.cdi.container.internal.configuration;
 
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.function.Consumer;
-
-import org.osgi.service.cdi.annotations.ConfigurationPolicy;
-
 public class ConfigurationCallback {
 
        public static enum State {STARTED, ADDED, UPDATED, REMOVED}
 
-       public static class Builder {
+/*     public static class Builder {
 
                public ConfigurationCallback build() {
                        //Objects.requireNonNull(_pid);
@@ -182,5 +174,5 @@ public class ConfigurationCallback {
        private final Optional<Consumer<ConfigurationCallback>> _onRemove;
        private volatile State _state;
        private volatile String _string;
-
+*/
 }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedService.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedService.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedService.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationManagedService.java
 Sat Apr 14 01:09:09 2018
@@ -21,7 +21,13 @@ import org.osgi.service.cm.ManagedServic
 
 public class ConfigurationManagedService implements ManagedService {
 
-       public ConfigurationManagedService(String pid, ConfigurationCallback 
callback) {
+       @Override
+       public void updated(Dictionary<String, ?> properties) throws 
ConfigurationException {
+               // TODO Auto-generated method stub
+
+       }
+
+/*     public ConfigurationManagedService(String pid, ConfigurationCallback 
callback) {
                _pid = pid;
                _callback = callback;
        }
@@ -59,5 +65,5 @@ public class ConfigurationManagedService
        private final String _pid;
        private volatile Dictionary<String, ?> _properties;
        private volatile String _string;
-
+*/
 }
\ No newline at end of file

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationModel.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationModel.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationModel.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/configuration/ConfigurationModel.java
 Sat Apr 14 01:09:09 2018
@@ -14,24 +14,18 @@
 
 package org.apache.aries.cdi.container.internal.configuration;
 
-import static org.apache.aries.cdi.container.internal.model.Model.*;
-import static 
org.apache.aries.cdi.container.internal.model.Constants.CDI10_URI;
-import static 
org.apache.aries.cdi.container.internal.model.Constants.CONFIGURATION_PID_ATTRIBUTE;
-import static 
org.apache.aries.cdi.container.internal.model.Constants.CONFIGURATION_POLICY_ATTRIBUTE;
-
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Type;
-import java.util.Arrays;
 import java.util.LinkedHashSet;
 import java.util.Objects;
 import java.util.Set;
-import java.util.concurrent.atomic.AtomicBoolean;
 
 import javax.enterprise.inject.spi.InjectionPoint;
 
-import org.osgi.service.cdi.annotations.Configuration;
-import org.osgi.service.cdi.annotations.ConfigurationPolicy;
-import org.xml.sax.Attributes;
+import org.osgi.service.cdi.annotations.PID;
+import org.osgi.service.cdi.runtime.dto.template.ConfigurationPolicy;
+import org.osgi.service.cdi.runtime.dto.template.ConfigurationTemplateDTO;
+import org.osgi.service.cdi.runtime.dto.template.MaximumCardinality;
 
 public class ConfigurationModel {
 
@@ -42,59 +36,25 @@ public class ConfigurationModel {
                        _type = type;
                }
 
-               public Builder attributes(Attributes attributes) {
-                       _policy = ConfigurationPolicy.get(getValue(
-                                       CDI10_URI, 
CONFIGURATION_POLICY_ATTRIBUTE, attributes, 
ConfigurationPolicy.DEFAULT.toString()));
-                       _pid = getValues(CDI10_URI, 
CONFIGURATION_PID_ATTRIBUTE, attributes, new String[] {Configuration.NAME});
-                       return this;
-               }
-
                public ConfigurationModel build() {
-                       _pid = ((_pid == null) || (_pid.length == 0))? new 
String[] {Configuration.NAME}: _pid;
-
-                       if (_policy == null) {
-                               _policy = ConfigurationPolicy.OPTIONAL;
-                       }
-
-                       return new ConfigurationModel(_type, _pid, _policy, 
_qualifiers);
+                       return new ConfigurationModel(_type, _pid, _qualifiers);
                }
 
                public Builder injectionPoint(InjectionPoint injectionPoint) {
                        _qualifiers = injectionPoint.getQualifiers();
-                       Configuration configuration = 
injectionPoint.getAnnotated().getAnnotation(Configuration.class);
-                       if (configuration != null) {
-                               _policy = configuration.configurationPolicy();
-                               _pid = configuration.value();
-                       }
-                       return this;
-               }
-
-               public Builder pid(String[] pid) {
-                       _pid = pid;
+                       _pid = 
injectionPoint.getAnnotated().getAnnotation(PID.class);
                        return this;
                }
 
-               public Builder policy(ConfigurationPolicy policy) {
-                       _policy = policy;
-                       return this;
-               }
-
-               public Builder qualifiers(Set<Annotation> qualifiers) {
-                       _qualifiers = qualifiers;
-                       return this;
-               }
-
-               private String[] _pid;
-               private ConfigurationPolicy _policy;
+               private PID _pid;
                private Set<Annotation> _qualifiers;
                private Type _type;
 
        }
 
-       private ConfigurationModel(Type type, String[] pids, 
ConfigurationPolicy policy, Set<Annotation> qualifiers) {
+       private ConfigurationModel(Type type, PID pid, Set<Annotation> 
qualifiers) {
                _type = type;
-               _pid = pids;
-               _policy = policy;
+               _pid = pid;
                _qualifiers = new LinkedHashSet<>();
                if (qualifiers != null) {
                        _qualifiers.addAll(qualifiers);
@@ -105,7 +65,6 @@ public class ConfigurationModel {
        public int hashCode() {
                final int prime = 31;
                int result = 1;
-               result = prime * result + ((_policy == null) ? 0 : 
_policy.hashCode());
                result = prime * result + ((_qualifiers == null) ? 0 : 
_qualifiers.hashCode());
                result = prime * result + ((_type == null) ? 0 : 
_type.hashCode());
                return result;
@@ -120,8 +79,6 @@ public class ConfigurationModel {
                if (getClass() != obj.getClass())
                        return false;
                ConfigurationModel other = (ConfigurationModel) obj;
-               if (_policy != other._policy)
-                       return false;
                if (_qualifiers == null) {
                        if (other._qualifiers != null)
                                return false;
@@ -135,19 +92,7 @@ public class ConfigurationModel {
                return true;
        }
 
-       public ConfigurationPolicy getConfigurationPolicy() {
-               return _policy;
-       }
-
-       public boolean found() {
-               return _found.get();
-       }
-
-       public void found(boolean found) {
-               _found.set(found);
-       }
-
-       public String[] getPid() {
+       public PID getPid() {
                return _pid;
        }
 
@@ -164,19 +109,30 @@ public class ConfigurationModel {
                _qualifiers.addAll(qualifiers);
        }
 
+       public ConfigurationTemplateDTO toDTO() {
+               if (_pid != null) {
+                       ConfigurationTemplateDTO dto = new 
ConfigurationTemplateDTO();
+
+                       dto.componentConfiguration = false;
+                       dto.maximumCardinality = MaximumCardinality.ONE;
+                       dto.pid = _pid.value();
+                       dto.policy = 
(_pid.policy().toString().equals(ConfigurationPolicy.REQUIRED.toString()))
+                               ? ConfigurationPolicy.REQUIRED : 
ConfigurationPolicy.OPTIONAL;
+               }
+
+               return null;
+       }
+
        @Override
        public String toString() {
                if (_string == null) {
-                       _string = String.format("configuration[type='%s', 
policy='%s', pid='%s']", _type, _policy, Arrays.toString(_pid));
+                       _string = String.format("configuration[type='%s', 
pid='%s', policy='%s']", _type, _pid.value(), _pid.policy());
                }
                return _string;
        }
 
-       private final AtomicBoolean _found = new AtomicBoolean();
-       private final String[] _pid;
-       private final ConfigurationPolicy _policy;
+       private final PID _pid;
        private final Set<Annotation> _qualifiers;
        private volatile String _string;
        private final Type _type;
-
 }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerBootstrap.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerBootstrap.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerBootstrap.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerBootstrap.java
 Sat Apr 14 01:09:09 2018
@@ -21,7 +21,6 @@ import java.util.concurrent.CopyOnWriteA
 import javax.enterprise.inject.spi.BeanManager;
 import javax.enterprise.inject.spi.Extension;
 
-import 
org.apache.aries.cdi.container.internal.component.ComponentRuntimeExtension;
 import org.apache.aries.cdi.container.internal.context.BundleContextExtension;
 import org.apache.aries.cdi.container.internal.extension.ExtensionMetadata;
 import org.apache.aries.cdi.container.internal.model.BeansModel;
@@ -29,7 +28,6 @@ import org.jboss.weld.bootstrap.WeldBoot
 import org.jboss.weld.bootstrap.spi.BeanDeploymentArchive;
 import org.jboss.weld.bootstrap.spi.Deployment;
 import org.jboss.weld.bootstrap.spi.Metadata;
-import org.jboss.weld.manager.BeanManagerImpl;
 import org.jboss.weld.util.ServiceLoader;
 
 public class ContainerBootstrap {
@@ -50,10 +48,10 @@ public class ContainerBootstrap {
                        new ExtensionMetadata(
                                new 
BundleContextExtension(_containerState.bundleContext()),
                                _containerState.id()));
-               extensions.add(
-                       new ExtensionMetadata(
-                               new ComponentRuntimeExtension(_containerState),
-                               _containerState.id()));
+//             extensions.add(
+//                     new ExtensionMetadata(
+//                             new ComponentRuntimeExtension(_containerState),
+//                             _containerState.id()));
 
                // Add extensions found from the bundle's classloader, such as 
those in the Bundle-ClassPath
                for (Metadata<Extension> meta : 
ServiceLoader.load(Extension.class, _containerState.classLoader())) {
@@ -77,7 +75,7 @@ public class ContainerBootstrap {
                _bootstrap.startContainer(_containerState.id(), new 
ContainerEnvironment(), deployment);
 
                _beanManager = _bootstrap.getManager(beanDeploymentArchive);
-               _containerState.setBeanManager(_beanManager);
+//             _containerState.setBeanManager(_beanManager);
 
                _bootstrap.startInitialization();
                _bootstrap.deployBeans();

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerDiscovery.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerDiscovery.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerDiscovery.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerDiscovery.java
 Sat Apr 14 01:09:09 2018
@@ -20,9 +20,10 @@ import java.util.List;
 import javax.enterprise.inject.spi.DefinitionException;
 import javax.enterprise.inject.spi.Extension;
 
-import 
org.apache.aries.cdi.container.internal.component.ComponentDiscoveryExtension;
+import org.apache.aries.cdi.container.internal.component.DiscoveryExtension;
 import org.apache.aries.cdi.container.internal.extension.ExtensionMetadata;
 import org.apache.aries.cdi.container.internal.model.BeansModel;
+import org.apache.aries.cdi.container.internal.v2.component.ContainerComponent;
 import org.jboss.weld.bootstrap.WeldBootstrap;
 import org.jboss.weld.bootstrap.spi.BeanDeploymentArchive;
 import org.jboss.weld.bootstrap.spi.Deployment;
@@ -39,8 +40,10 @@ public class ContainerDiscovery {
                        containerState.loader(), id, 
beansModel.getBeanClassNames(),
                        beansModel.getBeansXml());
 
+               ContainerComponent containerComponent = new 
ContainerComponent(id);
+
                ExtensionMetadata extension = new ExtensionMetadata(
-                       new ComponentDiscoveryExtension(beansModel), id);
+                       new DiscoveryExtension(beansModel, containerComponent), 
id);
 
                List<Metadata<Extension>> extensions = 
Collections.singletonList(extension);
 
@@ -49,48 +52,29 @@ public class ContainerDiscovery {
 
                WeldBootstrap _bootstrap = new WeldBootstrap();
 
-               _bootstrap.startExtensions(extensions);
-               _bootstrap.startContainer(id, new ContainerEnvironment(), 
deployment);
-               _bootstrap.startInitialization();
-               _bootstrap.deployBeans();
-               //_bootstrap.validateBeans();
-               //_bootstrap.endInitialization();
-               _bootstrap.shutdown();
+               try {
+                       _bootstrap.startExtensions(extensions);
+                       _bootstrap.startContainer(id, new 
ContainerEnvironment(), deployment);
+                       _bootstrap.startInitialization();
+                       _bootstrap.deployBeans();
+                       _bootstrap.shutdown();
+               }
+               catch (DefinitionException de) {
+                       throw de;
+               }
 
                validate(containerState);
        }
 
        private static void validate(ContainerState containerState) {
-               
containerState.beansModel().getComponentModels().stream().forEach(
-                       componentModel -> {
-                               if (!componentModel.found()) {
+               containerState.beansModel().getOSGiBeans().stream().forEach(
+                       osgiBean -> {
+                               if (!osgiBean.found()) {
                                        throw new DefinitionException(
                                                String.format(
                                                        "Did not find bean for 
<component> description %s",
-                                                       componentModel));
+                                                       osgiBean));
                                }
-
-                               componentModel.getReferences().stream().forEach(
-                                       referenceModel -> {
-                                               if (!referenceModel.found()) {
-                                                       throw new 
DefinitionException(
-                                                               String.format(
-                                                                       "Did 
not find injection point for <reference> description %s",
-                                                                       
referenceModel));
-                                               }
-                                       }
-                               );
-
-                               
componentModel.getConfigurations().stream().forEach(
-                                       configurationModel -> {
-                                               if 
(!configurationModel.found()) {
-                                                       throw new 
DefinitionException(
-                                                               String.format(
-                                                                       "Did 
not find injection point for <configuration> description %s",
-                                                                       
configurationModel));
-                                               }
-                                       }
-                               );
                        }
                );
        }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerState.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerState.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerState.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ContainerState.java
 Sat Apr 14 01:09:09 2018
@@ -25,7 +25,7 @@ import javax.enterprise.inject.spi.BeanM
 import javax.enterprise.inject.spi.ObserverMethod;
 import javax.enterprise.util.AnnotationLiteral;
 
-import org.apache.aries.cdi.container.internal.component.ComponentModel;
+import org.apache.aries.cdi.container.internal.component.OSGiBean;
 import 
org.apache.aries.cdi.container.internal.configuration.ConfigurationCallback;
 import org.apache.aries.cdi.container.internal.extension.ExtensionDependency;
 import org.apache.aries.cdi.container.internal.loader.BundleClassLoader;
@@ -91,6 +91,7 @@ public class ContainerState {
 
                _msRegistrator = new Registrator<ManagedService>() {
 
+                       @Override
                        public void registerService(String[] classNames, 
ManagedService service, Dictionary<String, ?> properties) {
                                
registrations.add(bundleContext().registerService(ManagedService.class, 
service, properties));
                        }
@@ -158,11 +159,7 @@ public class ContainerState {
                return _bundle.map(b -> 
_classLoader).orElse(getClass().getClassLoader());
        }
 
-       public synchronized void close() {
-               // no op
-       }
-
-       public Map<ComponentModel, Map<String, ConfigurationCallback>> 
configurationCallbacks() {
+       public Map<OSGiBean, Map<String, ConfigurationCallback>> 
configurationCallbacks() {
                return _configurationCallbacksMap;
        }
 
@@ -191,15 +188,15 @@ public class ContainerState {
                return _msRegistrator;
        }
 
-       public Map<ComponentModel, Map<String, ReferenceCallback>> 
referenceCallbacks() {
+       public Map<OSGiBean, Map<String, ReferenceCallback>> 
referenceCallbacks() {
                return _referenceCallbacksMap;
        }
 
-       public Map<ComponentModel, Map<String, 
ObserverMethod<ReferenceEvent<?>>>> referenceObservers() {
+       public Map<OSGiBean, Map<String, ObserverMethod<ReferenceEvent<?>>>> 
referenceObservers() {
                return _referenceObserversMap;
        }
 
-       public Map<ComponentModel, ServiceDeclaration> serviceComponents() {
+       public Map<OSGiBean, ServiceDeclaration> serviceComponents() {
                return _serviceComponents;
        }
 
@@ -225,14 +222,14 @@ public class ContainerState {
        private final Registrator<BeanManager> _bmRegistrator;
        private final Optional<Bundle> _bundle;
        private ClassLoader _classLoader;
-       private final Map<ComponentModel, Map<String, ConfigurationCallback>> 
_configurationCallbacksMap = new ConcurrentHashMap<>();
+       private final Map<OSGiBean, Map<String, ConfigurationCallback>> 
_configurationCallbacksMap = new ConcurrentHashMap<>();
        private final Context _context;
        private final Bundle _extenderBundle;
        private List<ExtensionDependency> _extensionDependencies;
        private final Registrator<ManagedService> _msRegistrator;
-       private final Map<ComponentModel, Map<String, ReferenceCallback>> 
_referenceCallbacksMap = new ConcurrentHashMap<>();
-       private final Map<ComponentModel, Map<String, 
ObserverMethod<ReferenceEvent<?>>>> _referenceObserversMap = new 
ConcurrentHashMap<>();
-       private final Map<ComponentModel, ServiceDeclaration> 
_serviceComponents = new ConcurrentHashMap<>();
+       private final Map<OSGiBean, Map<String, ReferenceCallback>> 
_referenceCallbacksMap = new ConcurrentHashMap<>();
+       private final Map<OSGiBean, Map<String, 
ObserverMethod<ReferenceEvent<?>>>> _referenceObserversMap = new 
ConcurrentHashMap<>();
+       private final Map<OSGiBean, ServiceDeclaration> _serviceComponents = 
new ConcurrentHashMap<>();
        private final Registrator<Object> _serviceRegistrator;
        private final Tracker _tracker;
 

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/context/BundleContextBean.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/context/BundleContextBean.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/context/BundleContextBean.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/context/BundleContextBean.java
 Sat Apr 14 01:09:09 2018
@@ -21,11 +21,11 @@ import java.util.Set;
 
 import javax.enterprise.context.Dependent;
 import javax.enterprise.context.spi.CreationalContext;
+import javax.enterprise.inject.Any;
+import javax.enterprise.inject.Default;
 import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.inject.spi.InjectionPoint;
 
-import org.apache.aries.cdi.container.internal.literal.AnyLiteral;
-import org.apache.aries.cdi.container.internal.literal.DefaultLiteral;
 import org.apache.aries.cdi.container.internal.util.Sets;
 import org.osgi.framework.BundleContext;
 
@@ -99,7 +99,7 @@ public class BundleContextBean implement
        }
 
        private static final Set<Annotation> DEFAULT_QUALIFIERS = Sets.hashSet(
-               DefaultLiteral.INSTANCE, AnyLiteral.INSTANCE);
+               Default.Literal.INSTANCE, Any.Literal.INSTANCE);
        private static final Set<Type> TYPES = 
Sets.immutableHashSet(BundleContext.class, Object.class);
 
        private final BundleContext _bundleContext;

Copied: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BeanElementException.java
 (from r1828903, 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java)
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BeanElementException.java?p2=aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BeanElementException.java&p1=aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BeanElementException.java
 Sat Apr 14 01:09:09 2018
@@ -12,17 +12,14 @@
  * limitations under the License.
  */
 
-package org.apache.aries.cdi.container.internal.literal;
+package org.apache.aries.cdi.container.internal.exception;
 
-import javax.enterprise.inject.Any;
-import javax.enterprise.util.AnnotationLiteral;
-
-public class AnyLiteral extends AnnotationLiteral<Any> implements Any {
+public class BeanElementException extends IllegalArgumentException {
 
        private static final long serialVersionUID = 1L;
-       public static final Any INSTANCE = new AnyLiteral();
 
-       private AnyLiteral() {
+       public BeanElementException(String message, Throwable cause) {
+               super(message, cause);
        }
 
 }

Copied: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BlacklistQualifierException.java
 (from r1828903, 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java)
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BlacklistQualifierException.java?p2=aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BlacklistQualifierException.java&p1=aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/literal/AnyLiteral.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/exception/BlacklistQualifierException.java
 Sat Apr 14 01:09:09 2018
@@ -12,17 +12,14 @@
  * limitations under the License.
  */
 
-package org.apache.aries.cdi.container.internal.literal;
+package org.apache.aries.cdi.container.internal.exception;
 
-import javax.enterprise.inject.Any;
-import javax.enterprise.util.AnnotationLiteral;
-
-public class AnyLiteral extends AnnotationLiteral<Any> implements Any {
+public class BlacklistQualifierException extends IllegalArgumentException {
 
        private static final long serialVersionUID = 1L;
-       public static final Any INSTANCE = new AnyLiteral();
 
-       private AnyLiteral() {
+       public BlacklistQualifierException(String message, Throwable cause) {
+               super(message, cause);
        }
 
 }

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/extension/ExtensionDependency.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/extension/ExtensionDependency.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/extension/ExtensionDependency.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/extension/ExtensionDependency.java
 Sat Apr 14 01:09:09 2018
@@ -20,13 +20,13 @@ import org.osgi.framework.BundleContext;
 import org.osgi.framework.Filter;
 import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.framework.ServiceReference;
-import org.osgi.service.cdi.CdiConstants;
+import org.osgi.service.cdi.PortableExtensionNamespace;
 
 public class ExtensionDependency {
 
        public ExtensionDependency(BundleContext bundleContext, Long bundleId, 
String name) {
                _string = "(&(" + org.osgi.framework.Constants.SERVICE_BUNDLEID 
+ "=" + bundleId + ")(" +
-                       CdiConstants.CDI_EXTENSION_NAMESPACE + "=" + name + 
"))";
+                       PortableExtensionNamespace.CDI_EXTENSION_NAMESPACE + 
"=" + name + "))";
 
                try {
                        _filter = bundleContext.createFilter(_string);

Modified: 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/BeansModel.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/BeansModel.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/BeansModel.java
 (original)
+++ 
aries/trunk/cdi/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/BeansModel.java
 Sat Apr 14 01:09:09 2018
@@ -16,19 +16,24 @@ package org.apache.aries.cdi.container.i
 
 import java.net.URL;
 import java.util.Collection;
+import java.util.List;
 import java.util.Map;
 
-import org.apache.aries.cdi.container.internal.component.ComponentModel;
+import org.apache.aries.cdi.container.internal.component.OSGiBean;
 import org.jboss.weld.bootstrap.spi.BeansXml;
 import org.jboss.weld.xml.BeansXmlParser;
 
 public class BeansModel {
 
        public BeansModel(
-               Map<String, ComponentModel> components,
+               Map<String, OSGiBean> beans,
+               List<Class<?>> qualifierBlackList,
+               List<Throwable> errors,
                Collection<URL> beanDescriptorURLs) {
 
-               _components = components;
+               _beans = beans;
+               _qualifierBlackList = qualifierBlackList;
+               _errors = errors;
 
                BeansXml beansXml = BeansXml.EMPTY_BEANS_XML;
 
@@ -40,31 +45,37 @@ public class BeansModel {
                _beansXml = beansXml;
        }
 
-       public void addComponentModel(String componentClass, ComponentModel 
componentModel) {
-               _components.put(componentClass, componentModel);
-       }
-
        public Collection<String> getBeanClassNames() {
-               return _components.keySet();
+               return _beans.keySet();
        }
 
        public BeansXml getBeansXml() {
                return _beansXml;
        }
 
-       public ComponentModel getComponentModel(String componentClass) {
-               return _components.get(componentClass);
+       public List<Class<?>> getQualifierBlackList() {
+               return _qualifierBlackList;
+       }
+
+       public List<Throwable> getErrors() {
+               return _errors;
+       }
+
+       public OSGiBean getOSGiBean(String beanClass) {
+               return _beans.get(beanClass);
        }
 
-       public Collection<ComponentModel> getComponentModels() {
-               return _components.values();
+       public Collection<OSGiBean> getOSGiBeans() {
+               return _beans.values();
        }
 
-       public void removeComponentModel(String beanClassName) {
-               _components.remove(beanClassName);
+       public void putOSGiBean(String beanClass, OSGiBean osgiBean) {
+               _beans.put(beanClass, osgiBean);
        }
 
+       private final Map<String, OSGiBean> _beans;
        private final BeansXml _beansXml;
-       private final Map<String, ComponentModel> _components;
+       private final List<Throwable> _errors;
+       private final List<Class<?>> _qualifierBlackList;
 
 }
\ No newline at end of file


Reply via email to