mirror of https://github.com/apache/activemq.git
https://issues.apache.org/jira/browse/AMQ-4341 - apply patch from ioannis with thanks
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1450550 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
2468be18fa
commit
30b20b3f38
|
@ -18,6 +18,7 @@ package org.apache.activemq.karaf.itest;
|
|||
|
||||
import org.apache.felix.service.command.CommandProcessor;
|
||||
import org.apache.felix.service.command.CommandSession;
|
||||
import org.apache.karaf.features.FeaturesService;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.openengsb.labs.paxexam.karaf.options.KarafDistributionOption;
|
||||
|
@ -47,6 +48,7 @@ import java.util.concurrent.TimeUnit;
|
|||
import static org.openengsb.labs.paxexam.karaf.options.KarafDistributionOption.karafDistributionConfiguration;
|
||||
import static org.openengsb.labs.paxexam.karaf.options.KarafDistributionOption.replaceConfigurationFile;
|
||||
import static org.ops4j.pax.exam.CoreOptions.*;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
public abstract class AbstractFeatureTest {
|
||||
|
||||
|
@ -69,6 +71,9 @@ public abstract class AbstractFeatureTest {
|
|||
@Inject
|
||||
protected BundleContext bundleContext;
|
||||
|
||||
@Inject
|
||||
FeaturesService featuresService;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
}
|
||||
|
@ -127,6 +132,18 @@ public abstract class AbstractFeatureTest {
|
|||
return executeCommand(command, COMMAND_TIMEOUT, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* Installs a feature and asserts that feature is properly installed.
|
||||
* @param feature
|
||||
* @throws Exception
|
||||
*/
|
||||
public void installAndAssertFeature(String feature) throws Exception {
|
||||
System.err.println(executeCommand("features:install " + feature));
|
||||
System.err.println(executeCommand("osgi:list -t 0"));
|
||||
assertTrue("Expected " + feature + " feature to be installed.", featuresService.isInstalled(featuresService.getFeature(feature)));
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static String karafVersion() {
|
||||
return System.getProperty("karafVersion", "2.3.0");
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
/**
|
||||
* 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.activemq.karaf.itest;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.ops4j.pax.exam.Option;
|
||||
import org.ops4j.pax.exam.junit.Configuration;
|
||||
import org.ops4j.pax.exam.junit.JUnit4TestRunner;
|
||||
|
||||
|
||||
@RunWith(JUnit4TestRunner.class)
|
||||
public class ObrFeatureTest extends AbstractFeatureTest {
|
||||
|
||||
@Configuration
|
||||
public static Option[] configure() {
|
||||
return configure("obr");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testClient() throws Throwable {
|
||||
installAndAssertFeature("activemq-client");
|
||||
}
|
||||
|
||||
//@Test
|
||||
public void testBroker() throws Throwable {
|
||||
installAndAssertFeature("activemq-broker");
|
||||
}
|
||||
}
|
|
@ -22,19 +22,22 @@
|
|||
|
||||
<!-- Bundles needed if only client will be deployed in the container -->
|
||||
<feature name="activemq-client" description="ActiveMQ client libraries" version="${project.version}" resolver="(obr)" start-level="50">
|
||||
<bundle>mvn:org.apache.activemq/activemq-osgi/${project.version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-j2ee-management_1.1_spec/1.0.1</bundle>
|
||||
<bundle dependency="true">mvn:commons-pool/commons-pool/${commons-pool-version}</bundle>
|
||||
<bundle dependency="true">mvn:commons-net/commons-net/${commons-net-version}</bundle>
|
||||
<!-- uber osgi bundle means client is not that lean, todo: introduce client osgi bundle -->
|
||||
<feature version="[3,4)">spring</feature>
|
||||
<bundle dependency="true">mvn:org.apache.xbean/xbean-spring/${xbean-version}</bundle>
|
||||
<bundle>mvn:org.apache.activemq/activemq-osgi/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<!-- All bundles needed by the broker -->
|
||||
<feature name="activemq" description="ActiveMQ broker libraries" version="${project.version}" resolver="(obr)" start-level="50">
|
||||
<feature>jetty</feature>
|
||||
<feature>spring-dm</feature>
|
||||
<feature version="${project.version}">activemq-client</feature>
|
||||
<bundle dependency="true">mvn:commons-collections/commons-collections/${commons-collections-version}</bundle>
|
||||
<bundle dependency='true'>mvn:commons-lang/commons-lang/${commons-lang-version}</bundle>
|
||||
|
@ -44,14 +47,17 @@
|
|||
<bundle dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.stax-api-1.0/${servicemix.specs.version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xpp3/${xpp3-bundle-version}</bundle>
|
||||
<bundle dependency="true">mvn:joda-time/joda-time/${jodatime-bundle-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jdom/${jdom-bundle-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/${dom4j-bundle-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xstream/${xstream-bundle-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.snappy-java/${snappy-bundle-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.aries.transaction/org.apache.aries.transaction.manager/${aries-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-j2ee-connector_1.5_spec/2.0.0</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.aries/org.apache.aries.util/${aries-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.apache.activemq/activeio-core/${activeio-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.codehaus.jettison/jettison/${jettison-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.codehaus.jackson/jackson-core-asl/${jackson-version}</bundle>
|
||||
<bundle dependency="true">mvn:org.codehaus.jackson/jackson-mapper-asl/${jackson-version}</bundle>
|
||||
<bundle>mvn:org.apache.activemq/activemq-karaf/${project.version}</bundle>
|
||||
<bundle dependency="true">mvn:org.scala-lang/scala-library/${scala-version}</bundle>
|
||||
<feature version="${project.version}">activemq-http</feature>
|
||||
</feature>
|
||||
|
||||
<!-- Starts the broker with default configuration and web console -->
|
||||
|
@ -62,19 +68,6 @@
|
|||
<feature version="${project.version}">activemq-web-console</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="activemq-http" version="${project.version}" resolver="(obr)" start-level="50">
|
||||
<feature>jetty</feature>
|
||||
<bundle>mvn:org.apache.activemq/activemq-http/${project.version}</bundle>
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.josql/${josql-version}</bundle>
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlresolver/${xmlresolver-bundle-version}</bundle>
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saxon/${saxon-bundle-version}</bundle>
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/${ant-bundle-version}</bundle>
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlbeans/${xmlbeans-bundle-version}</bundle>
|
||||
<bundle>mvn:org.apache.httpcomponents/httpcore-osgi/${httpclient-version}</bundle>
|
||||
<bundle>mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient-version}</bundle>
|
||||
<bundle>mvn:javax.jmdns/jmdns/${jmdns-version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="activemq-camel" version="${project.version}" resolver="(obr)" start-level="50">
|
||||
<feature version="${project.version}">activemq-client</feature>
|
||||
<feature version="${camel-version-range}">camel-jms</feature>
|
||||
|
|
|
@ -111,7 +111,6 @@
|
|||
<groupId>org.iq80.snappy</groupId>
|
||||
<artifactId>snappy</artifactId>
|
||||
<version>0.2</version>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.jackson</groupId>
|
||||
|
|
|
@ -32,13 +32,50 @@
|
|||
|
||||
<properties>
|
||||
<activemq.osgi.import.pkg>
|
||||
|
||||
!org.apache.commons.daemon,
|
||||
!org.apache.maven*,
|
||||
sun.misc*;resolution:=optional,
|
||||
sun.nio*;resolution:=optional,
|
||||
javax.jmdns*;resolution:=optional,
|
||||
javax.resource*;resolution:=optional,
|
||||
javax.servlet*;resolution:=optional,
|
||||
com.thoughtworks.xstream*;resolution:=optional,
|
||||
org.apache.activeio*;resolution:=optional,
|
||||
org.apache.camel*;resolution:=optional,
|
||||
org.apache.derby.jdbc*;resolution:=optional,
|
||||
org.apache.geronimo.transaction.manager*;resolution:=optional,
|
||||
org.apache.hadoop*;resolution:=optional,
|
||||
org.apache.http*;resolution:=optional,
|
||||
org.apache.xpath*;resolution:=optional,
|
||||
org.bouncycastle*;resolution:=optional,
|
||||
org.codehaus.jackson*;resolution:=optional,
|
||||
org.codehaus.jettison*;resolution:=optional,
|
||||
org.jasypt*;resolution:=optional,
|
||||
org.eclipse.jetty*;resolution:=optional,
|
||||
org.springframework.jms*;version="[3,4]";resolution:=optional,
|
||||
org.springframework.osgi*;version="[3,4]";resolution:=optional,
|
||||
org.springframework.transaction*;version="[3,4]";resolution:=optional,
|
||||
org.xmlpull*;resolution:=optional,
|
||||
scala*;resolution:=optional,
|
||||
javax.annotation*,
|
||||
javax.jms*,
|
||||
javax.management
|
||||
javax.transaction*,
|
||||
org.apache.commons.pool*,
|
||||
org.apache.commons.net*,
|
||||
org.apache.xbean.spring*,
|
||||
org.springframework*;version="[3,4]";resolution:=optional,
|
||||
*
|
||||
</activemq.osgi.import.pkg>
|
||||
<activemq.osgi.export>
|
||||
org.apache.activemq*;version=${project.version};-noimport:=true;-split-package:=merge-first,
|
||||
org.iq80*;-noimport:=true;-split-package:=merge-first,
|
||||
org.fusesource*;-noimport:=true;-split-package:=merge-first
|
||||
</activemq.osgi.export>
|
||||
<activemq.osgi.private.pkg>
|
||||
org.fusesource*,
|
||||
org.apache.qpid*,
|
||||
com.google.common*,
|
||||
org.iq80*
|
||||
</activemq.osgi.private.pkg>
|
||||
<activemq.osgi.dynamic.import>*</activemq.osgi.dynamic.import>
|
||||
<surefire.argLine>-Xmx512M</surefire.argLine>
|
||||
</properties>
|
||||
|
|
1
pom.xml
1
pom.xml
|
@ -104,6 +104,7 @@
|
|||
<scala-version>2.10.0</scala-version>
|
||||
<scalatest-version>1.8</scalatest-version>
|
||||
<slf4j-version>1.6.6</slf4j-version>
|
||||
<snappy-bundle-version>1.0.4.1_1</snappy-bundle-version>
|
||||
<spring-version>3.1.3.RELEASE</spring-version>
|
||||
<spring-osgi-version>1.2.1</spring-osgi-version>
|
||||
<spring-oxm-version>1.5.10</spring-oxm-version>
|
||||
|
|
Loading…
Reference in New Issue