@Override public void start() throws Exception { // Build the Jax-RS controller deployment VertxResteasyDeployment deployment = new VertxResteasyDeployment(); deployment.start(); deployment.getRegistry().addPerInstanceResource(Controller.class); // Start the front end server using the Jax-RS controller vertx.createHttpServer() .requestHandler(new VertxRequestHandler(vertx, deployment)) .listen(8080, ar -> { System.out.println("Server started on port "+ ar.result().actualPort()); }); } }
private void addResources(VertxRegistry registry, Object...objs) { for (Object obj : objs) { registry.addSingletonResource(obj); } }
@Override public VertxRegistry getRegistry() { Registry registry = super.getRegistry(); if (!(registry instanceof VertxRegistry)) { registry = new VertxRegistry(registry, getProviderFactory().getResourceBuilder()); } return (VertxRegistry) registry; }
@Override public void start(Future<Void> startPromise) { VertxResteasyDeployment deployment = new VertxResteasyDeployment(); deployment.start(); deployment.getProviderFactory().registerProvider(DefaultExceptionMapper.class); if (enableRbac) { log.info("Enabling RBAC for REST API"); deployment.getProviderFactory().registerProviderInstance(new AuthInterceptor(authApi, path -> path.startsWith(HttpHealthService.BASE_URI) || path.startsWith(HttpConsoleService.BASE_URI))); } else { log.info("Disabling authentication and authorization for REST API"); deployment.getProviderFactory().registerProviderInstance(new AllowAllAuthInterceptor()); } deployment.getRegistry().addSingletonResource(new HttpHealthService()); deployment.getRegistry().addSingletonResource(new HttpConsoleService(authApi.getNamespace(), addressSpaceApi)); deployment.getRegistry().addSingletonResource(new OSBCatalogService(addressSpaceApi, authApi, schemaProvider)); deployment.getRegistry().addSingletonResource(new OSBProvisioningService(addressSpaceApi, authApi, schemaProvider, consoleProxy)); deployment.getRegistry().addSingletonResource(new OSBBindingService(addressSpaceApi, authApi, schemaProvider, userApi)); deployment.getRegistry().addSingletonResource(new OSBLastOperationService(addressSpaceApi, authApi, schemaProvider)); VertxRequestHandler requestHandler = new VertxRequestHandler(vertx, deployment); httpServer = createServer(requestHandler, startPromise); }
@Override public VertxRegistry getRegistry() { Registry registry = super.getRegistry(); if (!(registry instanceof VertxRegistry)) { registry = new VertxRegistry(registry, getProviderFactory().getResourceBuilder()); } return (VertxRegistry) registry; }
@Override public void start() throws Exception { // Build the Jax-RS hello world deployment VertxResteasyDeployment deployment = new VertxResteasyDeployment(); deployment.start(); deployment.getRegistry().addPerInstanceResource(HelloWorldService.class); // Start the front end server using the Jax-RS controller vertx.createHttpServer() .requestHandler(new VertxRequestHandler(vertx, deployment)) .listen(8080, ar -> { System.out.println("Server started on port "+ ar.result().actualPort()); }); } }
deployment.getRegistry().addSingletonResource(new SwaggerSpecEndpoint()); deployment.getRegistry().addSingletonResource(new HttpOpenApiService()); deployment.getRegistry().addSingletonResource(new HttpNestedAddressService(addressSpaceApi, schemaProvider, clock)); deployment.getRegistry().addSingletonResource(new HttpAddressService(addressSpaceApi, schemaProvider, clock)); deployment.getRegistry().addSingletonResource(new HttpClusterAddressService(addressSpaceApi, schemaProvider, clock)); deployment.getRegistry().addSingletonResource(new HttpSchemaService(schemaProvider)); deployment.getRegistry().addSingletonResource(new HttpAddressSpaceService(addressSpaceApi, schemaProvider, clock)); deployment.getRegistry().addSingletonResource(new HttpClusterAddressSpaceService(addressSpaceApi, clock)); if (userApi != null) { deployment.getRegistry().addSingletonResource(new HttpUserService(addressSpaceApi, userApi, clock)); deployment.getRegistry().addSingletonResource(new HttpClusterUserService(userApi, clock)); } else { log.info("User API not available, disabling"); deployment.getRegistry().addSingletonResource(new HttpHealthService()); deployment.getRegistry().addSingletonResource(new HttpMetricsService(version, metrics)); deployment.getRegistry().addSingletonResource(new HttpRootService()); deployment.getRegistry().addSingletonResource(new HttpApiRootService());
deployment.getRegistry().addPerInstanceResource(classInfo.loadClass(), "/v1"); });
deployment.getRegistry().addPerInstanceResource(classInfo.loadClass(), "/v1"); });
swaggerConfig.setScan(true); deployment.getRegistry().addPerInstanceResource(ApiListingResource.class); deployment.getProviderFactory().register(SwaggerSerializers.class);
swaggerConfig.setScan(true); deployment.getRegistry().addPerInstanceResource(ApiListingResource.class); deployment.getProviderFactory().register(SwaggerSerializers.class);