You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2009/03/05 13:11:15 UTC
svn commit: r750435 - in /camel/trunk:
camel-core/src/main/java/org/apache/camel/impl/
camel-core/src/main/java/org/apache/camel/util/
camel-core/src/test/java/org/apache/camel/component/direct/
camel-core/src/test/java/org/apache/camel/component/file/...
Author: davsclaus
Date: Thu Mar 5 12:11:15 2009
New Revision: 750435
URL: http://svn.apache.org/viewvc?rev=750435&view=rev
Log:
CAMEL-1404: Polished SPI for package resolver. Removed @deprecated classes.
Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java (with props)
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java (with props)
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java (with props)
camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectShouldUseSameThreadTest.java
- copied, changed from r750405, camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectNoToTypeTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java (with props)
camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java (contents, props changed)
- copied, changed from r750405, camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiResolverUtilTest.java
Removed:
camel/trunk/camel-core/src/main/java/org/apache/camel/util/ResolverUtil.java
camel/trunk/camel-core/src/main/java/org/apache/camel/util/WebSphereResolverUtil.java
camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiResolverUtilTest.java
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultPackageScanClassResolver.java
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/WebSpherePacakageScanClassResolver.java
camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumerCommitRenameStrategyTest.java
Added: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java?rev=750435&view=auto
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java (added)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java Thu Mar 5 12:11:15 2009
@@ -0,0 +1,58 @@
+/**
+ * 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.camel.impl;
+
+import java.lang.annotation.Annotation;
+import java.util.Set;
+
+import org.apache.camel.spi.PackageScanFilter;
+import org.apache.camel.util.ObjectHelper;
+
+/**
+ * Package scan filter for testing if a given class is annotated with any of the annotations.
+ */
+public class AnnotatedWithAnyPackageScanFilter implements PackageScanFilter {
+ private Set<Class<? extends Annotation>> annotations;
+ private boolean checkMetaAnnotations;
+
+ public AnnotatedWithAnyPackageScanFilter(Set<Class<? extends Annotation>> annotations) {
+ this(annotations, false);
+ }
+
+ public AnnotatedWithAnyPackageScanFilter(Set<Class<? extends Annotation>> annotations, boolean checkMetaAnnotations) {
+ this.annotations = annotations;
+ this.checkMetaAnnotations = checkMetaAnnotations;
+ }
+
+ public boolean matches(Class type) {
+ if (type == null) {
+ return false;
+ }
+ for (Class<? extends Annotation> annotation : annotations) {
+ if (ObjectHelper.hasAnnotation(type, annotation, checkMetaAnnotations)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @Override
+ public String toString() {
+ return "annotated with any @[" + annotations + "]";
+ }
+
+}
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithAnyPackageScanFilter.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java?rev=750435&view=auto
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java (added)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java Thu Mar 5 12:11:15 2009
@@ -0,0 +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.camel.impl;
+
+import java.lang.annotation.Annotation;
+
+import org.apache.camel.spi.PackageScanFilter;
+import org.apache.camel.util.ObjectHelper;
+
+/**
+ * Package scan filter for testing if a given class is annotated with a certain annotation.
+ */
+public class AnnotatedWithPackageScanFilter implements PackageScanFilter {
+
+ private Class<? extends Annotation> annotation;
+ private boolean checkMetaAnnotations;
+
+ public AnnotatedWithPackageScanFilter(Class<? extends Annotation> annotation) {
+ this(annotation, false);
+ }
+
+ public AnnotatedWithPackageScanFilter(Class<? extends Annotation> annotation, boolean checkMetaAnnotations) {
+ this.annotation = annotation;
+ this.checkMetaAnnotations = checkMetaAnnotations;
+ }
+
+ public boolean matches(Class type) {
+ return type != null && ObjectHelper.hasAnnotation(type, annotation, checkMetaAnnotations);
+ }
+
+ @Override
+ public String toString() {
+ return "annotated with @" + annotation.getSimpleName();
+ }
+}
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AnnotatedWithPackageScanFilter.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java?rev=750435&view=auto
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java (added)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java Thu Mar 5 12:11:15 2009
@@ -0,0 +1,39 @@
+/**
+ * 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.camel.impl;
+
+import org.apache.camel.spi.PackageScanFilter;
+
+/**
+ * Package scan filter for testing if a given class is assignable to another class.
+ */
+public class AssignableToPackageScanFilter implements PackageScanFilter {
+ private Class parent;
+
+ public AssignableToPackageScanFilter(Class parentType) {
+ this.parent = parentType;
+ }
+
+ public boolean matches(Class type) {
+ return type != null && parent.isAssignableFrom(type);
+ }
+
+ @Override
+ public String toString() {
+ return "is assignable to " + parent.getSimpleName();
+ }
+}
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/AssignableToPackageScanFilter.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultPackageScanClassResolver.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultPackageScanClassResolver.java?rev=750435&r1=750434&r2=750435&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultPackageScanClassResolver.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultPackageScanClassResolver.java Thu Mar 5 12:11:15 2009
@@ -44,81 +44,6 @@
*/
public class DefaultPackageScanClassResolver implements PackageScanClassResolver {
- public static class IsA implements PackageScanFilter {
- private Class parent;
-
- public IsA(Class parentType) {
- this.parent = parentType;
- }
-
- public boolean matches(Class type) {
- return type != null && parent.isAssignableFrom(type);
- }
-
- @Override
- public String toString() {
- return "is assignable to " + parent.getSimpleName();
- }
- }
-
- public static class AnnotatedWith implements PackageScanFilter {
- private Class<? extends Annotation> annotation;
- private boolean checkMetaAnnotations;
-
- public AnnotatedWith(Class<? extends Annotation> annotation) {
- this(annotation, false);
- }
-
- public AnnotatedWith(Class<? extends Annotation> annotation, boolean checkMetaAnnotations) {
- this.annotation = annotation;
- this.checkMetaAnnotations = checkMetaAnnotations;
- }
-
- public boolean matches(Class type) {
- return type != null && ObjectHelper.hasAnnotation(type, annotation, checkMetaAnnotations);
- }
-
- @Override
- public String toString() {
- return "annotated with @" + annotation.getSimpleName();
- }
- }
-
- /**
- * A Test that checks to see if each class is annotated with a specific
- * annotation. If it is, then the test returns true, otherwise false.
- */
- public static class AnnotatedWithAny implements PackageScanFilter {
- private Set<Class<? extends Annotation>> annotations;
- private boolean checkMetaAnnotations;
-
- public AnnotatedWithAny(Set<Class<? extends Annotation>> annotations) {
- this(annotations, false);
- }
-
- public AnnotatedWithAny(Set<Class<? extends Annotation>> annotations, boolean checkMetaAnnotations) {
- this.annotations = annotations;
- this.checkMetaAnnotations = checkMetaAnnotations;
- }
-
- public boolean matches(Class type) {
- if (type == null) {
- return false;
- }
- for (Class<? extends Annotation> annotation : annotations) {
- if (ObjectHelper.hasAnnotation(type, annotation, checkMetaAnnotations)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public String toString() {
- return "annotated with any @[" + annotations + "]";
- }
- }
-
protected static final transient Log LOG = LogFactory.getLog(DefaultPackageScanClassResolver.class);
private Set<ClassLoader> classLoaders;
@@ -152,7 +77,7 @@
LOG.debug("Searching for annotations of " + annotation.getName() + " in packages: " + Arrays.asList(packageNames));
}
- PackageScanFilter test = new AnnotatedWith(annotation, true);
+ PackageScanFilter test = new AnnotatedWithPackageScanFilter(annotation, true);
Set<Class> classes = new LinkedHashSet<Class>();
for (String pkg : packageNames) {
find(test, pkg, classes);
@@ -175,7 +100,7 @@
LOG.debug("Searching for annotations of " + annotations + " in packages: " + Arrays.asList(packageNames));
}
- PackageScanFilter test = new AnnotatedWithAny(annotations, true);
+ PackageScanFilter test = new AnnotatedWithAnyPackageScanFilter(annotations, true);
Set<Class> classes = new LinkedHashSet<Class>();
for (String pkg : packageNames) {
find(test, pkg, classes);
@@ -198,7 +123,7 @@
LOG.debug("Searching for implementations of " + parent.getName() + " in packages: " + Arrays.asList(packageNames));
}
- PackageScanFilter test = new IsA(parent);
+ PackageScanFilter test = new AssignableToPackageScanFilter(parent);
Set<Class> classes = new LinkedHashSet<Class>();
for (String pkg : packageNames) {
find(test, pkg, classes);
@@ -325,7 +250,7 @@
/**
* Strategy to get the resources by the given classloader.
* <p/>
- * Notice that in WebSphere platforms there is a {@link org.apache.camel.util.WebSphereResolverUtil}
+ * Notice that in WebSphere platforms there is a {@link WebSpherePacakageScanClassResolver}
* to take care of WebSphere's odditiy of resource loading.
*
* @param loader the classloader
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/WebSpherePacakageScanClassResolver.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/WebSpherePacakageScanClassResolver.java?rev=750435&r1=750434&r2=750435&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/WebSpherePacakageScanClassResolver.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/WebSpherePacakageScanClassResolver.java Thu Mar 5 12:11:15 2009
@@ -67,7 +67,7 @@
// Special WebSphere trick to load a file that exists in the JAR and then let it go from there.
// The trick is that we just need the URL's for the .jars that contains the type
// converters that is annotated. So by searching for this resource WebSphere is able to find
- // it and return the URL to the .jar file with the resource. Then the default ResolverUtil
+ // it and return the URL to the .jar file with the resource. Then the DefaultPackageScanClassResolver
// can take it from there and find the classes that are annotated.
enumeration = loader.getResources(resourcePath);
}
Copied: camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectShouldUseSameThreadTest.java (from r750405, camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectNoToTypeTest.java)
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectShouldUseSameThreadTest.java?p2=camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectShouldUseSameThreadTest.java&p1=camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectNoToTypeTest.java&r1=750405&r2=750435&rev=750435&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectNoToTypeTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/component/direct/DirectShouldUseSameThreadTest.java Thu Mar 5 12:11:15 2009
@@ -20,28 +20,44 @@
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
/**
- * Simple unit test based on user forum question.
+ * Unit test to verify continuing using same thread on the consumer side.
*/
-public class DirectNoToTypeTest extends ContextTestSupport {
+public class DirectShouldUseSameThreadTest extends ContextTestSupport {
- public void testNoToType() throws Exception {
- Object response = template.requestBody("direct:in", "Hello");
- assertEquals("Hello World", response);
+ private static long id;
+
+ public void testUseSameThread() throws Exception {
+ MockEndpoint mock = getMockEndpoint("mock:result");
+ mock.expectedBodiesReceived("Hello World");
+
+ template.sendBody("direct:start", "Hello World");
+
+ assertMockEndpointsSatisfied();
}
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
public void configure() throws Exception {
- from("direct:in").process(new Processor() {
+ final ThreadLocal<String> local = new ThreadLocal<String>();
+
+ from("direct:start").process(new Processor() {
+ public void process(Exchange exchange) throws Exception {
+ local.set("Hello");
+ id = Thread.currentThread().getId();
+ }
+ }).to("direct:foo");
+
+ from("direct:foo").process(new Processor() {
public void process(Exchange exchange) throws Exception {
- String body = exchange.getIn().getBody(String.class);
- exchange.getOut(true).setBody(body + " World");
+ assertEquals("Hello", local.get());
+ assertEquals(id, Thread.currentThread().getId());
}
- });
+ }).to("mock:result");
}
};
}
-}
+}
\ No newline at end of file
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumerCommitRenameStrategyTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumerCommitRenameStrategyTest.java?rev=750435&r1=750434&r2=750435&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumerCommitRenameStrategyTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumerCommitRenameStrategyTest.java Thu Mar 5 12:11:15 2009
@@ -67,7 +67,7 @@
mock.assertIsSatisfied();
// sleep to let the file consumer do its renaming
- Thread.sleep(100);
+ Thread.sleep(200);
// content of file should be Hello London
String content = IOConverter.toString(new File("./target/done/london.txt"));
Added: camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java?rev=750435&view=auto
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java (added)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java Thu Mar 5 12:11:15 2009
@@ -0,0 +1,63 @@
+/**
+ * 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.camel.component.seda;
+
+import org.apache.camel.ContextTestSupport;
+import org.apache.camel.Exchange;
+import org.apache.camel.Processor;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+
+/**
+ * Unit test to verify continuing using NOT same thread on the consumer side.
+ */
+public class SedaShouldNotUseSameThreadTest extends ContextTestSupport {
+
+ private static long id;
+
+ public void testNotUseSameThread() throws Exception {
+ MockEndpoint mock = getMockEndpoint("mock:result");
+ mock.expectedBodiesReceived("Hello World");
+
+ template.sendBody("direct:start", "Hello World");
+
+ assertMockEndpointsSatisfied();
+ }
+
+ protected RouteBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ public void configure() throws Exception {
+ final ThreadLocal<String> local = new ThreadLocal<String>();
+
+ from("direct:start").process(new Processor() {
+ public void process(Exchange exchange) throws Exception {
+ local.set("Hello");
+ id = Thread.currentThread().getId();
+ }
+ }).to("seda:foo");
+
+ from("seda:foo").process(new Processor() {
+ public void process(Exchange exchange) throws Exception {
+ assertEquals(null, local.get());
+ assertNotSame("Thead is should not be same", id, Thread.currentThread().getId());
+ }
+ }).to("mock:result");
+ }
+ };
+ }
+
+}
\ No newline at end of file
Propchange: camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/camel-core/src/test/java/org/apache/camel/component/seda/SedaShouldNotUseSameThreadTest.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Copied: camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java (from r750405, camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiResolverUtilTest.java)
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java?p2=camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java&p1=camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiResolverUtilTest.java&r1=750405&r2=750435&rev=750435&view=diff
==============================================================================
--- camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiResolverUtilTest.java (original)
+++ camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java Thu Mar 5 12:11:15 2009
@@ -25,7 +25,7 @@
import org.apache.camel.osgi.test.MyTypeConverter;
import org.osgi.framework.BundleContext;
-public class OsgiResolverUtilTest extends CamelOsgiTestSupport {
+public class OsgiPackageScanClassResolverTest extends CamelOsgiTestSupport {
public void testOsgiResolverFindAnnotatedTest() throws IOException {
BundleContext context = getActivator().getBundle().getBundleContext();
OsgiPackageScanClassResolver resolver = new OsgiPackageScanClassResolver(context);
Propchange: camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java
------------------------------------------------------------------------------
svn:keywords = Rev Date