package pl.edu.icm.saos.search.analysis; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import pl.edu.icm.saos.search.analysis.request.XField; import pl.edu.icm.saos.search.analysis.solr.result.FacetCcCourtAreaValueConverter; import pl.edu.icm.saos.search.analysis.solr.result.FacetDayPeriodValueConverter; import pl.edu.icm.saos.search.analysis.solr.result.FacetMonthPeriodValueConverter; import pl.edu.icm.saos.search.analysis.solr.result.FacetValueConverter; import pl.edu.icm.saos.search.analysis.solr.result.FacetValueConverterManager; import pl.edu.icm.saos.search.analysis.solr.result.FacetYearPeriodValueConverter; import pl.edu.icm.saos.search.analysis.solr.result.FacetPrefixedValueConverter; import pl.edu.icm.saos.search.analysis.solr.result.FacetSimpleValueConverter; import pl.edu.icm.saos.search.config.model.JudgmentIndexField; import com.google.common.collect.Lists; import com.google.common.collect.Maps; /** * @author madryk */ @Configuration public class AnalysisConfiguration { @Bean public Map<XField, String> fieldNamesMappings() { Map<XField, String> fieldNamesMappings = Maps.newHashMap(); fieldNamesMappings.put(XField.JUDGMENT_DATE, JudgmentIndexField.JUDGMENT_DATE.getFieldName()); fieldNamesMappings.put(XField.CC_APPEAL, JudgmentIndexField.CC_APPEAL_AREA.getFieldName()); fieldNamesMappings.put(XField.CC_REGION, JudgmentIndexField.CC_REGION_AREA.getFieldName()); fieldNamesMappings.put(XField.CC_DISTRICT, JudgmentIndexField.CC_DISTRICT_AREA.getFieldName()); return fieldNamesMappings; } @Autowired private FacetYearPeriodValueConverter facetYearPeriodValueConverter; @Autowired private FacetMonthPeriodValueConverter facetMonthPeriodValueConverter; @Autowired private FacetDayPeriodValueConverter facetDayPeriodValueConverter; @Autowired private FacetCcCourtAreaValueConverter facetCcCourtAreaValueConverter; @Autowired private FacetPrefixedValueConverter prefixedFacetValueConverter; @Autowired private FacetSimpleValueConverter simpleFacetValueConverter; @Bean public FacetValueConverterManager facetValueConverterManager() { List<FacetValueConverter> facetValueConverters = Lists.newArrayList( facetYearPeriodValueConverter, facetMonthPeriodValueConverter, facetDayPeriodValueConverter, facetCcCourtAreaValueConverter, prefixedFacetValueConverter, simpleFacetValueConverter); FacetValueConverterManager facetValueConverterManager = new FacetValueConverterManager(); facetValueConverterManager.setConverters(facetValueConverters); return facetValueConverterManager; } }