1 package org.onap.aai.sparky.util;
3 import java.util.HashSet;
6 import org.onap.aai.sparky.config.oxm.CrossEntityReferenceLookup;
7 import org.onap.aai.sparky.config.oxm.GeoEntityLookup;
8 import org.onap.aai.sparky.config.oxm.OxmEntityLookup;
9 import org.onap.aai.sparky.config.oxm.OxmModelLoader;
10 import org.onap.aai.sparky.config.oxm.OxmModelProcessor;
11 import org.onap.aai.sparky.config.oxm.SearchableEntityLookup;
12 import org.onap.aai.sparky.config.oxm.SuggestionEntityLookup;
13 import org.onap.aai.sparky.search.filters.config.FiltersConfig;
15 public class OxmModelAndProcessorHelper {
17 private static final int API_VERSION_OVERRIDE = -1;
19 private OxmModelLoader modelLoader;
20 private Set<OxmModelProcessor> processors;
22 private CrossEntityReferenceLookup crossEntityReferenceLookup;
23 private GeoEntityLookup geoEntityLookup;
24 private OxmEntityLookup oxmEntityLookup;
25 private SearchableEntityLookup searchableEntityLookup;
26 private SuggestionEntityLookup suggestionEntityLookup;
27 private FiltersConfig filtersConfig;
29 private static OxmModelAndProcessorHelper instance = null;
30 private OxmModelAndProcessorHelper() {
32 this.filtersConfig = new FiltersConfig(SparkyTestConstants.FILTERS_JSON_FILE, SparkyTestConstants.VIEWS_JSON_FILE);
34 this.crossEntityReferenceLookup = new CrossEntityReferenceLookup();
35 this.geoEntityLookup = new GeoEntityLookup();
36 this.oxmEntityLookup = new OxmEntityLookup();
37 this.searchableEntityLookup = new SearchableEntityLookup();
38 this.suggestionEntityLookup = new SuggestionEntityLookup(filtersConfig);
40 this.processors = new HashSet<OxmModelProcessor>();
41 processors.add(crossEntityReferenceLookup);
42 processors.add(geoEntityLookup);
43 processors.add(oxmEntityLookup);
44 processors.add(searchableEntityLookup);
45 processors.add(suggestionEntityLookup);
47 this.modelLoader = new OxmModelLoader(API_VERSION_OVERRIDE, processors);
48 modelLoader.loadLatestOxmModel();
51 public static OxmModelAndProcessorHelper getInstance() {
52 if (instance == null) {
53 instance = new OxmModelAndProcessorHelper();
58 public OxmModelLoader getModelLoader() {
62 public void setModelLoader(OxmModelLoader modelLoader) {
63 this.modelLoader = modelLoader;
66 public Set<OxmModelProcessor> getProcessors() {
70 public void setProcessors(Set<OxmModelProcessor> processors) {
71 this.processors = processors;
74 public CrossEntityReferenceLookup getCrossEntityReferenceLookup() {
75 return crossEntityReferenceLookup;
78 public void setCrossEntityReferenceLookup(CrossEntityReferenceLookup crossEntityReferenceLookup) {
79 this.crossEntityReferenceLookup = crossEntityReferenceLookup;
82 public GeoEntityLookup getGeoEntityLookup() {
83 return geoEntityLookup;
86 public void setGeoEntityLookup(GeoEntityLookup geoEntityLookup) {
87 this.geoEntityLookup = geoEntityLookup;
90 public OxmEntityLookup getOxmEntityLookup() {
91 return oxmEntityLookup;
94 public void setOxmEntityLookup(OxmEntityLookup oxmEntityLookup) {
95 this.oxmEntityLookup = oxmEntityLookup;
98 public SearchableEntityLookup getSearchableEntityLookup() {
99 return searchableEntityLookup;
102 public void setSearchableEntityLookup(SearchableEntityLookup searchableEntityLookup) {
103 this.searchableEntityLookup = searchableEntityLookup;
106 public SuggestionEntityLookup getSuggestionEntityLookup() {
107 return suggestionEntityLookup;
110 public void setSuggestionEntityLookup(SuggestionEntityLookup suggestionEntityLookup) {
111 this.suggestionEntityLookup = suggestionEntityLookup;
114 public FiltersConfig getFiltersConfig() {
115 return filtersConfig;
118 public void setFiltersConfig(FiltersConfig filtersConfig) {
119 this.filtersConfig = filtersConfig;