@Override public void instance(String id, SystemExtensionContext context) throws Exception { ServiceName serviceName = Services.instanceResource(context.moduleId(), id); ApplicationTemplateService templateService = new ApplicationTemplateService(id); context.target().addService(serviceName, templateService) .addDependency(SYSTEM_APPLICATION_TEMPLATE_REGISTRY, TemplateRegistry.class, templateService.templateRegistryInjector) .install(); context.mountInstance(serviceName); }
public void mountInstance(RootResource resource) { target.addService(Services.instanceResource(this.moduleId(), this.id), new ValueService<RootResource>(new ImmediateValue<>(resource))) .install(); mountPrivate(Services.instanceResource(this.moduleId(), this.id)); }
public void instance(String id, SystemExtensionContext context) throws Exception { ServiceName instanceName = Services.instanceResource(context.moduleId(), id); MongoDatastoreService mongoDatastoreService = new MongoDatastoreService(); context.target().addService(instanceName, mongoDatastoreService) .addDependency(SYSTEM_MONGO_DATASTORE_CONFIG_SERVICE, MongoDatastoresRegistry.class, mongoDatastoreService.mongoDatastoreInjector) .addInjection(mongoDatastoreService.idInjector, id) .install(); context.mountInstance(instanceName); }
ServiceName service = Services.instanceResource(id(), id); serviceContainer.getService(Services.instanceResource(id(), id)).setMode(ServiceController.Mode.REMOVE); serviceContainer.getService(Services.instanceResource(id(), id).append("wrapper")).setMode(ServiceController.Mode.REMOVE); serviceContainer.getService(Services.instanceResource(id(), id).append("apply-config")).setMode(ServiceController.Mode.REMOVE); serviceContainer.getService(Services.instanceResource(id(), id).append("lifecycle")).setMode(ServiceController.Mode.REMOVE);
@Override public void extend(SystemExtensionContext context) throws Exception { analyticsServiceName = Services.instanceResource(context.moduleId(), context.id()); // install AnalyticsService that handles Analytics singleton AnalyticsService analyticsService = new AnalyticsService(); context.target().addService(analyticsServiceName, analyticsService) .install(); // install AnalyticsExtensionConfigService which provides extension config root resource (rest endpoint) via getValue() ServiceName configServiceName = Services.systemResource(context.moduleId(), context.id()); AnalyticsExtensionConfigService configService = new AnalyticsExtensionConfigService(context.id()); context.target().addService(configServiceName, configService) .addDependency(analyticsServiceName, AnalyticsService.class, configService.analyticsServiceInjector()) .install(); context.mountPrivate(configServiceName); }