class ManagementSubsystemInitializer {

    @Activator
    public Observable<Void> enterActiveMode() {
        logger.info("Entering active mode");
        try {
            ApplicationSLA defaultSLA = applicationSlaStore.findByName(ApplicationSlaManagementService.DEFAULT_APPLICATION).toBlocking().first();
            logger.info("Default application SLA configured as: {}", defaultSLA);
        } catch (NotFoundException e) {
            ApplicationSLA defaultSLA = buildDefaultApplicationSLA(configuration);
            applicationSlaStore.create(defaultSLA).toBlocking().firstOrDefault(null);
            logger.info("Default application SLA not defined; creating it according to the provided configuration: {}", defaultSLA);
        }
        return Observable.empty();
    }

    @Inject public  ManagementSubsystemInitializer(CapacityManagementConfiguration configuration,
                                          ApplicationSlaStore applicationSlaStore);

}