e371af1b026879fef0291aebe394524fce9def2f
[dcaegen2/services.git] /
1 /*
2 * ============LICENSE_START=======================================================
3 * ONAP : DATALAKE
4 * ================================================================================
5 * Copyright 2019 China Mobile
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.datalake.feeder.config;
22
23 import java.util.concurrent.locks.ReentrantReadWriteLock;
24
25 import org.springframework.boot.SpringBootConfiguration;
26 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
27 import org.springframework.boot.context.properties.ConfigurationProperties;
28
29 import lombok.Getter;
30 import lombok.Setter;
31
32 /**
33  * Mapping from src/main/resources/application.properties to Java configuration
34  * object
35  * 
36  * @author Guobiao Mo
37  *
38  */
39 @Getter
40 @Setter
41 @SpringBootConfiguration
42 @ConfigurationProperties
43 @EnableAutoConfiguration
44 public class ApplicationConfiguration {
45
46         final ReentrantReadWriteLock shutdownLock = new ReentrantReadWriteLock();
47         
48         //App general
49         private boolean async;
50         private boolean enableSSL;
51
52         private String timestampLabel;
53         private String rawDataLabel;
54
55         private String defaultTopicName;
56
57         //DMaaP
58         private String dmaapZookeeperHostPort;
59         private String dmaapKafkaHostPort;
60         private String dmaapKafkaGroup;
61         private String dmaapKafkaLogin;
62         private String dmaapKafkaPass;
63         private String dmaapKafkaSecurityProtocol;
64         
65         private long dmaapKafkaTimeout;
66         private String[] dmaapKafkaExclude;
67
68         private int dmaapCheckNewTopicInterval; //in millisecond
69
70         private int kafkaConsumerCount;
71
72         private String elasticsearchType;
73
74         //HDFS
75         private int hdfsBufferSize;     
76         private long hdfsFlushInterval;
77         private int hdfsBatchSize;
78
79         //Version
80         private String datalakeVersion;
81   
82         //Kibana
83         private String kibanaDashboardImportApi;
84         private Integer kibanaPort;
85 }