Search in sources :

Example 36 with Qualifier

use of org.springframework.beans.factory.annotation.Qualifier in project hono by eclipse.

the class ApplicationConfig method registrationAssertionFactory.

/**
 * Exposes a factory for JWTs asserting a device's registration status as a Spring bean.
 *
 * @return The bean.
 */
@Bean
@Qualifier("signing")
public RegistrationAssertionHelper registrationAssertionFactory() {
    ServiceConfigProperties amqpProps = amqpProperties();
    FileBasedRegistrationConfigProperties serviceProps = serviceProperties();
    if (!serviceProps.getSigning().isAppropriateForCreating() && amqpProps.getKeyPath() != null) {
        // fall back to TLS configuration
        serviceProps.getSigning().setKeyPath(amqpProps.getKeyPath());
    }
    return RegistrationAssertionHelperImpl.forSigning(vertx(), serviceProps.getSigning());
}
Also used : ServiceConfigProperties(org.eclipse.hono.config.ServiceConfigProperties) Qualifier(org.springframework.beans.factory.annotation.Qualifier) Bean(org.springframework.context.annotation.Bean) ObjectFactoryCreatingFactoryBean(org.springframework.beans.factory.config.ObjectFactoryCreatingFactoryBean)

Example 37 with Qualifier

use of org.springframework.beans.factory.annotation.Qualifier in project hono by eclipse.

the class AbstractAdapterConfig method tenantServiceClient.

/**
 * Exposes a client for the <em>Tenant</em> API as a Spring bean.
 *
 * @return The client.
 */
@Bean
@Qualifier(TenantConstants.TENANT_ENDPOINT)
@Scope("prototype")
public HonoClient tenantServiceClient() {
    final HonoClientImpl result = new HonoClientImpl(vertx(), tenantServiceClientConfig());
    final CacheProvider cacheProvider = tenantCacheProvider();
    if (cacheProvider != null) {
        result.setCacheProvider(cacheProvider);
    }
    return result;
}
Also used : HonoClientImpl(org.eclipse.hono.client.impl.HonoClientImpl) CacheProvider(org.eclipse.hono.cache.CacheProvider) SpringCacheProvider(org.eclipse.hono.service.cache.SpringCacheProvider) Scope(org.springframework.context.annotation.Scope) Qualifier(org.springframework.beans.factory.annotation.Qualifier) Bean(org.springframework.context.annotation.Bean)

Example 38 with Qualifier

use of org.springframework.beans.factory.annotation.Qualifier in project hono by eclipse.

the class AbstractAdapterConfig method registrationServiceClient.

/**
 * Exposes a client for the <em>Device Registration</em> API as a Spring bean.
 *
 * @return The client.
 */
@Bean
@Qualifier(RegistrationConstants.REGISTRATION_ENDPOINT)
@Scope("prototype")
public HonoClient registrationServiceClient() {
    final HonoClientImpl result = new HonoClientImpl(vertx(), registrationServiceClientConfig());
    final CacheProvider cacheProvider = registrationCacheProvider();
    if (cacheProvider != null) {
        result.setCacheProvider(cacheProvider);
    }
    return result;
}
Also used : HonoClientImpl(org.eclipse.hono.client.impl.HonoClientImpl) CacheProvider(org.eclipse.hono.cache.CacheProvider) SpringCacheProvider(org.eclipse.hono.service.cache.SpringCacheProvider) Scope(org.springframework.context.annotation.Scope) Qualifier(org.springframework.beans.factory.annotation.Qualifier) Bean(org.springframework.context.annotation.Bean)

Example 39 with Qualifier

use of org.springframework.beans.factory.annotation.Qualifier in project hono by eclipse.

the class AbstractAdapterConfig method messagingClientConfig.

/**
 * Exposes configuration properties for accessing a Hono Messaging service as a Spring bean.
 * <p>
 * The properties can be customized in subclasses by means of overriding the
 * {@link #customizeMessagingClientConfig(ClientConfigProperties)} method.
 *
 * @return The properties.
 */
@Qualifier(Constants.QUALIFIER_MESSAGING)
@ConfigurationProperties(prefix = "hono.messaging")
@Bean
public ClientConfigProperties messagingClientConfig() {
    final ClientConfigProperties config = new ClientConfigProperties();
    customizeMessagingClientConfig(config);
    return config;
}
Also used : ClientConfigProperties(org.eclipse.hono.config.ClientConfigProperties) RequestResponseClientConfigProperties(org.eclipse.hono.client.RequestResponseClientConfigProperties) Qualifier(org.springframework.beans.factory.annotation.Qualifier) ConfigurationProperties(org.springframework.boot.context.properties.ConfigurationProperties) Bean(org.springframework.context.annotation.Bean)

Example 40 with Qualifier

use of org.springframework.beans.factory.annotation.Qualifier in project hono by eclipse.

the class AbstractAdapterConfig method tenantServiceClientConfig.

/**
 * Exposes configuration properties for accessing the tenant service as a Spring bean.
 *
 * @return The properties.
 */
@Qualifier(TenantConstants.TENANT_ENDPOINT)
@ConfigurationProperties(prefix = "hono.tenant")
@Bean
public RequestResponseClientConfigProperties tenantServiceClientConfig() {
    final RequestResponseClientConfigProperties config = new RequestResponseClientConfigProperties();
    customizeTenantServiceClientConfig(config);
    return config;
}
Also used : RequestResponseClientConfigProperties(org.eclipse.hono.client.RequestResponseClientConfigProperties) Qualifier(org.springframework.beans.factory.annotation.Qualifier) ConfigurationProperties(org.springframework.boot.context.properties.ConfigurationProperties) Bean(org.springframework.context.annotation.Bean)

Aggregations

Qualifier (org.springframework.beans.factory.annotation.Qualifier)66 Bean (org.springframework.context.annotation.Bean)59 RmiProxyFactoryBean (org.springframework.remoting.rmi.RmiProxyFactoryBean)18 ConditionalOnMissingBean (org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean)12 Configuration (org.springframework.context.annotation.Configuration)7 EnableConfigurationProperties (org.springframework.boot.context.properties.EnableConfigurationProperties)6 lombok.val (lombok.val)5 CasConfigurationProperties (org.apereo.cas.configuration.CasConfigurationProperties)5 ConfigurationProperties (org.springframework.boot.context.properties.ConfigurationProperties)5 RequestResponseClientConfigProperties (org.eclipse.hono.client.RequestResponseClientConfigProperties)4 RefreshScope (org.springframework.cloud.context.config.annotation.RefreshScope)4 ScopedProxyMode (org.springframework.context.annotation.ScopedProxyMode)4 ArrayList (java.util.ArrayList)3 HashMap (java.util.HashMap)3 HashSet (java.util.HashSet)3 List (java.util.List)3 Collectors (java.util.stream.Collectors)3 ClientFactoryBuilder (com.linecorp.armeria.client.ClientFactoryBuilder)2 IdMCacheConfiguration (eu.bcvsolutions.idm.core.api.config.cache.IdMCacheConfiguration)2 Supplier (java.util.function.Supplier)2