Author: davsclaus
Date: Fri Apr 27 15:21:30 2012
New Revision: 1331467
URL: http://svn.apache.org/viewvc?rev=1331467&view=rev
Log:
CAMEL-5217: Allow to customize bundle filter. Thanks to Jean-Baptiste Defard
for the patch.
Modified:
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java
Modified:
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java?rev=1331467&r1=1331466&r2=1331467&view=diff
==============================================================================
---
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java
(original)
+++
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java
Fri Apr 27 15:21:30 2012
@@ -66,6 +66,7 @@ import static org.apache.camel.test.juni
public final class CamelBlueprintHelper {
public static final long DEFAULT_TIMEOUT = 30000;
+ public static final String BUNDLE_FILTER = "(Bundle-SymbolicName=*)";
private static final transient Logger LOG =
LoggerFactory.getLogger(CamelBlueprintHelper.class);
private static final ClassResolver RESOLVER = new DefaultClassResolver();
@@ -73,6 +74,10 @@ public final class CamelBlueprintHelper
}
public static BundleContext createBundleContext(String name, String
descriptors, boolean includeTestBundle) throws Exception {
+ return createBundleContext(name, descriptors, BUNDLE_FILTER,
includeTestBundle);
+ }
+
+ public static BundleContext createBundleContext(String name, String
descriptors, String bundleFilter, boolean includeTestBundle) throws Exception {
deleteDirectory("target/bundles");
createDirectory("target/bundles");
@@ -80,7 +85,7 @@ public final class CamelBlueprintHelper
System.setProperty("org.osgi.framework.storage", "target/bundles/" +
System.currentTimeMillis());
// get the bundles
- List<BundleDescriptor> bundles = getBundleDescriptors();
+ List<BundleDescriptor> bundles = getBundleDescriptors(bundleFilter);
if (includeTestBundle) {
// add ourselves as a bundle
@@ -199,12 +204,13 @@ public final class CamelBlueprintHelper
/**
* Gets list of bundle descriptors.
+ * @param bundleFilter Filter expression for OSGI bundles.
*
* @return List pointers to OSGi bundles.
* @throws Exception If looking up the bundles fails.
*/
- private static List<BundleDescriptor> getBundleDescriptors() throws
Exception {
- return new
ClasspathScanner().scanForBundles("(Bundle-SymbolicName=*)");
+ private static List<BundleDescriptor> getBundleDescriptors(final String
bundleFilter) throws Exception {
+ return new ClasspathScanner().scanForBundles(bundleFilter);
}
/**
Modified:
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java?rev=1331467&r1=1331466&r2=1331467&view=diff
==============================================================================
---
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java
(original)
+++
camel/trunk/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java
Fri Apr 27 15:21:30 2012
@@ -32,7 +32,7 @@ public abstract class CamelBlueprintTest
@Before
@Override
public void setUp() throws Exception {
- bundleContext =
CamelBlueprintHelper.createBundleContext(getClass().getSimpleName(),
getBlueprintDescriptor(), true);
+ this.bundleContext =
CamelBlueprintHelper.createBundleContext(getClass().getSimpleName(),
getBlueprintDescriptor(), getBundleFilter(), true);
super.setUp();
}
@@ -57,6 +57,16 @@ public abstract class CamelBlueprintTest
return null;
}
+ /**
+ * Gets filter expression of bundle descriptors. Modify this method if you
wish to change
+ * default behavior.
+ *
+ * @return filter expression for OSGi bundles.
+ */
+ protected String getBundleFilter() {
+ return CamelBlueprintHelper.BUNDLE_FILTER;
+ }
+
@Override
protected CamelContext createCamelContext() throws Exception {
return CamelBlueprintHelper.getOsgiService(bundleContext,
CamelContext.class);