From a2cc9d3b187fe39abf790806c1f008193d319251 Mon Sep 17 00:00:00 2001 From: Mikko Tiihonen Date: Thu, 11 Dec 2014 16:49:55 +0200 Subject: [PATCH] Move runtime dependency to swagger in nflow-jetty to build time dependency in nflow-rest-api --- nflow-jetty/pom.xml | 4 -- .../nflow/jetty/StartNflow.java | 1 + .../jetty/config/NflowJettyConfiguration.java | 52 ++------------ .../src/main/resources/static/doc/index.html | 2 +- .../config/NflowJettyConfigurationTest.java | 29 +------- nflow-rest-api/pom.xml | 69 ++++++++++++++++++- .../nflow/tests/demo/DemoServer.java | 4 -- .../nflow/tests/runner/NflowServerRule.java | 2 +- pom.xml | 1 + 9 files changed, 80 insertions(+), 84 deletions(-) diff --git a/nflow-jetty/pom.xml b/nflow-jetty/pom.xml index 43b2c126f..c4b5ca4c9 100644 --- a/nflow-jetty/pom.xml +++ b/nflow-jetty/pom.xml @@ -138,10 +138,6 @@ org.springframework spring-web - - com.wordnik - swagger-jaxrs_2.10 - org.slf4j slf4j-api diff --git a/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/StartNflow.java b/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/StartNflow.java index 3922981b7..060a593a8 100644 --- a/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/StartNflow.java +++ b/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/StartNflow.java @@ -165,6 +165,7 @@ private ServletContextHandler setupServletContextHandler(String[] extraStaticRes logger.info("Static resources served from {}", resources); context.setBaseResource(new ResourceCollection(resources.toArray(new String[resources.size()]))); + context.setWelcomeFiles(new String[] { "index.html", "service.json" }); ServletHolder holder = new ServletHolder(new DefaultServlet()); holder.setInitParameter("dirAllowed", "false"); diff --git a/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/config/NflowJettyConfiguration.java b/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/config/NflowJettyConfiguration.java index bd493f2be..e90502609 100644 --- a/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/config/NflowJettyConfiguration.java +++ b/nflow-jetty/src/main/java/com/nitorcreations/nflow/jetty/config/NflowJettyConfiguration.java @@ -1,9 +1,7 @@ package com.nitorcreations.nflow.jetty.config; -import static com.nitorcreations.nflow.jetty.StartNflow.DEFAULT_HOST; -import static com.nitorcreations.nflow.jetty.StartNflow.DEFAULT_PORT; import static com.nitorcreations.nflow.rest.config.RestConfiguration.REST_OBJECT_MAPPER; -import static org.apache.commons.lang3.StringUtils.isEmpty; +import static java.util.Arrays.asList; import java.util.Arrays; @@ -47,10 +45,6 @@ import com.nitorcreations.nflow.rest.v1.WorkflowDefinitionResource; import com.nitorcreations.nflow.rest.v1.WorkflowExecutorResource; import com.nitorcreations.nflow.rest.v1.WorkflowInstanceResource; -import com.wordnik.swagger.jaxrs.config.BeanConfig; -import com.wordnik.swagger.jaxrs.listing.ApiDeclarationProvider; -import com.wordnik.swagger.jaxrs.listing.ApiListingResourceJSON; -import com.wordnik.swagger.jaxrs.listing.ResourceListingProvider; @Configuration @PropertySource("classpath:nflow-jetty.properties") @@ -73,20 +67,18 @@ public Server jaxRsServer(WorkflowInstanceResource workflowInstanceResource, workflowInstanceResource, workflowDefinitionResource, workflowExecutorResource, - statisticsResource, - apiListingResourceJson())); + statisticsResource + )); factory.setAddress('/' + factory.getAddress()); - factory.setProviders( Arrays.asList( + factory.setProviders(asList( jsonProvider(nflowRestObjectMapper), validationExceptionMapper(), - resourceListingProvider(), - apiDeclarationProvider(), corsHeadersProvider(), notFoundExceptionMapper(), new BadRequestExceptionMapper(), new DateTimeParamConverterProvider() )); - factory.setFeatures(Arrays.asList(new LoggingFeature())); + factory.setFeatures(asList(new LoggingFeature())); factory.setBus(cxf()); factory.setInInterceptors(Arrays.< Interceptor< ? extends Message > >asList(new JAXRSBeanValidationInInterceptor())); factory.setOutInterceptors(Arrays.< Interceptor< ? extends Message > >asList(new JAXRSBeanValidationOutInterceptor())); @@ -122,40 +114,6 @@ public JaxRsApiApplication jaxRsApiApplication() { return new JaxRsApiApplication(); } - @Bean - public BeanConfig swaggerConfig() { - final BeanConfig config = new BeanConfig(); - config.setVersion(env.getRequiredProperty("nflow.version")); - config.setScan(true); - config.setResourcePackage(WorkflowInstanceResource.class.getPackage().getName()); - String basePath = env.getProperty("swagger.basepath"); - if (isEmpty(basePath)) { - basePath = String.format("%s://%s:%d%s", - env.getProperty("swagger.basepath.protocol", "http"), - env.getProperty("swagger.basepath.server", env.getProperty("host", DEFAULT_HOST)), - env.getProperty("swagger.basepath.port", Integer.class, env.getProperty("port", Integer.class, DEFAULT_PORT)), - env.getProperty("swagger.basepath.context", "/api")); - } - logger.debug("Swagger basepath: {}", basePath); - config.setBasePath(basePath); - return config; - } - - @Bean - public ApiDeclarationProvider apiDeclarationProvider() { - return new ApiDeclarationProvider(); - } - - @Bean - public ApiListingResourceJSON apiListingResourceJson() { - return new ApiListingResourceJSON(); - } - - @Bean - public ResourceListingProvider resourceListingProvider() { - return new ResourceListingProvider(); - } - @ApplicationPath("/") public static class JaxRsApiApplication extends Application { } diff --git a/nflow-jetty/src/main/resources/static/doc/index.html b/nflow-jetty/src/main/resources/static/doc/index.html index 8bb4b3d3f..602d01412 100644 --- a/nflow-jetty/src/main/resources/static/doc/index.html +++ b/nflow-jetty/src/main/resources/static/doc/index.html @@ -23,7 +23,7 @@