You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2018/10/05 14:24:11 UTC

[2/4] syncope git commit: [SYNCOPE-1376] Use absolute path but no protocol, host or port

[SYNCOPE-1376] Use absolute path but no protocol, host or port


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/2791f74f
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/2791f74f
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/2791f74f

Branch: refs/heads/2_1_X
Commit: 2791f74fceabc047f08436723403afe2be1e413a
Parents: 8611156
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Fri Oct 5 16:22:31 2018 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Fri Oct 5 16:22:31 2018 +0200

----------------------------------------------------------------------
 .../core/rest/cxf/SyncopeOpenApiCustomizer.java    | 17 +++++++++++++++++
 .../rest-cxf/src/main/resources/restCXFContext.xml |  2 +-
 .../src/main/resources/jboss/restCXFContext.xml    |  2 +-
 3 files changed, 19 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/2791f74f/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/SyncopeOpenApiCustomizer.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/SyncopeOpenApiCustomizer.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/SyncopeOpenApiCustomizer.java
index c3134b6..69adcbb 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/SyncopeOpenApiCustomizer.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/SyncopeOpenApiCustomizer.java
@@ -19,6 +19,7 @@
 package org.apache.syncope.core.rest.cxf;
 
 import io.swagger.v3.jaxrs2.Reader;
+import io.swagger.v3.oas.integration.api.OpenAPIConfiguration;
 import io.swagger.v3.oas.models.OpenAPI;
 import io.swagger.v3.oas.models.Operation;
 import io.swagger.v3.oas.models.PathItem;
@@ -30,6 +31,7 @@ import io.swagger.v3.oas.models.parameters.HeaderParameter;
 import io.swagger.v3.oas.models.parameters.Parameter;
 import io.swagger.v3.oas.models.responses.ApiResponse;
 import io.swagger.v3.oas.models.responses.ApiResponses;
+import io.swagger.v3.oas.models.servers.Server;
 import io.swagger.v3.oas.models.tags.Tag;
 import java.net.URL;
 import java.util.ArrayList;
@@ -41,10 +43,12 @@ import java.util.Map;
 import java.util.Optional;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.tuple.Pair;
+import org.apache.cxf.jaxrs.ext.MessageContext;
 import org.apache.cxf.jaxrs.model.ClassResourceInfo;
 import org.apache.cxf.jaxrs.model.OperationResourceInfo;
 import org.apache.cxf.jaxrs.model.doc.JavaDocProvider;
 import org.apache.cxf.jaxrs.openapi.OpenApiCustomizer;
+import org.apache.cxf.jaxrs.utils.JAXRSUtils;
 import org.apache.syncope.common.lib.SyncopeConstants;
 import org.apache.syncope.common.lib.to.ErrorTO;
 import org.apache.syncope.common.rest.api.RESTHeaders;
@@ -90,6 +94,19 @@ public class SyncopeOpenApiCustomizer extends OpenApiCustomizer {
     }
 
     @Override
+    public OpenAPIConfiguration customize(final OpenAPIConfiguration configuration) {
+        super.customize(configuration);
+
+        MessageContext ctx = JAXRSUtils.createContextValue(
+                JAXRSUtils.getCurrentMessage(), null, MessageContext.class);
+
+        String url = StringUtils.substringBeforeLast(ctx.getUriInfo().getRequestUri().getRawPath(), "/");
+        configuration.getOpenAPI().setServers(Collections.singletonList(new Server().url(url)));
+
+        return configuration;
+    }
+
+    @Override
     public void customize(final OpenAPI oas) {
         // remove this method with CXF 3.2.7
         if (replaceTags || javadocProvider != null) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/2791f74f/core/rest-cxf/src/main/resources/restCXFContext.xml
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/resources/restCXFContext.xml b/core/rest-cxf/src/main/resources/restCXFContext.xml
index b68b33f..b611a9b 100644
--- a/core/rest-cxf/src/main/resources/restCXFContext.xml
+++ b/core/rest-cxf/src/main/resources/restCXFContext.xml
@@ -115,7 +115,7 @@ under the License.
     <property name="bearerFormat" value="JWT"/>
   </bean>
   <bean id="openApiCustomizer" class="org.apache.syncope.core.rest.cxf.SyncopeOpenApiCustomizer">
-    <property name="dynamicBasePath" value="true"/>
+    <property name="dynamicBasePath" value="false"/>
     <property name="replaceTags" value="false"/>
   </bean>
   <bean id="openapiFeature" class="org.apache.cxf.jaxrs.openapi.OpenApiFeature">

http://git-wip-us.apache.org/repos/asf/syncope/blob/2791f74f/fit/core-reference/src/main/resources/jboss/restCXFContext.xml
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/main/resources/jboss/restCXFContext.xml b/fit/core-reference/src/main/resources/jboss/restCXFContext.xml
index 7bb4b94..044f926 100644
--- a/fit/core-reference/src/main/resources/jboss/restCXFContext.xml
+++ b/fit/core-reference/src/main/resources/jboss/restCXFContext.xml
@@ -122,7 +122,7 @@ under the License.
     <property name="bearerFormat" value="JWT"/>
   </bean>
   <bean id="openApiCustomizer" class="org.apache.syncope.core.rest.cxf.SyncopeOpenApiCustomizer">
-    <property name="dynamicBasePath" value="true"/>
+    <property name="dynamicBasePath" value="false"/>
     <property name="replaceTags" value="false"/>
     <property name="javaDocPaths">
       <list>