private void setupSwagger() { BeanConfig beanConfig = new BeanConfig(); beanConfig.setTitle("Pinot Broker API"); beanConfig.setDescription("APIs for accessing Pinot broker information"); beanConfig.setContact("https://github.com/apache/incubator-pinot"); beanConfig.setVersion("1.0"); beanConfig.setSchemes(new String[]{"http"}); beanConfig.setBasePath(_baseUri.getPath()); beanConfig.setResourcePackage(RESOURCE_PACKAGE); beanConfig.setScan(true); HttpHandler httpHandler = new CLStaticHttpHandler(BrokerAdminApiApplication.class.getClassLoader(), "/api/"); // map both /api and /help to swagger docs. /api because it looks nice. /help for backward compatibility _httpServer.getServerConfiguration().addHttpHandler(httpHandler, "/api/", "/help/"); URL swaggerDistLocation = BrokerAdminApiApplication.class.getClassLoader().getResource("META-INF/resources/webjars/swagger-ui/2.2.2/"); CLStaticHttpHandler swaggerDist = new CLStaticHttpHandler(new URLClassLoader(new URL[]{swaggerDistLocation})); _httpServer.getServerConfiguration().addHttpHandler(swaggerDist, "/swaggerui-dist/"); }
private void bildSwaggerConfig() { BeanConfig beanConfig = new BeanConfig(); //beanConfig.setConfigId("configId: " + contextId++); beanConfig.setTitle("Bagri REST server"); beanConfig.setDescription("goto http://bagridb.com for more info"); beanConfig.setContact("support@bagridb.com"); beanConfig.setLicense("Apache 2.0"); beanConfig.setLicenseUrl("http://www.apache.org/licenses/LICENSE-2.0.html"); beanConfig.setVersion(bg_version); beanConfig.setSchemes(new String[] {"http", "https"}); // TODO: get host info somehow.. //jettyServer.getConnectors()[0].getConnectedEndPoints().iterator().next().getRemoteAddress() beanConfig.setHost("localhost:" + port); beanConfig.setBasePath("/"); // /api beanConfig.setResourcePackage("com.bagri.rest.service"); beanConfig.setPrettyPrint(true); // force Swagger to re-scan the package mentioned above and use // custom ReaderListener from that package beanConfig.setScan(true); }
register(ApiListingResource.class); register(SwaggerSerializers.class); BeanConfig beanConfig = new BeanConfig(); beanConfig.setVersion("1.0.0"); beanConfig.setSchemes(new String[]{"http"}); beanConfig.setBasePath("/api"); //or insert your base path (see main Jersey app class) beanConfig.setResourcePackage("com.xxx.where.your.endpoints"); beanConfig.setScan(true); beanConfig.setPrettyPrint(true);
swaggerConfig.setVersion("1.0"); swaggerConfig.setSchemes(new String[]{"http"}); swaggerConfig.setHost("localhost:"+AppGlobals.get().getConfig().getInteger("http_port", 9000)); swaggerConfig.setBasePath("/"); Set<String> resourcePackages = new HashSet<>(); for (Class<?> klass : deployment.getActualResourceClasses()) { resourcePackages.add(klass.getPackage().getName()); swaggerConfig.setResourcePackage(String.join(",", resourcePackages)); swaggerConfig.setServletConfig(servletConfig); swaggerConfig.setPrettyPrint(true); swaggerConfig.setScan(true);
/** * When the container starts up, extract the required context parameters * and run the scanner. * * @param container The container. */ @Override public void onStartup(final Container container) { String name = context.getServletContextName(); ServletRegistration registration = context.getServletRegistration(name); String scannerId = registration.getInitParameter("swagger.context.id"); String basePath = context.getContextPath(); BeanConfig beanConfig = new BeanConfig(); beanConfig.setResourcePackage(classPath); beanConfig.setScannerId(scannerId); beanConfig.setBasePath(basePath); beanConfig.setUsePathBasedConfig(true); beanConfig.setScan(true); }
beanConfig.setVersion(conf.getVersion()); beanConfig.setSchemes(new String[] {"http"}); beanConfig.setHost(conf.getHost() + ":" + conf.getPort()); beanConfig.setBasePath("/" + conf.getWebContext() + "/api"); beanConfig.setScan(true);
@Override public void init(KieServerImpl kieServer, KieServerRegistry registry) { this.context = registry; JaxrsScanner jaxrsScanner = new DefaultJaxrsScanner(); jaxrsScanner.setPrettyPrint(true); /* * Set our JAX-RS Scanner with SCANNER_ID_DEFAULT. * We need to do this before creating the BeanConfig, as this prevents the BeanConfig to register itself as the default scanner. * The first one wins. */ SwaggerScannerLocator.getInstance().putScanner((SwaggerContextService.SCANNER_ID_DEFAULT), jaxrsScanner); BeanConfig beanConfig = new BeanConfig(); String contextRoot = KieServerEnvironment.getContextRoot(); if (contextRoot != null) { beanConfig.setBasePath(contextRoot + "/services/rest"); } //Set the Info on the Swagger object, not on the BeanConfig ... otherwise the Info on Swagger (which will be 'null') will override the Info we set on the BeanConfig. beanConfig.getSwagger().setInfo(getInfo()); beanConfig.setScan(true); initialized = true; }
public void apireaderv2() { // tag::apireaderv2[] BeanConfig configuration = new BeanConfig(); configuration.setTitle("The title"); configuration.setVersion("1"); ApiReader<Swagger> reader = SwaggerV2.reader(configuration); // <1> Swagger api = reader.read(ApiEndpoint1.class, ApiEndpoint2.class); // <2> String json = SwaggerV2.asJson(api); // <3> String yaml = SwaggerV2.asYaml(api); // <4> // end::apireaderv2[] }
@Component @ApplicationPath("/api") public static class JerseyConfig extends ResourceConfig { public JerseyConfig() { BeanConfig swaggerConfig = new BeanConfig(); swaggerConfig.setBasePath("/api"); SwaggerConfigLocator.getInstance().putConfig(SwaggerContextService.CONFIG_ID_DEFAULT, swaggerConfig); packages(getClass().getPackage().getName(), ApiListingResource.class.getPackage().getName()); } }
public DefaultApiReader(SwaggerConfig configuration, boolean includeAll) { super(); this.configuration = (configuration != null) ? configuration : new BeanConfig(); this.includeAll = includeAll; }
private BeanConfig getUserBeanConfig() { // programmatic configuration for the bean... (no annotation or XML) BeanConfig config = new BeanConfig(User.class, "Users"); config.pk("id", DBTypes.AUTOINCREMENT); config.field("username", DBTypes.STRING); config.field("birthdate", "bd", DBTypes.DATE); // note that the database column name is different config.field("status", new EnumValueType(User.Status.class)); config.field("deleted", DBTypes.BOOLEANINT); config.field("insertTime", "insert_time", DBTypes.TIMESTAMP).defaultToNow("insertTime"); return config; } // create table Users(id integer primary key auto_increment, // username varchar(25), bd datetime, status varchar(20), // deleted tinyint, insert_time timestamp)
public void setScan() { setScan(true); }
? new BeanConfig() : new ApplicationBeanConfig(appInfo.getProvider()); initBeanConfig(beanConfig, swaggerProps); Swagger swagger = beanConfig.getSwagger(); if (swagger != null && securityDefinitions != null) { swagger.setSecurityDefinitions(securityDefinitions); if (beanConfig.isUsePathBasedConfig()) { providers.add(new ServletConfigProvider());
private BeanConfig getBeanConfig() { BeanConfig beanConfig = new BeanConfig(); beanConfig.setHost(getConfig("swagger.host")); beanConfig.setSchemes(getConfig("swagger.schemes").split(",")); beanConfig.setTitle(getConfig("swagger.title")); beanConfig.setVersion(getConfig("swagger.version")); beanConfig.setContact(getConfig("swagger.contact")); beanConfig.setLicense(getConfig("swagger.license")); beanConfig.setBasePath(getConfig("swagger.base_path")); beanConfig.setLicenseUrl(getConfig("swagger.licenseUrl")); beanConfig.setDescription(getConfig("swagger.description")); beanConfig.setPrettyPrint(getConfig("swagger.pretty_print")); beanConfig.setTermsOfServiceUrl(getConfig("swagger.terms_of_service_url")); // Must be called last beanConfig.setResourcePackage(resourcePackages()); beanConfig.setScan(true); return beanConfig; }
swaggerConfig.setVersion("1.0"); swaggerConfig.setSchemes(new String[]{"http"}); swaggerConfig.setHost("localhost:"+AppGlobals.get().getConfig().getInteger("http_port", 9000)); swaggerConfig.setBasePath("/"); Set<String> resourcePackages = new HashSet<>(); for (Class<?> klass : deployment.getActualResourceClasses()) { resourcePackages.add(klass.getPackage().getName()); swaggerConfig.setResourcePackage(String.join(",", resourcePackages)); swaggerConfig.setServletConfig(servletConfig); swaggerConfig.setPrettyPrint(true); swaggerConfig.setScan(true);
import io.swagger.util.Json; //... Json.mapper().configure(SerializationFeature.WRITE_ENUMS_USING_TO_STRING, true); BeanConfig beanConfig = new BeanConfig(); //...
private void setupSwagger(HttpServer httpServer) { BeanConfig beanConfig = new BeanConfig(); beanConfig.setTitle("Pinot Server API"); beanConfig.setDescription("APIs for accessing Pinot server information"); beanConfig.setContact("https://github.com/apache/incubator-pinot"); beanConfig.setVersion("1.0"); beanConfig.setSchemes(new String[]{"http"}); beanConfig.setBasePath(baseUri.getPath()); beanConfig.setResourcePackage(RESOURCE_PACKAGE); beanConfig.setScan(true); CLStaticHttpHandler staticHttpHandler = new CLStaticHttpHandler(AdminApiApplication.class.getClassLoader(), "/api/"); // map both /api and /help to swagger docs. /api because it looks nice. /help for backward compatibility httpServer.getServerConfiguration().addHttpHandler(staticHttpHandler, "/api/"); httpServer.getServerConfiguration().addHttpHandler(staticHttpHandler, "/help/"); URL swaggerDistLocation = AdminApiApplication.class.getClassLoader().getResource("META-INF/resources/webjars/swagger-ui/2.2.2/"); CLStaticHttpHandler swaggerDist = new CLStaticHttpHandler(new URLClassLoader(new URL[]{swaggerDistLocation})); httpServer.getServerConfiguration().addHttpHandler(swaggerDist, "/swaggerui-dist/"); }
@Bean @Autowired public BeanConfig gpSwaggerBeanConfig(@Qualifier( value = "gpSwaggerConfiguration") final SwaggerConfiguration gpSwaggerConfiguration) { logger.debug("######################INITIALIZING SWAGGER WITH " + "PARAMETERS : {}\n\n", gpSwaggerConfiguration); return new BeanConfig() { { super.setResourcePackage( gpSwaggerConfiguration.getResourcePackage()); super.setVersion(gpSwaggerConfiguration.getVersion()); super.setSchemes(gpSwaggerConfiguration.getSchemes()); super.setHost(gpSwaggerConfiguration.getHost()); super.setBasePath(gpSwaggerConfiguration.getBasePath()); super.setTitle(gpSwaggerConfiguration.getTitle()); super.setDescription(gpSwaggerConfiguration.getDescription()); super.setContact(gpSwaggerConfiguration.getContact()); super.setLicense(gpSwaggerConfiguration.getLicense()); super.setLicenseUrl(gpSwaggerConfiguration.getLicenseUrl()); super.setScan(gpSwaggerConfiguration.isScan()); } }; }
@Override public void init(ServletConfig config) throws ServletException { super.init(config); BeanConfig beanConfig = new BeanConfig(); init(beanConfig); }
private void setupSwagger(HttpServer httpServer) { BeanConfig beanConfig = new BeanConfig(); beanConfig.setTitle("Pinot Controller API"); beanConfig.setDescription("APIs for accessing Pinot Controller information"); beanConfig.setContact("https://github.com/apache/incubator-pinot"); beanConfig.setVersion("1.0"); if (_useHttps) { beanConfig.setSchemes(new String[]{"https"}); } else { beanConfig.setSchemes(new String[]{"http"}); } beanConfig.setBasePath(baseUri.getPath()); beanConfig.setResourcePackage(RESOURCE_PACKAGE); beanConfig.setScan(true); ClassLoader loader = this.getClass().getClassLoader(); CLStaticHttpHandler apiStaticHttpHandler = new CLStaticHttpHandler(loader, "/api/"); // map both /api and /help to swagger docs. /api because it looks nice. /help for backward compatibility httpServer.getServerConfiguration().addHttpHandler(apiStaticHttpHandler, "/api/"); httpServer.getServerConfiguration().addHttpHandler(apiStaticHttpHandler, "/help/"); URL swaggerDistLocation = loader.getResource("META-INF/resources/webjars/swagger-ui/2.2.2/"); CLStaticHttpHandler swaggerDist = new CLStaticHttpHandler(new URLClassLoader(new URL[]{swaggerDistLocation})); httpServer.getServerConfiguration().addHttpHandler(swaggerDist, "/swaggerui-dist/"); }