source: SRUAggregator/trunk/src/main/java/eu/clarin/sru/fcs/aggregator/app/AggregatorConfiguration.java @ 6065

Last change on this file since 6065 was 6065, checked in by emanuel.dima@uni-tuebingen.de, 9 years ago
  1. alpha 25: removed unused iso-639-2 support and unused german tokenizer; fixed bug related to xml unencoding; changed weblicht config
File size: 2.3 KB
Line 
1package eu.clarin.sru.fcs.aggregator.app;
2
3import com.fasterxml.jackson.annotation.JsonIgnore;
4import com.fasterxml.jackson.annotation.JsonProperty;
5import io.dropwizard.Configuration;
6import java.net.URL;
7import java.util.List;
8import java.util.concurrent.TimeUnit;
9import org.hibernate.validator.constraints.NotEmpty;
10import org.hibernate.validator.constraints.Range;
11
12public class AggregatorConfiguration extends Configuration {
13
14        public static class Params {
15
16                @JsonProperty
17                String CENTER_REGISTRY_URL;
18
19                @JsonProperty
20                List<URL> additionalCQLEndpoints;
21
22                @NotEmpty
23                @JsonProperty
24                String AGGREGATOR_FILE_PATH;
25
26                @NotEmpty
27                @JsonProperty
28                String AGGREGATOR_FILE_PATH_BACKUP;
29
30                @JsonProperty
31                @Range
32                int SCAN_MAX_DEPTH;
33
34                @JsonProperty
35                @Range
36                long SCAN_TASK_INITIAL_DELAY;
37
38                @Range
39                @JsonProperty
40                int SCAN_TASK_INTERVAL;
41
42                @NotEmpty
43                @JsonProperty
44                String SCAN_TASK_TIME_UNIT;
45
46                @JsonProperty
47                @Range
48                int SCAN_MAX_CONCURRENT_REQUESTS_PER_ENDPOINT;
49
50                @JsonProperty
51                @Range
52                int SEARCH_MAX_CONCURRENT_REQUESTS_PER_ENDPOINT;
53
54                @JsonProperty
55                @Range
56                int ENDPOINTS_SCAN_TIMEOUT_MS;
57
58                @JsonProperty
59                @Range
60                int ENDPOINTS_SEARCH_TIMEOUT_MS;
61
62                @JsonProperty
63                @Range
64                long EXECUTOR_SHUTDOWN_TIMEOUT_MS;
65
66                public static class WeblichtConfig {
67                        @JsonProperty
68                        String url;
69
70                        @JsonProperty
71                        List<String> acceptedTcfLanguages;
72
73                        @JsonIgnore
74                        public String getUrl() {
75                                return url;
76                        }
77
78                        @JsonIgnore
79                        public List<String> getAcceptedTcfLanguages() {
80                                return acceptedTcfLanguages;
81                        }
82                }
83
84                @NotEmpty
85                @JsonProperty
86                WeblichtConfig weblichtConfig;
87
88                @JsonIgnore
89                public TimeUnit getScanTaskTimeUnit() {
90                        return TimeUnit.valueOf(SCAN_TASK_TIME_UNIT);
91                }
92
93                @JsonIgnore
94                public int getENDPOINTS_SCAN_TIMEOUT_MS() {
95                        return ENDPOINTS_SCAN_TIMEOUT_MS;
96                }
97
98                @JsonIgnore
99                public int getENDPOINTS_SEARCH_TIMEOUT_MS() {
100                        return ENDPOINTS_SEARCH_TIMEOUT_MS;
101                }
102
103                @JsonIgnore
104                public int getSCAN_MAX_CONCURRENT_REQUESTS_PER_ENDPOINT() {
105                        return SCAN_MAX_CONCURRENT_REQUESTS_PER_ENDPOINT;
106                }
107
108                @JsonIgnore
109                public int getSEARCH_MAX_CONCURRENT_REQUESTS_PER_ENDPOINT() {
110                        return SEARCH_MAX_CONCURRENT_REQUESTS_PER_ENDPOINT;
111                }
112
113                @JsonIgnore
114                public WeblichtConfig getWeblichtConfig() {
115                        return weblichtConfig;
116                }
117        }
118        public Params aggregatorParams = new Params();
119}
Note: See TracBrowser for help on using the repository browser.