org.wso2.carbon.core.ServerStartupObserver Java Examples

The following examples show how to use org.wso2.carbon.core.ServerStartupObserver. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: APIKeyMgtServiceComponent.java    From carbon-apimgt with Apache License 2.0 6 votes vote down vote up
@Activate
protected void activate(ComponentContext ctxt) {
    try {
        APIKeyMgtDataHolder.initData();
        log.debug("Key Manager User Operation Listener is enabled.");
        // Register subscription datastore related service
        serviceRegistration = ctxt.getBundleContext().registerService(
                Axis2ConfigurationContextObserver.class.getName(), new ServerStartupListener(), null);
        serviceRegistration = ctxt.getBundleContext().registerService(
                ServerStartupObserver.class.getName(), new ServerStartupListener(), null);

        // Register KeyManagerDataService
        serviceRegistration = ctxt.getBundleContext().registerService(KeyManagerDataService.class.getName(),
                new KeyManagerDataServiceImpl(), null);

        if (log.isDebugEnabled()) {
            log.debug("Identity API Key Mgt Bundle is started.");
        }
    } catch (Exception e) {
        log.error("Failed to initialize key management service.", e);
    }
}
 
Example #2
Source File: JMSListenerComponent.java    From carbon-apimgt with Apache License 2.0 6 votes vote down vote up
@Activate
protected void activate(ComponentContext context) {

    log.debug("Activating component...");
    APIManagerConfiguration configuration = ServiceReferenceHolder.getInstance().getAPIMConfiguration();
    if (configuration != null) {
        if (!configuration.getThrottleProperties().getJmsConnectionProperties().isEnabled()) {
            return;
        }
    } else {
        log.warn("API Manager Configuration not properly set.");
    }
    JMSListenerStartupShutdownListener jmsListenerStartupShutdownListener =
            new JMSListenerStartupShutdownListener();
    registration = context.getBundleContext()
            .registerService(ServerStartupObserver.class, jmsListenerStartupShutdownListener, null);
    registration = context.getBundleContext()
            .registerService(ServerShutdownHandler.class, jmsListenerStartupShutdownListener, null);
}
 
Example #3
Source File: UrlPrinterServiceComponent.java    From carbon-device-mgt with Apache License 2.0 5 votes vote down vote up
protected void activate(ComponentContext ctx) {
    if (log.isDebugEnabled()) {
        log.debug("Activating Url printer Service Component");
    }
    try {
        BundleContext bundleContext = ctx.getBundleContext();
        bundleContext.registerService(ServerStartupObserver.class.getName(), new URLPrinterStartupHandler(), null);
        if (log.isDebugEnabled()) {
            log.debug("Url printer Service Component has been successfully activated");
        }
    } catch (Throwable e) {
        log.error("Error occurred while activating Url printer Service Component", e);
    }
}
 
Example #4
Source File: APIPublisherServiceComponent.java    From carbon-device-mgt with Apache License 2.0 5 votes vote down vote up
private void registerServices(ComponentContext componentContext) {
    if (log.isDebugEnabled()) {
        log.debug("Registering OSGi service DeviceManagementProviderServiceImpl");
    }
    /* Registering Device Management Service */
    BundleContext bundleContext = componentContext.getBundleContext();

    APIPublisherService publisher = new APIPublisherServiceImpl();
    APIPublisherDataHolder.getInstance().setApiPublisherService(publisher);
    bundleContext.registerService(APIPublisherService.class, publisher, null);
    bundleContext.registerService(ServerStartupObserver.class, new APIPublisherStartupHandler(), null);
}
 
Example #5
Source File: TenantInitializerServiceComponent.java    From carbon-apimgt with Apache License 2.0 5 votes vote down vote up
@Activate
protected void activate(ComponentContext ctx) {
    if (log.isDebugEnabled()) {
        log.debug("Activating tenant initialization component.");
    }
    BundleContext bundleContext = ctx.getBundleContext();
    bundleContext.registerService(ServerStartupObserver.class.getName(), new ServerStartupListener(), null);
}
 
Example #6
Source File: StartupServiceComponent.java    From carbon-apimgt with Apache License 2.0 5 votes vote down vote up
@Activate
protected void activate(ComponentContext componentContext) {
    try {
        log.debug("Startup Service Component activated");
        BundleContext bundleContext = componentContext.getBundleContext();
        registration = bundleContext
                .registerService(ServerStartupObserver.class.getName(), new ServerStartupListener(), null);
    } catch (Exception e) {
        log.error("Error occurred in startup service component activation", e);
    }
}
 
Example #7
Source File: APIHandlerServiceComponent.java    From carbon-apimgt with Apache License 2.0 4 votes vote down vote up
@Activate
protected void activate(ComponentContext context) {

    BundleContext bundleContext = context.getBundleContext();
    if (log.isDebugEnabled()) {
        log.debug("API handlers component activated");
    }
    try {
        ConfigurationContext ctx =
                ConfigurationContextFactory.createConfigurationContextFromFileSystem(getClientRepoLocation(),
                        getAxis2ClientXmlLocation());
        ServiceReferenceHolder.getInstance().setAxis2ConfigurationContext(ctx);
        if (APIConstants.API_KEY_VALIDATOR_WS_CLIENT.equals(APISecurityUtils.getKeyValidatorClientType())) {
            clientPool = APIKeyValidatorClientPool.getInstance();
        }
        APIManagerConfiguration apiManagerConfiguration =
                ServiceReferenceHolder.getInstance().getAPIManagerConfiguration();
        String gatewayType = apiManagerConfiguration.getFirstProperty(APIConstants.API_GATEWAY_TYPE);
        GatewayStartupListener gatewayStartupListener = new GatewayStartupListener();
        bundleContext.registerService(ServerStartupObserver.class.getName(), gatewayStartupListener, null);
        bundleContext.registerService(ServerShutdownHandler.class, gatewayStartupListener, null);

        if ("Synapse".equalsIgnoreCase(gatewayType)) {
            // Register Tenant service creator to deploy tenant specific common synapse configurations
            TenantServiceCreator listener = new TenantServiceCreator();
            bundleContext.registerService(Axis2ConfigurationContextObserver.class.getName(), listener, null);
            if (apiManagerConfiguration.getThrottleProperties().isEnabled()) {
                ServiceReferenceHolder.getInstance().setThrottleDataPublisher(new ThrottleDataPublisher());
                ThrottleDataHolder throttleDataHolder = new ThrottleDataHolder();
                APIThrottleDataServiceImpl throttleDataServiceImpl =
                        new APIThrottleDataServiceImpl(throttleDataHolder);
                CacheInvalidationService cacheInvalidationService = new CacheInvalidationServiceImpl();
                // Register APIThrottleDataService so that ThrottleData maps are available to other components.
                ServiceReferenceHolder.getInstance().setCacheInvalidationService(cacheInvalidationService);
                ServiceReferenceHolder.getInstance().setAPIThrottleDataService(throttleDataServiceImpl);
                ServiceReferenceHolder.getInstance().setThrottleDataHolder(throttleDataHolder);
                ServiceReferenceHolder.getInstance().setRevokedTokenService(new RevokedTokenDataImpl());
                log.debug("APIThrottleDataService Registered...");
                // start web service throttle data retriever as separate thread and start it.
                if (apiManagerConfiguration.getThrottleProperties().getBlockCondition().isEnabled()) {
                    BlockingConditionRetriever webServiceThrottleDataRetriever = new BlockingConditionRetriever();
                    webServiceThrottleDataRetriever.startWebServiceThrottleDataRetriever();
                    KeyTemplateRetriever webServiceBlockConditionsRetriever = new KeyTemplateRetriever();
                    webServiceBlockConditionsRetriever.startKeyTemplateDataRetriever();

                    // Start web service based revoked JWT tokens retriever.
                    // Advanced throttle properties & blocking conditions have to be enabled for JWT token
                    // retrieval due to the throttle config dependency for this feature.
                    RevokedJWTTokensRetriever webServiceRevokedJWTTokensRetriever = new RevokedJWTTokensRetriever();
                    webServiceRevokedJWTTokensRetriever.startRevokedJWTTokensRetriever();
                }
            }

            // Set APIM Gateway JWT Generator

            registration =
                    context.getBundleContext().registerService(AbstractAPIMgtGatewayJWTGenerator.class.getName(),
                            new APIMgtGatewayJWTGeneratorImpl(), null);
            registration =
                    context.getBundleContext().registerService(AbstractAPIMgtGatewayJWTGenerator.class.getName(),
                            new APIMgtGatewayUrlSafeJWTGeneratorImpl(), null);
            // Start JWT revoked map cleaner.
            RevokedJWTMapCleaner revokedJWTMapCleaner = new RevokedJWTMapCleaner();
            revokedJWTMapCleaner.startJWTRevokedMapCleaner();
            ServiceReferenceHolder.getInstance().setTracer(ServiceReferenceHolder.getInstance().getTracingService()
                    .buildTracer(APIMgtGatewayConstants.SERVICE_NAME));
        }
    } catch (IOException e) {
        log.error("Error while initializing the API Gateway (APIHandlerServiceComponent) component", e);
    }
    // Create caches for the super tenant
    ServerConfiguration.getInstance().overrideConfigurationProperty("Cache.ForceLocalCache", "true");
    CacheProvider.createGatewayKeyCache();
    CacheProvider.createResourceCache();
    CacheProvider.createGatewayTokenCache();
    CacheProvider.createInvalidTokenCache();
    CacheProvider.createGatewayBasicAuthResourceCache();
    CacheProvider.createGatewayUsernameCache();
    CacheProvider.createInvalidUsernameCache();
    CacheProvider.createGatewayApiKeyCache();
    CacheProvider.createGatewayApiKeyDataCache();
    CacheProvider.getInvalidGatewayApiKeyCache();
    CacheProvider.getJWKSCache();
}