You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ff...@apache.org on 2013/11/11 05:20:27 UTC
svn commit: r1540607 - in /cxf/trunk/rt/frontend/jaxrs: pom.xml
src/main/java/org/apache/cxf/jaxrs/AbstractJAXRSFactoryBean.java
src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerFeature.java
Author: ffang
Date: Mon Nov 11 04:20:27 2013
New Revision: 1540607
URL: http://svn.apache.org/r1540607
Log:
[CXF-5379]mark swagger dependency as optional|use relative context path|remove potential concurrent thread issue
Modified:
cxf/trunk/rt/frontend/jaxrs/pom.xml
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/AbstractJAXRSFactoryBean.java
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerFeature.java
Modified: cxf/trunk/rt/frontend/jaxrs/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxrs/pom.xml?rev=1540607&r1=1540606&r2=1540607&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxrs/pom.xml (original)
+++ cxf/trunk/rt/frontend/jaxrs/pom.xml Mon Nov 11 04:20:27 2013
@@ -158,6 +158,7 @@
<dependency>
<groupId>com.wordnik</groupId>
<artifactId>swagger-jaxrs_2.10</artifactId>
+ <optional>true</optional>
</dependency>
</dependencies>
<build>
Modified: cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/AbstractJAXRSFactoryBean.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/AbstractJAXRSFactoryBean.java?rev=1540607&r1=1540606&r2=1540607&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/AbstractJAXRSFactoryBean.java (original)
+++ cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/AbstractJAXRSFactoryBean.java Mon Nov 11 04:20:27 2013
@@ -110,7 +110,6 @@ public class AbstractJAXRSFactoryBean ex
super.setBus(bus);
checkBindingFactory(bus);
serviceFactory.setBus(bus);
- bus.setProperty(JAXRSServiceFactoryBean.class.getName(), serviceFactory);
}
/*
@@ -205,7 +204,6 @@ public class AbstractJAXRSFactoryBean ex
*/
public void setServiceFactory(JAXRSServiceFactoryBean serviceFactory) {
this.serviceFactory = serviceFactory;
- getBus().setProperty(JAXRSServiceFactoryBean.class.getName(), serviceFactory);
}
protected Endpoint createEndpoint() throws BusException, EndpointException {
@@ -241,6 +239,7 @@ public class AbstractJAXRSFactoryBean ex
serviceFactory.sendEvent(FactoryBeanListener.Event.ENDPOINT_SELECTED, ei, ep,
cri.getServiceClass(), null);
}
+ ep.put(JAXRSServiceFactoryBean.class.getName(), serviceFactory);
return ep;
}
Modified: cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerFeature.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerFeature.java?rev=1540607&r1=1540606&r2=1540607&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerFeature.java (original)
+++ cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerFeature.java Mon Nov 11 04:20:27 2013
@@ -43,9 +43,9 @@ public class SwaggerFeature extends Abst
public void initialize(Server server, Bus bus) {
List<Object> serviceBeans = new ArrayList<Object>();
serviceBeans.add(new com.wordnik.swagger.jaxrs.listing.ApiListingResourceJSON());
- calulateDefaultResourcePackage(bus);
+ calulateDefaultResourcePackage(server);
calulateDefaultBasePath(server);
- ((JAXRSServiceFactoryBean)bus.getProperty(JAXRSServiceFactoryBean.class.getName())).
+ ((JAXRSServiceFactoryBean)server.getEndpoint().get(JAXRSServiceFactoryBean.class.getName())).
setResourceClassesFromBeans(serviceBeans);
List<Object> providers = new ArrayList<Object>();
providers.add(new com.wordnik.swagger.jaxrs.listing.ResourceListingProvider());
@@ -63,9 +63,9 @@ public class SwaggerFeature extends Abst
beanConfig.setScan(isScan());
initializeProvider(server.getEndpoint(), bus);
}
- private void calulateDefaultResourcePackage(Bus bus) {
+ private void calulateDefaultResourcePackage(Server server) {
JAXRSServiceFactoryBean serviceFactoryBean =
- (JAXRSServiceFactoryBean)bus.getProperty(JAXRSServiceFactoryBean.class.getName());
+ (JAXRSServiceFactoryBean)server.getEndpoint().get(JAXRSServiceFactoryBean.class.getName());
AbstractResourceInfo resourceInfo = serviceFactoryBean.getClassResourceInfo().get(0);
if ((resourceInfo != null)
@@ -76,13 +76,7 @@ public class SwaggerFeature extends Abst
private void calulateDefaultBasePath(Server server) {
String address = server.getEndpoint().getEndpointInfo().getAddress();
- if (getBasePath() == null || getBasePath().length() == 0) {
- if (address.startsWith("http")) {
- setBasePath(address + "/api-docs");
- } else {
- setBasePath("http://localhost:8181/cxf" + address + "/api-docs");
- }
- }
+ setBasePath(address + "/api-docs");
}
public String getResourcePackage() {
return resourcePackage;