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