argos/dmp-backend/core/src/main/java/eu/eudat/elastic/ElasticConfiguration.java

50 lines
1.9 KiB
Java

package eu.eudat.elastic;
import eu.eudat.elastic.converter.*;
import gr.cite.tools.elastic.configuration.AbstractElasticConfiguration;
import gr.cite.tools.elastic.configuration.ElasticCertificateProvider;
import gr.cite.tools.elastic.configuration.ElasticProperties;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.elasticsearch.core.convert.ElasticsearchCustomConversions;
import java.util.List;
@Configuration
@EnableConfigurationProperties(ElasticProperties.class)
@ConditionalOnProperty(prefix = "elastic", name = "enabled", matchIfMissing = false)
public class ElasticConfiguration extends AbstractElasticConfiguration {
public ElasticConfiguration(ElasticProperties elasticProperties, ElasticCertificateProvider elasticCertificateProvider) {
super(elasticProperties, elasticCertificateProvider);
}
@Bean
@Override
public ElasticsearchCustomConversions elasticsearchCustomConversions() {
return new ElasticsearchCustomConversions(
List.of(
new DmpUserRoleToShortConverter(),
new DescriptionTemplateVersionStatusToShortConverter(),
new DmpStatusToShortConverter(),
new DescriptionStatusToShortConverter(),
new IsActiveToShortConverter(),
new DmpVersionStatusToShortConverter(),
new DmpAccessTypeToShortConverter(),
new ShortToDmpStatusConverter(),
new ShortToDmpUserRoleConverter(),
new ShortToDescriptionTemplateVersionStatusConverter(),
new ShortToDmpStatusConverter(),
new ShortToDescriptionStatusConverter(),
new ShortToIsActiveConverter(),
new ShortToDmpVersionStatusConverter(),
new ShortToDmpAccessTypeConverter()
));
}
}