2dadcf23aace5add9c28d3a82d2fcb835062fb6e
[dcaegen2/analytics/tca.git] / dcae-analytics-cdap-tca / src / main / java / org / openecomp / dcae / apod / analytics / cdap / tca / settings / TCAAppPreferences.java
1 /*\r
2  * ===============================LICENSE_START======================================\r
3  *  dcae-analytics\r
4  * ================================================================================\r
5  *    Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
6  * ================================================================================\r
7  *  Licensed under the Apache License, Version 2.0 (the "License");\r
8  *  you may not use this file except in compliance with the License.\r
9  *   You may obtain a copy of the License at\r
10  *\r
11  *          http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  *  Unless required by applicable law or agreed to in writing, software\r
14  *  distributed under the License is distributed on an "AS IS" BASIS,\r
15  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  *  See the License for the specific language governing permissions and\r
17  *  limitations under the License.\r
18  *  ============================LICENSE_END===========================================\r
19  */\r
20 \r
21 package org.openecomp.dcae.apod.analytics.cdap.tca.settings;\r
22 \r
23 import com.google.common.base.Objects;\r
24 import org.openecomp.dcae.apod.analytics.cdap.common.settings.CDAPAppPreferences;\r
25 import org.openecomp.dcae.apod.analytics.common.AnalyticsConstants;\r
26 \r
27 /**\r
28  * <p>\r
29  *     App Preferences for Analytics TCA (Threshold Crossing Alert) App\r
30  * <p>\r
31  * @author Rajiv Singla . Creation Date: 10/4/2016.\r
32  */\r
33 public class TCAAppPreferences implements CDAPAppPreferences {\r
34 \r
35     private static final long serialVersionUID = 1L;\r
36 \r
37     // subscriber preferences\r
38     protected String subscriberHostName;\r
39 \r
40     protected Integer subscriberHostPort;\r
41 \r
42     protected String subscriberTopicName;\r
43 \r
44     protected String subscriberProtocol;\r
45 \r
46     protected String subscriberUserName;\r
47 \r
48     protected String subscriberUserPassword;\r
49 \r
50     protected String subscriberContentType;\r
51 \r
52     protected String subscriberConsumerId;\r
53 \r
54     protected String subscriberConsumerGroup;\r
55 \r
56     protected Integer subscriberTimeoutMS;\r
57 \r
58     protected Integer subscriberMessageLimit;\r
59 \r
60     protected Integer subscriberPollingInterval;\r
61 \r
62     // publisher preferences\r
63     protected String publisherHostName;\r
64 \r
65     protected Integer publisherHostPort;\r
66 \r
67     protected String publisherTopicName;\r
68 \r
69     protected String publisherProtocol;\r
70 \r
71     protected String publisherUserName;\r
72 \r
73     protected String publisherUserPassword;\r
74 \r
75     protected String publisherContentType;\r
76 \r
77     protected Integer publisherMaxBatchSize;\r
78 \r
79     protected Integer publisherMaxRecoveryQueueSize;\r
80 \r
81     protected Integer publisherPollingInterval;\r
82 \r
83     protected Boolean enableAlertCEFFormat;\r
84 \r
85 \r
86     // A&AI Enrichment\r
87 \r
88     protected Boolean enableAAIEnrichment;\r
89 \r
90     protected String aaiEnrichmentHost;\r
91 \r
92     protected Integer aaiEnrichmentPortNumber;\r
93 \r
94     protected String aaiEnrichmentProtocol;\r
95 \r
96     protected String aaiEnrichmentUserName;\r
97 \r
98     protected String aaiEnrichmentUserPassword;\r
99 \r
100     protected Boolean aaiEnrichmentIgnoreSSLCertificateErrors;\r
101 \r
102     protected String aaiVNFEnrichmentAPIPath;\r
103 \r
104     protected String aaiVMEnrichmentAPIPath;\r
105 \r
106 \r
107     // A&AI Enrichment Proxy\r
108 \r
109     protected String aaiEnrichmentProxyURL;\r
110 \r
111     /**\r
112      * Default constructor to setup default values for TCA App Preferences\r
113      */\r
114     public TCAAppPreferences() {\r
115 \r
116         // subscriber defaults\r
117         subscriberPollingInterval = AnalyticsConstants.TCA_DEFAULT_SUBSCRIBER_POLLING_INTERVAL_MS;\r
118 \r
119         // publisher defaults\r
120         publisherMaxBatchSize = AnalyticsConstants.TCA_DEFAULT_PUBLISHER_MAX_BATCH_QUEUE_SIZE;\r
121         publisherMaxRecoveryQueueSize = AnalyticsConstants.TCA_DEFAULT_PUBLISHER_MAX_RECOVERY_QUEUE_SIZE;\r
122         publisherPollingInterval = AnalyticsConstants.TCA_DEFAULT_PUBLISHER_POLLING_INTERVAL_MS;\r
123 \r
124         enableAlertCEFFormat = AnalyticsConstants.TCA_DEFAULT_ENABLE_CEF_FORMATTED_ALERT;\r
125 \r
126         enableAAIEnrichment = AnalyticsConstants.TCA_DEFAULT_ENABLE_AAI_ENRICHMENT;\r
127         aaiEnrichmentIgnoreSSLCertificateErrors =\r
128                 AnalyticsConstants.TCA_DEFAULT_AAI_ENRICHMENT_IGNORE_SSL_CERTIFICATE_ERRORS;\r
129         aaiEnrichmentProxyURL = AnalyticsConstants.TCA_DEFAULT_AAI_ENRICHMENT_PROXY_URL;\r
130 \r
131     }\r
132 \r
133     public String getSubscriberHostName() {\r
134         return subscriberHostName;\r
135     }\r
136 \r
137     public Integer getSubscriberHostPort() {\r
138         return subscriberHostPort;\r
139     }\r
140 \r
141     public String getSubscriberTopicName() {\r
142         return subscriberTopicName;\r
143     }\r
144 \r
145     public String getSubscriberProtocol() {\r
146         return subscriberProtocol;\r
147     }\r
148 \r
149     public String getSubscriberUserName() {\r
150         return subscriberUserName;\r
151     }\r
152 \r
153     public String getSubscriberUserPassword() {\r
154         return subscriberUserPassword;\r
155     }\r
156 \r
157     public String getSubscriberContentType() {\r
158         return subscriberContentType;\r
159     }\r
160 \r
161     public String getSubscriberConsumerId() {\r
162         return subscriberConsumerId;\r
163     }\r
164 \r
165     public String getSubscriberConsumerGroup() {\r
166         return subscriberConsumerGroup;\r
167     }\r
168 \r
169     public Integer getSubscriberTimeoutMS() {\r
170         return subscriberTimeoutMS;\r
171     }\r
172 \r
173     public Integer getSubscriberMessageLimit() {\r
174         return subscriberMessageLimit;\r
175     }\r
176 \r
177     public Integer getSubscriberPollingInterval() {\r
178         return subscriberPollingInterval;\r
179     }\r
180 \r
181     public String getPublisherHostName() {\r
182         return publisherHostName;\r
183     }\r
184 \r
185     public Integer getPublisherHostPort() {\r
186         return publisherHostPort;\r
187     }\r
188 \r
189     public String getPublisherTopicName() {\r
190         return publisherTopicName;\r
191     }\r
192 \r
193     public String getPublisherProtocol() {\r
194         return publisherProtocol;\r
195     }\r
196 \r
197     public String getPublisherUserName() {\r
198         return publisherUserName;\r
199     }\r
200 \r
201     public String getPublisherUserPassword() {\r
202         return publisherUserPassword;\r
203     }\r
204 \r
205     public String getPublisherContentType() {\r
206         return publisherContentType;\r
207     }\r
208 \r
209     public Integer getPublisherMaxBatchSize() {\r
210         return publisherMaxBatchSize;\r
211     }\r
212 \r
213     public Integer getPublisherMaxRecoveryQueueSize() {\r
214         return publisherMaxRecoveryQueueSize;\r
215     }\r
216 \r
217     public Integer getPublisherPollingInterval() {\r
218         return publisherPollingInterval;\r
219     }\r
220 \r
221     public Boolean getEnableAlertCEFFormat() {\r
222         return enableAlertCEFFormat;\r
223     }\r
224 \r
225 \r
226     public void setSubscriberHostName(String subscriberHostName) {\r
227         this.subscriberHostName = subscriberHostName;\r
228     }\r
229 \r
230     public void setSubscriberHostPort(Integer subscriberHostPort) {\r
231         this.subscriberHostPort = subscriberHostPort;\r
232     }\r
233 \r
234     public void setSubscriberTopicName(String subscriberTopicName) {\r
235         this.subscriberTopicName = subscriberTopicName;\r
236     }\r
237 \r
238     public void setSubscriberProtocol(String subscriberProtocol) {\r
239         this.subscriberProtocol = subscriberProtocol;\r
240     }\r
241 \r
242     public void setSubscriberUserName(String subscriberUserName) {\r
243         this.subscriberUserName = subscriberUserName;\r
244     }\r
245 \r
246     public void setSubscriberUserPassword(String subscriberUserPassword) {\r
247         this.subscriberUserPassword = subscriberUserPassword;\r
248     }\r
249 \r
250     public void setPublisherHostName(String publisherHostName) {\r
251         this.publisherHostName = publisherHostName;\r
252     }\r
253 \r
254     public void setPublisherHostPort(Integer publisherHostPort) {\r
255         this.publisherHostPort = publisherHostPort;\r
256     }\r
257 \r
258     public void setPublisherTopicName(String publisherTopicName) {\r
259         this.publisherTopicName = publisherTopicName;\r
260     }\r
261 \r
262     public void setPublisherProtocol(String publisherProtocol) {\r
263         this.publisherProtocol = publisherProtocol;\r
264     }\r
265 \r
266     public void setPublisherUserName(String publisherUserName) {\r
267         this.publisherUserName = publisherUserName;\r
268     }\r
269 \r
270     public void setPublisherUserPassword(String publisherUserPassword) {\r
271         this.publisherUserPassword = publisherUserPassword;\r
272     }\r
273 \r
274     public Boolean getEnableAAIEnrichment() {\r
275         return enableAAIEnrichment;\r
276     }\r
277 \r
278     public String getAaiEnrichmentHost() {\r
279         return aaiEnrichmentHost;\r
280     }\r
281 \r
282     public Integer getAaiEnrichmentPortNumber() {\r
283         return aaiEnrichmentPortNumber;\r
284     }\r
285 \r
286     public String getAaiEnrichmentProtocol() {\r
287         return aaiEnrichmentProtocol;\r
288     }\r
289 \r
290     public String getAaiEnrichmentUserName() {\r
291         return aaiEnrichmentUserName;\r
292     }\r
293 \r
294     public String getAaiEnrichmentUserPassword() {\r
295         return aaiEnrichmentUserPassword;\r
296     }\r
297 \r
298     public Boolean getAaiEnrichmentIgnoreSSLCertificateErrors() {\r
299         return aaiEnrichmentIgnoreSSLCertificateErrors;\r
300     }\r
301 \r
302     public String getAaiVNFEnrichmentAPIPath() {\r
303         return aaiVNFEnrichmentAPIPath;\r
304     }\r
305 \r
306     public String getAaiVMEnrichmentAPIPath() {\r
307         return aaiVMEnrichmentAPIPath;\r
308     }\r
309 \r
310     public String getAaiEnrichmentProxyURL() {\r
311         return aaiEnrichmentProxyURL;\r
312     }\r
313 \r
314     @Override\r
315     public String toString() {\r
316         return Objects.toStringHelper(this)\r
317                 .add("subscriberHostName", subscriberHostName)\r
318                 .add("subscriberHostPort", subscriberHostPort)\r
319                 .add("subscriberTopicName", subscriberTopicName)\r
320                 .add("subscriberProtocol", subscriberProtocol)\r
321                 .add("subscriberUserName", subscriberUserName)\r
322                 .add("subscriberContentType", subscriberContentType)\r
323                 .add("subscriberConsumerId", subscriberConsumerId)\r
324                 .add("subscriberConsumerGroup", subscriberConsumerGroup)\r
325                 .add("subscriberTimeoutMS", subscriberTimeoutMS)\r
326                 .add("subscriberMessageLimit", subscriberMessageLimit)\r
327                 .add("subscriberPollingInterval", subscriberPollingInterval)\r
328                 .add("publisherHostName", publisherHostName)\r
329                 .add("publisherHostPort", publisherHostPort)\r
330                 .add("publisherTopicName", publisherTopicName)\r
331                 .add("publisherProtocol", publisherProtocol)\r
332                 .add("publisherUserName", publisherUserName)\r
333                 .add("publisherContentType", publisherContentType)\r
334                 .add("publisherMaxBatchSize", publisherMaxBatchSize)\r
335                 .add("publisherMaxRecoveryQueueSize", publisherMaxRecoveryQueueSize)\r
336                 .add("publisherPollingInterval", publisherPollingInterval)\r
337                 .add("enableAlertCEFFormat", enableAlertCEFFormat)\r
338                 .add("enableAAIEnrichment", enableAAIEnrichment)\r
339                 .add("aaiEnrichmentHost", aaiEnrichmentHost)\r
340                 .add("aaiEnrichmentPortNumber", aaiEnrichmentPortNumber)\r
341                 .add("aaiEnrichmentProtocol", aaiEnrichmentProtocol)\r
342                 .add("aaiEnrichmentUserName", aaiEnrichmentUserName)\r
343                 .add("aaiEnrichmentIgnoreSSLCertificateErrors", aaiEnrichmentIgnoreSSLCertificateErrors)\r
344                 .add("aaiVNFEnrichmentAPIPath", aaiVNFEnrichmentAPIPath)\r
345                 .add("aaiVMEnrichmentAPIPath", aaiVMEnrichmentAPIPath)\r
346                 .add("aaiEnrichmentProxyEnabled", aaiEnrichmentProxyURL == null ? "false" : "true")\r
347                 .toString();\r
348     }\r
349 }\r