public static ServiceName resource(String appId, Class<? extends RootResource> cls) { return Services.resource(appId, cls.getName()); }
@Override public void mountPublic(RootResource publicResource, MediaType mediaType, boolean makeDefault) { ValueService<RootResource> service = new ValueService<RootResource>(new ImmediateValue<>(publicResource)); this.target.addService(Services.resource(application().id(), resourceId()), service) .install(); mountPublic(Services.resource(application().id(), resourceId()), mediaType, makeDefault); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { String appId = context.application().id(); ServiceTarget target = context.target(); AuthzResourceService resource = new AuthzResourceService(context.resourceId()); target.addService(Services.resource(appId, context.resourceId()), resource) .addDependency(Services.CLIENT, Client.class, resource.clientInjector()) .install(); AuthzConfigResourceService configResource = new AuthzConfigResourceService(context.resourceId()); target.addService(Services.adminResource(appId, context.resourceId()), configResource) .addDependency(Services.resource(appId, context.resourceId()), AuthzServiceRootResource.class, configResource.rootResourceInjector()) .install(); context.mountPublic(); context.mountPrivate(); }
ServiceName moduleName = Services.resource(ZeroExtension.APPLICATION_ID, "system").append(MODULE).append(id); .addDependency(Services.resource(ZeroExtension.APPLICATION_ID, "system"), MountPointResource.class, instanceMount.mountPointInjector()) .addDependency(moduleName, RootResource.class, instanceMount.resourceInjector()) .install();
@Override public void mountPublic() { mountPublic(Services.resource(application().id(), resourceId())); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { ServiceName configServiceName = Services.adminResource(context.application().id(), context.resourceId()); MongoConfigResourceService mongoConfigResourceService = new MongoConfigResourceService(context.resourceId()); context.target().addService(configServiceName, mongoConfigResourceService) .addDependency(SYSTEM_MONGO_DATASTORE_CONFIG_SERVICE, MongoDatastoresRegistry.class, mongoConfigResourceService.mongoDatastoreInjector) .install(); context.mountPrivate(); GridFSResourceService publicResource = new GridFSResourceService(context.resourceId()); context.target().addService(Services.resource(context.application().id(), context.resourceId()), publicResource) .addDependency(Services.VERTX, Vertx.class, publicResource.vertxInjector()) .addDependency(TMP_DIR, File.class, publicResource.tmpDirInjector()) .addDependency(configServiceName, RootMongoConfigResource.class, publicResource.configResourceInjector()) .install(); context.mountPublic(Services.resource(context.application().id(), context.resourceId())); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { ServiceTarget target = context.target(); Constructor<? extends RootResource> ctor = this.resourceClass.getConstructor(String.class); RootResource resource = ctor.newInstance(context.resourceId()); ServiceName name = Services.resource(context.application().id(), context.resourceId()); target.addService(name, new ValueService<RootResource>(new ImmediateValue<>(resource))) .install(); context.mountPublic(name); context.mountPrivate( new DefaultRootResource( context.resourceId())); }
ServiceTarget target = context.getChildTarget(); ServiceName systemName = Services.resource(ZeroExtension.APPLICATION_ID, "system"); target.addService(systemName, new ValueService<>(new ImmediateValue<>(new SystemResource()))) .install(); .install(); ServiceName applicationsName = Services.resource(ZeroExtension.APPLICATION_ID, "applications"); ApplicationsResourceService applicationsResource = new ApplicationsResourceService(); target.addService(applicationsName, applicationsResource) ServiceName localApplicationsName = Services.resource(ZeroExtension.APPLICATION_ID, "local-applications"); LocalApplicationsResourceService localAppsResourceService = new LocalApplicationsResourceService(); target.addService(localApplicationsName, localAppsResourceService) ServiceName gitApplicationsName = Services.resource(ZeroExtension.APPLICATION_ID, "git-applications"); GitApplicationsResourceService gitAppsResourceService = new GitApplicationsResourceService(); target.addService(gitApplicationsName, gitAppsResourceService) ServiceName templateApplicationName = Services.resource(ZeroExtension.APPLICATION_ID, "templated-applications"); TemplateApplicationResourceService templateAppResourceService = new TemplateApplicationResourceService(); target.addService(templateApplicationName, templateAppResourceService)
@Override public void extend(ApplicationExtensionContext context) throws Exception { KeycloakResourceService resource = new KeycloakResourceService(context.resourceId()); context.target().addService(Services.resource(context.application().id(), context.resourceId()), resource) .addDependency(KeycloakServices.address(), KeycloakConfig.class, resource.address()) .install(); context.mountPublic(); context.mountPrivate(new DefaultRootResource(context.resourceId())); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { MongoConfigResourceService mongoConfigResourceService = new MongoConfigResourceService(context.resourceId()); context.target().addService(Services.adminResource(context.application().id(), context.resourceId()), mongoConfigResourceService) .addDependency(SYSTEM_MONGO_DATASTORE_CONFIG_SERVICE, MongoDatastoresRegistry.class, mongoConfigResourceService.mongoDatastoreInjector) .install(); RootMongoResourceService rootMongoResourceService = new RootMongoResourceService(context.resourceId()); context.target().addService(Services.resource(context.application().id(), context.resourceId()), rootMongoResourceService) .addDependency(Services.adminResource(context.application().id(), context.resourceId()), RootMongoConfigResource.class, rootMongoResourceService.mongoConfigInjector) .install(); context.mountPrivate(); context.mountPublic(); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { File initialDir = new File(context.application().directory(), context.resourceId()); ServiceName privateResourceServiceName = Services.adminResource(context.application().id(), context.resourceId()); FileSystemAdminResourceService privateResourceService = new FileSystemAdminResourceService(context.resourceId(), initialDir); context.target().addService(privateResourceServiceName, privateResourceService) .addDependency(Services.VERTX, Vertx.class, privateResourceService.vertxInjector()) .install(); context.mountPrivate(privateResourceServiceName); FilesystemResourceService publicResource = new FilesystemResourceService(context.resourceId()); context.target().addService(Services.resource(context.application().id(), context.resourceId()), publicResource) .addDependency(Services.VERTX, Vertx.class, publicResource.vertxInjector()) .addDependency(privateResourceServiceName, FileSystemAdminResource.class, publicResource.adminResourceInjector()) .install(); context.mountPublic(Services.resource(context.application().id(), context.resourceId())); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { String appId = context.application().id(); ServiceTarget target = context.target(); ServiceName name = SchedulerServices.scheduler(appId, context.resourceId()); SchedulerService scheduler = new SchedulerService(appId + "/" + context.resourceId()); target.addService(name, scheduler) .install(); SchedulerResourceService publicResource = new SchedulerResourceService(context.resourceId()); target.addService(Services.resource(appId, context.resourceId()), publicResource) .addDependency(Services.NOTIFIER, Notifier.class, publicResource.notifierInjector()) .addDependency(name, Scheduler.class, publicResource.schedulerInjector()) .install(); context.mountPublic(); SchedulerAdminResourceService privateResource = new SchedulerAdminResourceService(context.resourceId()); target.addService(Services.adminResource(appId, context.resourceId()), privateResource) .addDependency(name, Scheduler.class, privateResource.schedulerInjector()) .install(); context.mountPrivate(); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { // install AnalyticsExtensionConfigService which provides extension config root resource (rest endpoint) via getValue() ServiceName configServiceName = Services.adminResource(context.application().id(), context.resourceId()); AnalyticsApplicationConfigService configService = new AnalyticsApplicationConfigService(context.resourceId()); context.target().addService(configServiceName, configService) .addDependency(analyticsServiceName, AnalyticsService.class, configService.analyticsServiceInjector()) .install(); context.mountPrivate(); ServiceName restServiceName = Services.resource(context.application().id(), context.resourceId()); AnalyticsRootService rootResource = new AnalyticsRootService(context.resourceId()); context.target().addService(restServiceName, rootResource) .addDependency(analyticsServiceName, AnalyticsService.class, rootResource.analyticsServiceInjector()) .install(); context.mountPublic(); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { String appId = context.application().id(); ServiceTarget target = context.target(); URIPolicy policy = new URIPolicy(); target.addService(URIPolicyServices.policy(appId, context.resourceId()), new ValueService<>(new ImmediateValue<>(policy))) .install(); URIPolicyRootResourceService resource = new URIPolicyRootResourceService(context.resourceId()); target.addService(Services.resource(appId, context.resourceId()), resource) .addDependency(URIPolicyServices.policy(appId, context.resourceId()), URIPolicy.class, resource.policyInjector()) .install(); URIPolicyConfigResourceService configResource = new URIPolicyConfigResourceService(context.resourceId()); target.addService(Services.adminResource(appId, context.resourceId()), configResource) .addDependency(URIPolicyServices.policy(appId, context.resourceId()), URIPolicy.class, configResource.policyInjector()) .install(); context.mountPublic(); context.mountPrivate(); }
@Override public void extend(ApplicationExtensionContext context) throws Exception { String appId = context.application().id(); ServiceTarget target = context.target(); DroolsPolicy policy = new DroolsPolicy(); target.addService(DroolsPolicyServices.policy(appId, context.resourceId()), new ValueService<>(new ImmediateValue<>(policy))) .install(); DroolsPolicyResourceService resource = new DroolsPolicyResourceService(context.resourceId()); target.addService(Services.resource(appId, context.resourceId()), resource) .addDependency(DroolsPolicyServices.policy(appId, context.resourceId()), DroolsPolicy.class, resource.policyInjector()) .install(); DroolsPolicyConfigResourceService configResource = new DroolsPolicyConfigResourceService(context.resourceId()); target.addService(Services.adminResource(appId, context.resourceId()), configResource) .addDependency(DroolsPolicyServices.policy(appId, context.resourceId()), DroolsPolicy.class, configResource.policyInjector()) .install(); context.mountPublic(); context.mountPrivate(); }
MediaTypeMountService<ApplicationResource> appResourceMount = new MediaTypeMountService<>(null, MediaType.JSON, true); this.app.resourceController(target.addService(Services.defaultMount(appResourceName), appResourceMount) .addDependency(Services.resource(ZeroExtension.APPLICATION_ID, "applications"), MountPointResource.class, appResourceMount.mountPointInjector()) .addDependency(appResourceName, ApplicationResource.class, appResourceMount.resourceInjector()) .install());
ServiceName moduleName = Services.resource(ZeroExtension.APPLICATION_ID, "system").append("module").append(id()); SystemExtensionContext extInstanceContext = new SystemExtensionContextImpl(target, id(), state.id(), moduleName, ConversionUtils.convert(state), this); extension.instance(state.id(), extInstanceContext);