You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by ga...@apache.org on 2010/01/06 07:05:26 UTC
svn commit: r896324 [4/5] - in /incubator/aries/trunk/blueprint: ./
blueprint-api/src/main/java/org/osgi/service/blueprint/container/
blueprint-api/src/main/java/org/osgi/service/blueprint/reflect/
blueprint-bundle/ blueprint-cm/ blueprint-cm/src/main/...
Modified: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java Wed Jan 6 06:05:04 2010
@@ -1,217 +1,217 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.blueprint.itests;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-import static org.ops4j.pax.exam.CoreOptions.equinox;
-import static org.ops4j.pax.exam.CoreOptions.options;
-import static org.ops4j.pax.exam.CoreOptions.systemProperty;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.aries.blueprint.BeanProcessor;
-import org.apache.aries.blueprint.testbundlea.NSHandlerOne;
-import org.apache.aries.blueprint.testbundlea.NSHandlerTwo;
-import org.apache.aries.blueprint.testbundlea.ProcessableBean;
-import org.apache.aries.blueprint.testbundlea.ProcessableBean.Phase;
-import org.apache.aries.blueprint.testbundleb.TestBean;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.ops4j.pax.exam.Option;
-import org.ops4j.pax.exam.junit.JUnit4TestRunner;
-import org.osgi.framework.Bundle;
-import org.osgi.service.blueprint.container.BlueprintContainer;
-
-@RunWith(JUnit4TestRunner.class)
-public class MultiBundleTest extends AbstractIntegrationTest{
-
- private void checkInterceptorLog(String []expected, List<String> log){
- assertNotNull("interceptor log should not be null",log);
-
- assertEquals("interceptor log size does not match expected size",expected.length,log.size());
-
- List<String> extra=new ArrayList<String>();
- boolean[] found = new boolean[expected.length];
- for(String s : log){
- boolean used=false;
- for(int i=0; i<expected.length; i++){
- if(s.startsWith(expected[i])){
- found[i]=true;
- used=true;
- }
- }
- if(!used){
- extra.add(s);
- }
- }
- if(extra.size()!=0){
- String extraFormatted="{";
- for(String e:extra){
- extraFormatted+=e+" ";
- }
- extraFormatted+="}";
- fail("surplus interceptor invocations present in invocation log "+extraFormatted);
- }
- for(int i=0; i<found.length; i++){
- assertTrue("interceptor invocation "+expected[i]+" not found",found[i]);
- }
- }
-
- @Test
- public void test() throws Exception {
-
- //bundlea provides the ns handlers, bean processors, interceptors etc for this test.
- Bundle bundlea = getInstalledBundle("org.apache.aries.blueprint.testbundlea");
- assertNotNull(bundlea);
- bundlea.start();
-
- //bundleb makes use of the extensions provided by bundlea
- Bundle bundleb = getInstalledBundle("org.apache.aries.blueprint.testbundleb");
- assertNotNull(bundleb);
- bundleb.start();
-
- //bundleb's container will hold the beans we need to query to check the function
- //provided by bundlea functioned as expected
- BlueprintContainer beanContainer =
- getBlueprintContainerForBundle( bundleContext , "org.apache.aries.blueprint.testbundleb", 5000);
- assertNotNull(beanContainer);
-
- //TestBeanA should have the values below, no interference should be present from other sources.
- Object obj1 = beanContainer.getComponentInstance("TestBeanA");
- assertTrue(obj1 instanceof TestBean);
- TestBean testBeanA = (TestBean)obj1;
- org.junit.Assert.assertEquals("RED", testBeanA.getRed());
- org.junit.Assert.assertEquals("GREEN", testBeanA.getGreen());
- org.junit.Assert.assertEquals("BLUE", testBeanA.getBlue());
-
- //TestBeanB tests that a custom ns handler is able to inject custom components to the blueprint,
- //and modify existing components, and use injected components as modifications.
- Object obj2 = beanContainer.getComponentInstance("TestBeanB");
- assertTrue(obj2 instanceof TestBean);
- TestBean testBeanB = (TestBean)obj2;
- //value should be set in via the added passthroughmetadata via the nshandler.
- org.junit.Assert.assertEquals("ONE_VALUE", testBeanB.getRed());
- org.junit.Assert.assertEquals("GREEN", testBeanB.getGreen());
- org.junit.Assert.assertEquals("BLUE", testBeanB.getBlue());
-
- //TestBeanC tests that custom ns handlers can add interceptors to beans.
- Object obj3 = beanContainer.getComponentInstance("TestBeanC");
- assertTrue(obj3 instanceof TestBean);
- TestBean testBeanC = (TestBean)obj3;
-
- //handlers are in bundlea, with its own container.
- BlueprintContainer handlerContainer =
- getBlueprintContainerForBundle( bundleContext , "org.apache.aries.blueprint.testbundlea", 5000);
- assertNotNull(handlerContainer);
-
- Object ns1 = handlerContainer.getComponentInstance("NSHandlerOne");
- assertTrue(ns1 instanceof NSHandlerOne);
-
- Object ns2 = handlerContainer.getComponentInstance("NSHandlerTwo");
- assertTrue(ns2 instanceof NSHandlerTwo);
- NSHandlerTwo nstwo = (NSHandlerTwo)ns2;
-
- //now we have a handle to the nshandler2, we can query what it 'saw', and ensure
- //that the interceptors are functioning as expected.
- List<String> log = nstwo.getLog();
-
- //TestBeanC has the interceptor configured, and is injected to OtherBeanA & OtherBeanB
- //which then uses the injected bean during their init method call, to invoke a method
- checkInterceptorLog(new String[] {
- "PRECALL:TestBeanC:methodToInvoke:[RED]:",
- "POSTCALL[true]:TestBeanC:methodToInvoke:[RED]:",
- "PRECALL:TestBeanC:methodToInvoke:[BLUE]:",
- "POSTCALL[false]:TestBeanC:methodToInvoke:[BLUE]:"
- }, log);
-
- //invoking GREEN is hardwired to cause an exception response, we do this
- //from here to ensure the exception occurs and is visible as expected
- RuntimeException re=null;
- try{
- testBeanC.methodToInvoke("GREEN");
- }catch(RuntimeException e){
- re=e;
- }
- assertNotNull("invocation of Green did not cause an exception as expected",re);
-
- //Exception responses should be intercepted too, test for the POSTCALLWITHEXCEPTION log entry.
- log = nstwo.getLog();
- checkInterceptorLog(new String[] {
- "PRECALL:TestBeanC:methodToInvoke:[RED]:",
- "POSTCALL[true]:TestBeanC:methodToInvoke:[RED]:",
- "PRECALL:TestBeanC:methodToInvoke:[BLUE]:",
- "POSTCALL[false]:TestBeanC:methodToInvoke:[BLUE]:",
- "PRECALL:TestBeanC:methodToInvoke:[GREEN]:",
- "POSTCALLEXCEPTION[java.lang.RuntimeException: MATCHED ON GREEN (GREEN)]:TestBeanC:methodToInvoke:[GREEN]:"
- }, log);
-
- //ProcessedBean is a test to ensure that BeanProcessors are called..
- //The test has the BeanProcessor look for ProcessableBeans, and log itself with them
- Object obj4 = beanContainer.getComponentInstance("ProcessedBean");
- assertTrue(obj4 instanceof ProcessableBean);
- ProcessableBean pb = (ProcessableBean)obj4;
-
- //Note, the BeanProcessor exists in the same container as the beans it processes!!
- Object bp = beanContainer.getComponentInstance("http://ns.handler.three/BeanProcessor");
- assertNotNull(bp);
- assertTrue(bp instanceof BeanProcessor);
- assertEquals(1,pb.getProcessedBy().size());
- //check we were invoked..
- assertEquals(pb.getProcessedBy().get(0),bp);
- //check invocation for each phase.
- assertEquals(pb.getProcessedBy(Phase.BEFORE_INIT).get(0),bp);
- assertEquals(pb.getProcessedBy(Phase.AFTER_INIT).get(0),bp);
- //destroy invocation will only occur at tear down.. TODO, how to test after teardown.
- //assertEquals(pb.getProcessedBy(Phase.BEFORE_DESTROY).get(0),bp);
- //assertEquals(pb.getProcessedBy(Phase.AFTER_DESTROY).get(0),bp);
- }
-
- @org.ops4j.pax.exam.junit.Configuration
- public static Option[] configuration() {
- Option[] options = options(
- // Log
- mavenBundle("org.ops4j.pax.logging", "pax-logging-api"),
- mavenBundle("org.ops4j.pax.logging", "pax-logging-service"),
- // Felix Config Admin
- mavenBundle("org.apache.felix", "org.apache.felix.configadmin"),
- // Felix mvn url handler
- mavenBundle("org.ops4j.pax.url", "pax-url-mvn"),
-
- // this is how you set the default log level when using pax logging (logProfile)
- systemProperty("org.ops4j.pax.logging.DefaultServiceLog.level").value("DEBUG"),
-
- // Bundles
- mavenBundle("org.apache.aries", "org.apache.aries.util"),
- mavenBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.cglib"),
- mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint"),
- mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint.testbundlea").noStart(),
- mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint.testbundleb").noStart(),
- mavenBundle("org.osgi", "org.osgi.compendium"),
- // org.ops4j.pax.exam.container.def.PaxRunnerOptions.vmOption("-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"),
-
- equinox().version("3.5.0")
- );
- options = updateOptions(options);
- return options;
- }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.blueprint.itests;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import static org.ops4j.pax.exam.CoreOptions.equinox;
+import static org.ops4j.pax.exam.CoreOptions.options;
+import static org.ops4j.pax.exam.CoreOptions.systemProperty;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.aries.blueprint.BeanProcessor;
+import org.apache.aries.blueprint.testbundlea.NSHandlerOne;
+import org.apache.aries.blueprint.testbundlea.NSHandlerTwo;
+import org.apache.aries.blueprint.testbundlea.ProcessableBean;
+import org.apache.aries.blueprint.testbundlea.ProcessableBean.Phase;
+import org.apache.aries.blueprint.testbundleb.TestBean;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.junit.JUnit4TestRunner;
+import org.osgi.framework.Bundle;
+import org.osgi.service.blueprint.container.BlueprintContainer;
+
+@RunWith(JUnit4TestRunner.class)
+public class MultiBundleTest extends AbstractIntegrationTest{
+
+ private void checkInterceptorLog(String []expected, List<String> log){
+ assertNotNull("interceptor log should not be null",log);
+
+ assertEquals("interceptor log size does not match expected size",expected.length,log.size());
+
+ List<String> extra=new ArrayList<String>();
+ boolean[] found = new boolean[expected.length];
+ for(String s : log){
+ boolean used=false;
+ for(int i=0; i<expected.length; i++){
+ if(s.startsWith(expected[i])){
+ found[i]=true;
+ used=true;
+ }
+ }
+ if(!used){
+ extra.add(s);
+ }
+ }
+ if(extra.size()!=0){
+ String extraFormatted="{";
+ for(String e:extra){
+ extraFormatted+=e+" ";
+ }
+ extraFormatted+="}";
+ fail("surplus interceptor invocations present in invocation log "+extraFormatted);
+ }
+ for(int i=0; i<found.length; i++){
+ assertTrue("interceptor invocation "+expected[i]+" not found",found[i]);
+ }
+ }
+
+ @Test
+ public void test() throws Exception {
+
+ //bundlea provides the ns handlers, bean processors, interceptors etc for this test.
+ Bundle bundlea = getInstalledBundle("org.apache.aries.blueprint.testbundlea");
+ assertNotNull(bundlea);
+ bundlea.start();
+
+ //bundleb makes use of the extensions provided by bundlea
+ Bundle bundleb = getInstalledBundle("org.apache.aries.blueprint.testbundleb");
+ assertNotNull(bundleb);
+ bundleb.start();
+
+ //bundleb's container will hold the beans we need to query to check the function
+ //provided by bundlea functioned as expected
+ BlueprintContainer beanContainer =
+ getBlueprintContainerForBundle( bundleContext , "org.apache.aries.blueprint.testbundleb", 5000);
+ assertNotNull(beanContainer);
+
+ //TestBeanA should have the values below, no interference should be present from other sources.
+ Object obj1 = beanContainer.getComponentInstance("TestBeanA");
+ assertTrue(obj1 instanceof TestBean);
+ TestBean testBeanA = (TestBean)obj1;
+ org.junit.Assert.assertEquals("RED", testBeanA.getRed());
+ org.junit.Assert.assertEquals("GREEN", testBeanA.getGreen());
+ org.junit.Assert.assertEquals("BLUE", testBeanA.getBlue());
+
+ //TestBeanB tests that a custom ns handler is able to inject custom components to the blueprint,
+ //and modify existing components, and use injected components as modifications.
+ Object obj2 = beanContainer.getComponentInstance("TestBeanB");
+ assertTrue(obj2 instanceof TestBean);
+ TestBean testBeanB = (TestBean)obj2;
+ //value should be set in via the added passthroughmetadata via the nshandler.
+ org.junit.Assert.assertEquals("ONE_VALUE", testBeanB.getRed());
+ org.junit.Assert.assertEquals("GREEN", testBeanB.getGreen());
+ org.junit.Assert.assertEquals("BLUE", testBeanB.getBlue());
+
+ //TestBeanC tests that custom ns handlers can add interceptors to beans.
+ Object obj3 = beanContainer.getComponentInstance("TestBeanC");
+ assertTrue(obj3 instanceof TestBean);
+ TestBean testBeanC = (TestBean)obj3;
+
+ //handlers are in bundlea, with its own container.
+ BlueprintContainer handlerContainer =
+ getBlueprintContainerForBundle( bundleContext , "org.apache.aries.blueprint.testbundlea", 5000);
+ assertNotNull(handlerContainer);
+
+ Object ns1 = handlerContainer.getComponentInstance("NSHandlerOne");
+ assertTrue(ns1 instanceof NSHandlerOne);
+
+ Object ns2 = handlerContainer.getComponentInstance("NSHandlerTwo");
+ assertTrue(ns2 instanceof NSHandlerTwo);
+ NSHandlerTwo nstwo = (NSHandlerTwo)ns2;
+
+ //now we have a handle to the nshandler2, we can query what it 'saw', and ensure
+ //that the interceptors are functioning as expected.
+ List<String> log = nstwo.getLog();
+
+ //TestBeanC has the interceptor configured, and is injected to OtherBeanA & OtherBeanB
+ //which then uses the injected bean during their init method call, to invoke a method
+ checkInterceptorLog(new String[] {
+ "PRECALL:TestBeanC:methodToInvoke:[RED]:",
+ "POSTCALL[true]:TestBeanC:methodToInvoke:[RED]:",
+ "PRECALL:TestBeanC:methodToInvoke:[BLUE]:",
+ "POSTCALL[false]:TestBeanC:methodToInvoke:[BLUE]:"
+ }, log);
+
+ //invoking GREEN is hardwired to cause an exception response, we do this
+ //from here to ensure the exception occurs and is visible as expected
+ RuntimeException re=null;
+ try{
+ testBeanC.methodToInvoke("GREEN");
+ }catch(RuntimeException e){
+ re=e;
+ }
+ assertNotNull("invocation of Green did not cause an exception as expected",re);
+
+ //Exception responses should be intercepted too, test for the POSTCALLWITHEXCEPTION log entry.
+ log = nstwo.getLog();
+ checkInterceptorLog(new String[] {
+ "PRECALL:TestBeanC:methodToInvoke:[RED]:",
+ "POSTCALL[true]:TestBeanC:methodToInvoke:[RED]:",
+ "PRECALL:TestBeanC:methodToInvoke:[BLUE]:",
+ "POSTCALL[false]:TestBeanC:methodToInvoke:[BLUE]:",
+ "PRECALL:TestBeanC:methodToInvoke:[GREEN]:",
+ "POSTCALLEXCEPTION[java.lang.RuntimeException: MATCHED ON GREEN (GREEN)]:TestBeanC:methodToInvoke:[GREEN]:"
+ }, log);
+
+ //ProcessedBean is a test to ensure that BeanProcessors are called..
+ //The test has the BeanProcessor look for ProcessableBeans, and log itself with them
+ Object obj4 = beanContainer.getComponentInstance("ProcessedBean");
+ assertTrue(obj4 instanceof ProcessableBean);
+ ProcessableBean pb = (ProcessableBean)obj4;
+
+ //Note, the BeanProcessor exists in the same container as the beans it processes!!
+ Object bp = beanContainer.getComponentInstance("http://ns.handler.three/BeanProcessor");
+ assertNotNull(bp);
+ assertTrue(bp instanceof BeanProcessor);
+ assertEquals(1,pb.getProcessedBy().size());
+ //check we were invoked..
+ assertEquals(pb.getProcessedBy().get(0),bp);
+ //check invocation for each phase.
+ assertEquals(pb.getProcessedBy(Phase.BEFORE_INIT).get(0),bp);
+ assertEquals(pb.getProcessedBy(Phase.AFTER_INIT).get(0),bp);
+ //destroy invocation will only occur at tear down.. TODO, how to test after teardown.
+ //assertEquals(pb.getProcessedBy(Phase.BEFORE_DESTROY).get(0),bp);
+ //assertEquals(pb.getProcessedBy(Phase.AFTER_DESTROY).get(0),bp);
+ }
+
+ @org.ops4j.pax.exam.junit.Configuration
+ public static Option[] configuration() {
+ Option[] options = options(
+ // Log
+ mavenBundle("org.ops4j.pax.logging", "pax-logging-api"),
+ mavenBundle("org.ops4j.pax.logging", "pax-logging-service"),
+ // Felix Config Admin
+ mavenBundle("org.apache.felix", "org.apache.felix.configadmin"),
+ // Felix mvn url handler
+ mavenBundle("org.ops4j.pax.url", "pax-url-mvn"),
+
+ // this is how you set the default log level when using pax logging (logProfile)
+ systemProperty("org.ops4j.pax.logging.DefaultServiceLog.level").value("DEBUG"),
+
+ // Bundles
+ mavenBundle("org.apache.aries", "org.apache.aries.util"),
+ mavenBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.cglib"),
+ mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint"),
+ mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint.testbundlea").noStart(),
+ mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint.testbundleb").noStart(),
+ mavenBundle("org.osgi", "org.osgi.compendium"),
+ // org.ops4j.pax.exam.container.def.PaxRunnerOptions.vmOption("-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"),
+
+ equinox().version("3.5.0")
+ );
+ options = updateOptions(options);
+ return options;
+ }
+}
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/MultiBundleTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/TestConfigAdmin.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/TestConfigAdmin.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/TestConfigAdmin.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/TestReferences.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/TestReferences.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/TestReferences.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: incubator/aries/trunk/blueprint/blueprint-sample/src/main/java/org/apache/aries/blueprint/sample/BindingListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-sample/src/main/java/org/apache/aries/blueprint/sample/BindingListener.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-sample/src/main/java/org/apache/aries/blueprint/sample/BindingListener.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: incubator/aries/trunk/blueprint/blueprint-sample/src/main/java/org/apache/aries/blueprint/sample/InterfaceA.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-sample/src/main/java/org/apache/aries/blueprint/sample/InterfaceA.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-sample/src/main/java/org/apache/aries/blueprint/sample/InterfaceA.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml Wed Jan 6 06:05:04 2010
@@ -1,64 +1,64 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You 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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <description>Blueprint Test Bundle A, provides NamespaceHandler, BeanProcessor etc implementations for Test Bundle B</description>
- <parent>
- <groupId>org.apache.aries.blueprint</groupId>
- <artifactId>blueprint</artifactId>
- <version>1.0.0-incubating-SNAPSHOT</version>
- </parent>
-
- <artifactId>org.apache.aries.blueprint.testbundlea</artifactId>
- <name>Apache Aries Blueprint Test Bundle A</name>
- <packaging>bundle</packaging>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin
- </artifactId>
- <extensions>true</extensions>
- <configuration>
- <instructions>
- <Bundle-SymbolicName>${pom.groupId}.testbundlea</Bundle-SymbolicName>
- <Bundle-Activator>
- org.apache.aries.blueprint.testbundlea.Activator
- </Bundle-Activator>
- <Export-Package>org.apache.aries.blueprint.testbundlea.*</Export-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
- <dependencies>
- <dependency>
- <groupId>org.eclipse</groupId>
- <artifactId>osgi</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.aries.blueprint</groupId>
- <artifactId>org.apache.aries.blueprint.api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.aries.blueprint</groupId>
- <artifactId>org.apache.aries.blueprint.core</artifactId>
- </dependency>
- </dependencies>
-</project>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <description>Blueprint Test Bundle A, provides NamespaceHandler, BeanProcessor etc implementations for Test Bundle B</description>
+ <parent>
+ <groupId>org.apache.aries.blueprint</groupId>
+ <artifactId>blueprint</artifactId>
+ <version>1.0.0-incubating-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.apache.aries.blueprint.testbundlea</artifactId>
+ <name>Apache Aries Blueprint Test Bundle A</name>
+ <packaging>bundle</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin
+ </artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>${pom.groupId}.testbundlea</Bundle-SymbolicName>
+ <Bundle-Activator>
+ org.apache.aries.blueprint.testbundlea.Activator
+ </Bundle-Activator>
+ <Export-Package>org.apache.aries.blueprint.testbundlea.*</Export-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse</groupId>
+ <artifactId>osgi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.aries.blueprint</groupId>
+ <artifactId>org.apache.aries.blueprint.api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.aries.blueprint</groupId>
+ <artifactId>org.apache.aries.blueprint.core</artifactId>
+ </dependency>
+ </dependencies>
+</project>
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/pom.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java Wed Jan 6 06:05:04 2010
@@ -1,28 +1,28 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.blueprint.testbundlea;
-
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class Activator implements BundleActivator {
- public void start(BundleContext context) {
- }
- public void stop(BundleContext context) {
- }
-
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.blueprint.testbundlea;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+ public void start(BundleContext context) {
+ }
+ public void stop(BundleContext context) {
+ }
+
+}
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/Activator.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java Wed Jan 6 06:05:04 2010
@@ -1,49 +1,49 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.blueprint.testbundlea;
-
-import org.apache.aries.blueprint.BeanProcessor;
-import org.osgi.service.blueprint.reflect.BeanMetadata;
-
-public class BeanProcessorTest implements BeanProcessor {
-
- public Object beforeInit(Object bean, String beanName,
- BeanCreator beanCreator, BeanMetadata beanData) {
- if(bean instanceof ProcessableBean){
- ProcessableBean pb = (ProcessableBean)bean;
- pb.processBeforeInit(this);
- }
- return bean;
- }
- public Object afterInit(Object bean, String beanName,
- BeanCreator beanCreator, BeanMetadata beanData) {
- if(bean instanceof ProcessableBean){
- ((ProcessableBean)bean).processAfterInit(this);
- }
- return bean;
- }
- public void beforeDestroy(Object bean, String beanName) {
- if(bean instanceof ProcessableBean){
- ((ProcessableBean)bean).processBeforeDestroy(this);
- }
- }
- public void afterDestroy(Object bean, String beanName) {
- if(bean instanceof ProcessableBean){
- ((ProcessableBean)bean).processAfterDestroy(this);
- }
- }
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.blueprint.testbundlea;
+
+import org.apache.aries.blueprint.BeanProcessor;
+import org.osgi.service.blueprint.reflect.BeanMetadata;
+
+public class BeanProcessorTest implements BeanProcessor {
+
+ public Object beforeInit(Object bean, String beanName,
+ BeanCreator beanCreator, BeanMetadata beanData) {
+ if(bean instanceof ProcessableBean){
+ ProcessableBean pb = (ProcessableBean)bean;
+ pb.processBeforeInit(this);
+ }
+ return bean;
+ }
+ public Object afterInit(Object bean, String beanName,
+ BeanCreator beanCreator, BeanMetadata beanData) {
+ if(bean instanceof ProcessableBean){
+ ((ProcessableBean)bean).processAfterInit(this);
+ }
+ return bean;
+ }
+ public void beforeDestroy(Object bean, String beanName) {
+ if(bean instanceof ProcessableBean){
+ ((ProcessableBean)bean).processBeforeDestroy(this);
+ }
+ }
+ public void afterDestroy(Object bean, String beanName) {
+ if(bean instanceof ProcessableBean){
+ ((ProcessableBean)bean).processAfterDestroy(this);
+ }
+ }
}
\ No newline at end of file
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/BeanProcessorTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java Wed Jan 6 06:05:04 2010
@@ -1,127 +1,127 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.blueprint.testbundlea;
-
-import java.net.URL;
-import java.util.List;
-import java.util.Set;
-
-import org.apache.aries.blueprint.NamespaceHandler;
-import org.apache.aries.blueprint.ParserContext;
-import org.apache.aries.blueprint.PassThroughMetadata;
-import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.aries.blueprint.mutable.MutableRefMetadata;
-import org.osgi.service.blueprint.reflect.ComponentMetadata;
-import org.osgi.service.blueprint.reflect.Metadata;
-import org.osgi.service.blueprint.reflect.RefMetadata;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * A simple example namespace handler, that understands an element, and 2 attributes
- *
- * When the element is encountered in a top level blueprint element, the handler will add a
- * passthroughmetadata with it's id as the contained attribone.
- * The passthroughmetadata will return a string with the value from the contained
- * attrib two.
- *
- * If the element is encountered during processing of a bean, it will add a property to the
- * bean with the name of the attribone value, and a value of the passthroughmetadata with id
- * matching attribtwo
- *
- * This handler is designed to exercise aspects of the NamespaceHandler capability set.
- *
- */
-public class NSHandlerOne implements NamespaceHandler {
-
- public static String NSURI = "http://ns.handler.one";
-
- private static String ELT_NAME = "nshandlerone";
- private static String ATTRIB_ONE = "attribone";
- private static String ATTRIB_TWO = "attribtwo";
-
- //process attributes
- public ComponentMetadata decorate(Node node, ComponentMetadata component,
- ParserContext context) {
-
- //this test makes use of the 'Mutable' implementations
- //without which the code would need to implement our own BeanMetadata,
- //and RefMetadata.
- if(component !=null && component instanceof MutableBeanMetadata){
- MutableBeanMetadata mbm = (MutableBeanMetadata)component;
-
- Attr a = (Attr)node;
- Element bean = a.getOwnerElement();
-
- String propname = bean.getAttributeNS(NSURI,ATTRIB_ONE);
-
- //if this were not a test, we might attempt to ensure this ref existed
- String passthruref = bean.getAttributeNS(NSURI,ATTRIB_TWO);
-
- MutableRefMetadata ref = (MutableRefMetadata)context.createMetadata(RefMetadata.class);
- ref.setComponentId(passthruref);
-
- mbm.addProperty(propname, ref);
- }
- return component;
- }
-
- //process elements
- public Metadata parse(Element element, ParserContext context) {
- Metadata retval = null;
- if( element.getLocalName().equals(ELT_NAME) ) {
-
- final String id = element.getAttributeNS(NSURI,ATTRIB_ONE);
- final String value = element.getAttributeNS(NSURI,ATTRIB_TWO);
-
- PassThroughMetadata ptm = new PassThroughMetadata() {
-
- public String getId() {
- return id;
- }
-
- //not used currently
- public List<String> getDependsOn() {
- return null;
- }
-
- //also not used currently
- public int getActivation() {
- return 0;
- }
-
- public Object getObject() {
- return value;
- }
- };
-
- retval = ptm;
- }
- return retval;
- }
-
- //supply schema back to blueprint.
- public URL getSchemaLocation(String namespace) {
- return this.getClass().getResource("nshandlerone.xsd");
- }
-
- public Set<Class> getManagedClasses() {
- return null;
- }
-
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.blueprint.testbundlea;
+
+import java.net.URL;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.aries.blueprint.NamespaceHandler;
+import org.apache.aries.blueprint.ParserContext;
+import org.apache.aries.blueprint.PassThroughMetadata;
+import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
+import org.apache.aries.blueprint.mutable.MutableRefMetadata;
+import org.osgi.service.blueprint.reflect.ComponentMetadata;
+import org.osgi.service.blueprint.reflect.Metadata;
+import org.osgi.service.blueprint.reflect.RefMetadata;
+import org.w3c.dom.Attr;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+
+/**
+ * A simple example namespace handler, that understands an element, and 2 attributes
+ *
+ * When the element is encountered in a top level blueprint element, the handler will add a
+ * passthroughmetadata with it's id as the contained attribone.
+ * The passthroughmetadata will return a string with the value from the contained
+ * attrib two.
+ *
+ * If the element is encountered during processing of a bean, it will add a property to the
+ * bean with the name of the attribone value, and a value of the passthroughmetadata with id
+ * matching attribtwo
+ *
+ * This handler is designed to exercise aspects of the NamespaceHandler capability set.
+ *
+ */
+public class NSHandlerOne implements NamespaceHandler {
+
+ public static String NSURI = "http://ns.handler.one";
+
+ private static String ELT_NAME = "nshandlerone";
+ private static String ATTRIB_ONE = "attribone";
+ private static String ATTRIB_TWO = "attribtwo";
+
+ //process attributes
+ public ComponentMetadata decorate(Node node, ComponentMetadata component,
+ ParserContext context) {
+
+ //this test makes use of the 'Mutable' implementations
+ //without which the code would need to implement our own BeanMetadata,
+ //and RefMetadata.
+ if(component !=null && component instanceof MutableBeanMetadata){
+ MutableBeanMetadata mbm = (MutableBeanMetadata)component;
+
+ Attr a = (Attr)node;
+ Element bean = a.getOwnerElement();
+
+ String propname = bean.getAttributeNS(NSURI,ATTRIB_ONE);
+
+ //if this were not a test, we might attempt to ensure this ref existed
+ String passthruref = bean.getAttributeNS(NSURI,ATTRIB_TWO);
+
+ MutableRefMetadata ref = (MutableRefMetadata)context.createMetadata(RefMetadata.class);
+ ref.setComponentId(passthruref);
+
+ mbm.addProperty(propname, ref);
+ }
+ return component;
+ }
+
+ //process elements
+ public Metadata parse(Element element, ParserContext context) {
+ Metadata retval = null;
+ if( element.getLocalName().equals(ELT_NAME) ) {
+
+ final String id = element.getAttributeNS(NSURI,ATTRIB_ONE);
+ final String value = element.getAttributeNS(NSURI,ATTRIB_TWO);
+
+ PassThroughMetadata ptm = new PassThroughMetadata() {
+
+ public String getId() {
+ return id;
+ }
+
+ //not used currently
+ public List<String> getDependsOn() {
+ return null;
+ }
+
+ //also not used currently
+ public int getActivation() {
+ return 0;
+ }
+
+ public Object getObject() {
+ return value;
+ }
+ };
+
+ retval = ptm;
+ }
+ return retval;
+ }
+
+ //supply schema back to blueprint.
+ public URL getSchemaLocation(String namespace) {
+ return this.getClass().getResource("nshandlerone.xsd");
+ }
+
+ public Set<Class> getManagedClasses() {
+ return null;
+ }
+
+}
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerOne.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java Wed Jan 6 06:05:04 2010
@@ -1,70 +1,70 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.blueprint.testbundlea;
-
-import java.net.URL;
-import java.util.Set;
-
-import org.apache.aries.blueprint.NamespaceHandler;
-import org.apache.aries.blueprint.ParserContext;
-import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.osgi.service.blueprint.reflect.BeanMetadata;
-import org.osgi.service.blueprint.reflect.ComponentMetadata;
-import org.osgi.service.blueprint.reflect.Metadata;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class NSHandlerThree implements NamespaceHandler{
- public static String NSURI = "http://ns.handler.three";
-
- private static String ELT_NAME = "nshandlerthree";
- private static String ATTRIB_ONE = "attribone";
- private static String ATTRIB_TWO = "attribtwo";
-
- public ComponentMetadata decorate(Node node, ComponentMetadata component,
- ParserContext context) {
- if(node.getLocalName().equals(ATTRIB_ONE)){
- if(component instanceof BeanMetadata){
- if(context.getComponentDefinitionRegistry().getComponentDefinition(NSURI+"/BeanProcessor")==null){
- BeanMetadata bm = context.createMetadata(BeanMetadata.class);
- MutableBeanMetadata mbm = (MutableBeanMetadata)bm;
- mbm.setProcessor(true);
- mbm.setRuntimeClass(BeanProcessorTest.class);
- mbm.setScope(BeanMetadata.SCOPE_SINGLETON);
- mbm.setId(NSURI+"/BeanProcessor");
- context.getComponentDefinitionRegistry().registerComponentDefinition(mbm);
- }
- }
- }
- return component;
- }
-
- //process elements
- public Metadata parse(Element element, ParserContext context) {
- return null;
- }
-
- //supply schema back to blueprint.
- public URL getSchemaLocation(String namespace) {
- return this.getClass().getResource("nshandlerthree.xsd");
- }
-
- public Set<Class> getManagedClasses() {
- return null;
- }
-
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.blueprint.testbundlea;
+
+import java.net.URL;
+import java.util.Set;
+
+import org.apache.aries.blueprint.NamespaceHandler;
+import org.apache.aries.blueprint.ParserContext;
+import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
+import org.osgi.service.blueprint.reflect.BeanMetadata;
+import org.osgi.service.blueprint.reflect.ComponentMetadata;
+import org.osgi.service.blueprint.reflect.Metadata;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+
+public class NSHandlerThree implements NamespaceHandler{
+ public static String NSURI = "http://ns.handler.three";
+
+ private static String ELT_NAME = "nshandlerthree";
+ private static String ATTRIB_ONE = "attribone";
+ private static String ATTRIB_TWO = "attribtwo";
+
+ public ComponentMetadata decorate(Node node, ComponentMetadata component,
+ ParserContext context) {
+ if(node.getLocalName().equals(ATTRIB_ONE)){
+ if(component instanceof BeanMetadata){
+ if(context.getComponentDefinitionRegistry().getComponentDefinition(NSURI+"/BeanProcessor")==null){
+ BeanMetadata bm = context.createMetadata(BeanMetadata.class);
+ MutableBeanMetadata mbm = (MutableBeanMetadata)bm;
+ mbm.setProcessor(true);
+ mbm.setRuntimeClass(BeanProcessorTest.class);
+ mbm.setScope(BeanMetadata.SCOPE_SINGLETON);
+ mbm.setId(NSURI+"/BeanProcessor");
+ context.getComponentDefinitionRegistry().registerComponentDefinition(mbm);
+ }
+ }
+ }
+ return component;
+ }
+
+ //process elements
+ public Metadata parse(Element element, ParserContext context) {
+ return null;
+ }
+
+ //supply schema back to blueprint.
+ public URL getSchemaLocation(String namespace) {
+ return this.getClass().getResource("nshandlerthree.xsd");
+ }
+
+ public Set<Class> getManagedClasses() {
+ return null;
+ }
+
+}
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerThree.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java Wed Jan 6 06:05:04 2010
@@ -1,117 +1,117 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.blueprint.testbundlea;
-
-import java.lang.reflect.Method;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
-import org.apache.aries.blueprint.Interceptor;
-import org.apache.aries.blueprint.NamespaceHandler;
-import org.apache.aries.blueprint.ParserContext;
-import org.osgi.service.blueprint.reflect.ComponentMetadata;
-import org.osgi.service.blueprint.reflect.Metadata;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * A simple example namespace handler, that understands an element, and 2 attributes
- *
- * When attribone is found on a bean, an interceptor is added that will track invocations.
- *
- * This handler is designed to exercise aspects of the NamespaceHandler capability set.
- *
- */
-public class NSHandlerTwo implements NamespaceHandler{
-
- public static String NSURI = "http://ns.handler.two";
-
- private static String ELT_NAME = "nshandlertwo";
- private static String ATTRIB_ONE = "attribone";
- private static String ATTRIB_TWO = "attribtwo";
-
- private static List<String> interceptorLog = new ArrayList<String>();
-
- private static Interceptor tracker = new Interceptor() {
-
- public Object preCall(ComponentMetadata cm, Method m, Object... parameters)
- throws Throwable {
- String args = "[";
- if(parameters!=null){
- if(parameters.length>0){
- args+=parameters[0]==null ? "null" : parameters[0].toString();
- }
- for(int index=1; index<parameters.length; index++){
- args+=","+(parameters[index]==null ? "null" : parameters[index].toString());
- }
- }
- args+="]";
- String token = cm.getId() +":"+ m.getName() +":"+args+":"+System.currentTimeMillis();
- interceptorLog.add("PRECALL:"+token);
- return token;
- }
-
- public void postCallWithReturn(ComponentMetadata cm, Method m,
- Object returnType, Object preCallToken) throws Throwable {
- interceptorLog.add("POSTCALL["+returnType.toString()+"]:"+preCallToken);
- }
-
- public void postCallWithException(ComponentMetadata cm, Method m,
- Exception ex, Object preCallToken) throws Throwable {
- interceptorLog.add("POSTCALLEXCEPTION["+ex.toString()+"]:"+preCallToken);
- }
-
- public int getRank() {
- return 0;
- }
- };
-
- //
- public ComponentMetadata decorate(Node node, ComponentMetadata component,
- ParserContext context) {
-
- if(node.getLocalName().equals(ATTRIB_ONE)){
- if(context.getComponentDefinitionRegistry().getInterceptors(component) == null ||
- !context.getComponentDefinitionRegistry().getInterceptors(component).contains(tracker) ){
- context.getComponentDefinitionRegistry().registerInterceptorWithComponent(component, tracker);
- }
- }
- return component;
- }
-
- //process elements
- public Metadata parse(Element element, ParserContext context) {
- return null;
- }
-
- //supply schema back to blueprint.
- public URL getSchemaLocation(String namespace) {
- return this.getClass().getResource("nshandlertwo.xsd");
- }
-
- public Set<Class> getManagedClasses() {
- return null;
- }
-
- public List<String> getLog() {
- return Collections.unmodifiableList(interceptorLog);
- }
-
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.blueprint.testbundlea;
+
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.aries.blueprint.Interceptor;
+import org.apache.aries.blueprint.NamespaceHandler;
+import org.apache.aries.blueprint.ParserContext;
+import org.osgi.service.blueprint.reflect.ComponentMetadata;
+import org.osgi.service.blueprint.reflect.Metadata;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+
+/**
+ * A simple example namespace handler, that understands an element, and 2 attributes
+ *
+ * When attribone is found on a bean, an interceptor is added that will track invocations.
+ *
+ * This handler is designed to exercise aspects of the NamespaceHandler capability set.
+ *
+ */
+public class NSHandlerTwo implements NamespaceHandler{
+
+ public static String NSURI = "http://ns.handler.two";
+
+ private static String ELT_NAME = "nshandlertwo";
+ private static String ATTRIB_ONE = "attribone";
+ private static String ATTRIB_TWO = "attribtwo";
+
+ private static List<String> interceptorLog = new ArrayList<String>();
+
+ private static Interceptor tracker = new Interceptor() {
+
+ public Object preCall(ComponentMetadata cm, Method m, Object... parameters)
+ throws Throwable {
+ String args = "[";
+ if(parameters!=null){
+ if(parameters.length>0){
+ args+=parameters[0]==null ? "null" : parameters[0].toString();
+ }
+ for(int index=1; index<parameters.length; index++){
+ args+=","+(parameters[index]==null ? "null" : parameters[index].toString());
+ }
+ }
+ args+="]";
+ String token = cm.getId() +":"+ m.getName() +":"+args+":"+System.currentTimeMillis();
+ interceptorLog.add("PRECALL:"+token);
+ return token;
+ }
+
+ public void postCallWithReturn(ComponentMetadata cm, Method m,
+ Object returnType, Object preCallToken) throws Throwable {
+ interceptorLog.add("POSTCALL["+returnType.toString()+"]:"+preCallToken);
+ }
+
+ public void postCallWithException(ComponentMetadata cm, Method m,
+ Exception ex, Object preCallToken) throws Throwable {
+ interceptorLog.add("POSTCALLEXCEPTION["+ex.toString()+"]:"+preCallToken);
+ }
+
+ public int getRank() {
+ return 0;
+ }
+ };
+
+ //
+ public ComponentMetadata decorate(Node node, ComponentMetadata component,
+ ParserContext context) {
+
+ if(node.getLocalName().equals(ATTRIB_ONE)){
+ if(context.getComponentDefinitionRegistry().getInterceptors(component) == null ||
+ !context.getComponentDefinitionRegistry().getInterceptors(component).contains(tracker) ){
+ context.getComponentDefinitionRegistry().registerInterceptorWithComponent(component, tracker);
+ }
+ }
+ return component;
+ }
+
+ //process elements
+ public Metadata parse(Element element, ParserContext context) {
+ return null;
+ }
+
+ //supply schema back to blueprint.
+ public URL getSchemaLocation(String namespace) {
+ return this.getClass().getResource("nshandlertwo.xsd");
+ }
+
+ public Set<Class> getManagedClasses() {
+ return null;
+ }
+
+ public List<String> getLog() {
+ return Collections.unmodifiableList(interceptorLog);
+ }
+
+}
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/NSHandlerTwo.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java Wed Jan 6 06:05:04 2010
@@ -1,38 +1,38 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.blueprint.testbundlea;
-
-import java.util.List;
-
-import org.apache.aries.blueprint.BeanProcessor;
-
-/**
- * Simple little interface to allow testing of BeanProcessors.
- */
-public interface ProcessableBean {
- public enum Phase {BEFORE_INIT, AFTER_INIT, BEFORE_DESTROY, AFTER_DESTROY};
-
- List<BeanProcessor> getProcessedBy();
- List<BeanProcessor> getProcessedBy(Phase p);
-
- void processBeforeInit(BeanProcessor bp);
- void processAfterInit(BeanProcessor bp);
- void processBeforeDestroy(BeanProcessor bp);
- void processAfterDestroy(BeanProcessor bp);
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.blueprint.testbundlea;
+
+import java.util.List;
+
+import org.apache.aries.blueprint.BeanProcessor;
+
+/**
+ * Simple little interface to allow testing of BeanProcessors.
+ */
+public interface ProcessableBean {
+ public enum Phase {BEFORE_INIT, AFTER_INIT, BEFORE_DESTROY, AFTER_DESTROY};
+
+ List<BeanProcessor> getProcessedBy();
+ List<BeanProcessor> getProcessedBy(Phase p);
+
+ void processBeforeInit(BeanProcessor bp);
+ void processAfterInit(BeanProcessor bp);
+ void processBeforeDestroy(BeanProcessor bp);
+ void processAfterDestroy(BeanProcessor bp);
+}
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/java/org/apache/aries/blueprint/testbundlea/ProcessableBean.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml?rev=896324&r1=896323&r2=896324&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml (original)
+++ incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml Wed Jan 6 06:05:04 2010
@@ -1,50 +1,50 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You 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.
--->
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
- xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
- xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0">
-
- <bean id="NSHandlerOne" class="org.apache.aries.blueprint.testbundlea.NSHandlerOne">
- </bean>
-
- <bean id="NSHandlerTwo" class="org.apache.aries.blueprint.testbundlea.NSHandlerTwo">
- </bean>
-
- <bean id="NSHandlerThree" class="org.apache.aries.blueprint.testbundlea.NSHandlerThree">
- </bean>
-
- <service interface="org.apache.aries.blueprint.NamespaceHandler" ref="NSHandlerOne">
- <service-properties>
- <entry key="osgi.service.blueprint.namespace" value="http://ns.handler.one"/>
- </service-properties>
- </service>
-
- <service interface="org.apache.aries.blueprint.NamespaceHandler" ref="NSHandlerTwo">
- <service-properties>
- <entry key="osgi.service.blueprint.namespace" value="http://ns.handler.two"/>
- </service-properties>
- </service>
-
- <service interface="org.apache.aries.blueprint.NamespaceHandler" ref="NSHandlerThree">
- <service-properties>
- <entry key="osgi.service.blueprint.namespace" value="http://ns.handler.three"/>
- </service-properties>
- </service>
-
-</blueprint>
-
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+ xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
+ xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0">
+
+ <bean id="NSHandlerOne" class="org.apache.aries.blueprint.testbundlea.NSHandlerOne">
+ </bean>
+
+ <bean id="NSHandlerTwo" class="org.apache.aries.blueprint.testbundlea.NSHandlerTwo">
+ </bean>
+
+ <bean id="NSHandlerThree" class="org.apache.aries.blueprint.testbundlea.NSHandlerThree">
+ </bean>
+
+ <service interface="org.apache.aries.blueprint.NamespaceHandler" ref="NSHandlerOne">
+ <service-properties>
+ <entry key="osgi.service.blueprint.namespace" value="http://ns.handler.one"/>
+ </service-properties>
+ </service>
+
+ <service interface="org.apache.aries.blueprint.NamespaceHandler" ref="NSHandlerTwo">
+ <service-properties>
+ <entry key="osgi.service.blueprint.namespace" value="http://ns.handler.two"/>
+ </service-properties>
+ </service>
+
+ <service interface="org.apache.aries.blueprint.NamespaceHandler" ref="NSHandlerThree">
+ <service-properties>
+ <entry key="osgi.service.blueprint.namespace" value="http://ns.handler.three"/>
+ </service-properties>
+ </service>
+
+</blueprint>
+
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/OSGI-INF/blueprint/config.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlerone.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlerone.xsd
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlerone.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlerthree.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlerthree.xsd
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlerthree.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlertwo.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlertwo.xsd
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/blueprint/blueprint-testbundlea/src/main/resources/org/apache/aries/blueprint/testbundlea/nshandlertwo.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml