dnet-applications/apps/dhp-broker-application/src/main/java/eu/dnetlib/broker/LiteratureBrokerServiceConf...

48 lines
1.9 KiB
Java
Raw Normal View History

2020-09-04 14:33:19 +02:00
package eu.dnetlib.broker;
2020-07-02 08:55:42 +02:00
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Autowired;
2021-07-30 16:17:20 +02:00
import org.springframework.cache.annotation.EnableCaching;
2020-07-02 08:55:42 +02:00
import org.springframework.context.annotation.Bean;
2021-11-29 13:37:27 +01:00
import org.springframework.context.annotation.ComponentScan;
2020-07-02 08:55:42 +02:00
import org.springframework.context.annotation.Configuration;
import org.springframework.data.elasticsearch.client.ClientConfiguration;
import org.springframework.data.elasticsearch.client.RestClients;
import org.springframework.data.elasticsearch.config.AbstractElasticsearchConfiguration;
import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.transaction.annotation.EnableTransactionManagement;
2020-09-04 14:33:19 +02:00
import eu.dnetlib.broker.common.elasticsearch.Event;
import eu.dnetlib.broker.common.elasticsearch.Notification;
import eu.dnetlib.broker.common.properties.ElasticSearchProperties;
2020-07-02 08:55:42 +02:00
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
2021-07-30 16:17:20 +02:00
@EnableCaching
2020-07-02 08:55:42 +02:00
@EnableScheduling
@EnableTransactionManagement
2020-07-27 15:49:29 +02:00
@EnableElasticsearchRepositories(basePackageClasses = {
Event.class, Notification.class
})
2021-11-29 13:37:27 +01:00
@ComponentScan(basePackages = "eu.dnetlib")
2020-07-02 08:55:42 +02:00
public class LiteratureBrokerServiceConfiguration extends AbstractElasticsearchConfiguration {
@Autowired
private ElasticSearchProperties elasticSearchProperties;
@Override
@Bean
public RestHighLevelClient elasticsearchClient() {
2021-07-06 13:29:38 +02:00
2020-07-02 08:55:42 +02:00
final ClientConfiguration clientConfiguration = ClientConfiguration.builder()
2020-11-18 09:53:02 +01:00
.connectedTo(elasticSearchProperties.getClusterNodes().split(","))
2020-07-27 15:49:29 +02:00
.withConnectTimeout(elasticSearchProperties.getConnectionTimeout())
.withSocketTimeout(elasticSearchProperties.getSocketTimeout())
.build();
2020-07-02 08:55:42 +02:00
return RestClients.create(clientConfiguration).rest();
}
}