2 * ============LICENSE_START========================================================================
3 * ONAP : ccsdk feature sdnr wt mountpoint-registrar
4 * =================================================================================================
5 * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6 * Copyright (C) 2021 Samsung Electronics Intellectual Property. All rights reserved.
7 * =================================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
9 * in compliance with the License. You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software distributed under the License
14 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
15 * or implied. See the License for the specific language governing permissions and limitations under
17 * ============LICENSE_END==========================================================================
21 package org.onap.ccsdk.features.sdnr.wt.mountpointregistrar.impl;
23 import org.onap.ccsdk.features.sdnr.wt.common.configuration.Configuration;
24 import org.onap.ccsdk.features.sdnr.wt.common.configuration.ConfigurationFileRepresentation;
26 public abstract class MessageConfig implements Configuration {
27 protected String sectionMarker;
29 public static final String PROPERTY_KEY_CONSUMER_TRANSPORTTYPE = "TransportType";
30 private static final String DEFAULT_VALUE_CONSUMER_TRANSPORTTYPE = "HTTPNOAUTH";
32 public static final String PROPERTY_KEY_CONSUMER_PROTOCOL = "Protocol";
33 private static final String DEFAULT_VALUE_CONSUMER_PROTOCOL = "http";
35 public static final String PROPERTY_KEY_CONSUMER_USERNAME = "username";
36 public static final String PROPERTY_KEY_CONSUMER_PASSWORD = "password";
38 public static final String PROPERTY_KEY_CONSUMER_HOST_PORT = "host";
39 private static final String DEFAULT_VALUE_CONSUMER_HOST_PORT = "onap-dmaap:3904";
41 public static final String PROPERTY_KEY_CONSUMER_TOPIC = "topic";
43 public static final String PROPERTY_KEY_CONSUMER_CONTENTTYPE = "contenttype";
44 private static final String DEFAULT_VALUE_CONSUMER_CONTENTTYPE = "application/json";
46 public static final String PROPERTY_KEY_CONSUMER_GROUP = "group";
47 private static final String DEFAULT_VALUE_CONSUMER_GROUP = "myG";
49 public static final String PROPERTY_KEY_CONSUMER_ID = "id";
50 private static final String DEFAULT_VALUE_CONSUMER_ID = "C1";
52 public static final String PROPERTY_KEY_CONSUMER_TIMEOUT = "timeout";
53 private static final String DEFAULT_VALUE_CONSUMER_TIMEOUT = "20000";
55 public static final String PROPERTY_KEY_CONSUMER_LIMIT = "limit";
56 private static final String DEFAULT_VALUE_CONSUMER_LIMIT = "10000";
58 public static final String PROPERTY_KEY_CONSUMER_FETCHPAUSE = "fetchPause";
59 private static final String DEFAULT_VALUE_CONSUMER_FETCHPAUSE = "5000";
61 public static final String PROPERTY_KEY_CONSUMER_CLIENT_READTIMEOUT = "jersey.config.client.readTimeout";
62 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_READTIMEOUT = "25000";
64 public static final String PROPERTY_KEY_CONSUMER_CLIENT_CONNECTTIMEOUT = "jersey.config.client.connectTimeout";
65 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_CONNECTTIMEOUT = "25000";
67 public static final String PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_AUTH_USER = "jersey.config.client.proxy.username";
68 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_HTTPPROXY_AUTH_USER = "${HTTP_PROXY_USERNAME}";
70 public static final String PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_AUTH_PASSWORD = "jersey.config.client.proxy.password";
71 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_HTTPPROXY_AUTH_PASSWORD = "${HTTP_PROXY_PASSWORD}";
73 public static final String PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_URI = "jersey.config.client.proxy.uri";
74 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_HTTPPROXY_URI = "${HTTP_PROXY_URI}";
76 protected ConfigurationFileRepresentation configuration;
78 public MessageConfig(ConfigurationFileRepresentation configuration) {
79 this.configuration = configuration;
83 public String getSectionName() {
88 public void defaults() {
89 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_TRANSPORTTYPE,
90 DEFAULT_VALUE_CONSUMER_TRANSPORTTYPE);
91 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_PROTOCOL,
92 DEFAULT_VALUE_CONSUMER_PROTOCOL);
93 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_HOST_PORT,
94 DEFAULT_VALUE_CONSUMER_HOST_PORT);
95 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_CONTENTTYPE,
96 DEFAULT_VALUE_CONSUMER_CONTENTTYPE);
97 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_GROUP,
98 DEFAULT_VALUE_CONSUMER_GROUP);
99 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_ID, DEFAULT_VALUE_CONSUMER_ID);
100 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_TIMEOUT,
101 DEFAULT_VALUE_CONSUMER_TIMEOUT);
102 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_LIMIT,
103 DEFAULT_VALUE_CONSUMER_LIMIT);
104 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_FETCHPAUSE,
105 DEFAULT_VALUE_CONSUMER_FETCHPAUSE);
106 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_READTIMEOUT,
107 DEFAULT_VALUE_CONSUMER_CLIENT_READTIMEOUT);
108 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_CONNECTTIMEOUT,
109 DEFAULT_VALUE_CONSUMER_CLIENT_CONNECTTIMEOUT);
110 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_AUTH_USER,
111 DEFAULT_VALUE_CONSUMER_CLIENT_HTTPPROXY_AUTH_USER);
112 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_AUTH_PASSWORD,
113 DEFAULT_VALUE_CONSUMER_CLIENT_HTTPPROXY_AUTH_PASSWORD);
114 configuration.setPropertyIfNotAvailable(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_URI,
115 DEFAULT_VALUE_CONSUMER_CLIENT_HTTPPROXY_URI);
120 public String getHostPort() {
121 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_HOST_PORT);
124 public String getTransportType() {
125 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_TRANSPORTTYPE);
128 public String getProtocol() {
129 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_PROTOCOL);
132 public String getUsername() {
133 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_USERNAME);
136 public String getPassword() {
137 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_PASSWORD);
140 public String getTopic() {
141 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_TOPIC);
144 public String getConsumerGroup() {
145 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_GROUP);
148 public String getConsumerId() {
149 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_ID);
152 public String getTimeout() {
153 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_TIMEOUT);
156 public String getLimit() {
157 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_LIMIT);
160 public String getFetchPause() {
161 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_FETCHPAUSE);
164 public String getContenttype() {
165 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_CONTENTTYPE);
168 public String getClientReadTimeout() {
169 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_READTIMEOUT);
172 public String getClientConnectTimeout() {
173 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_CONNECTTIMEOUT);
176 public String getHTTPProxyURI() {
177 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_URI);
180 public String getHTTPProxyUsername() {
181 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_AUTH_USER);
184 public String getHTTPProxyPassword() {
185 return configuration.getProperty(sectionMarker, PROPERTY_KEY_CONSUMER_CLIENT_HTTPPROXY_AUTH_PASSWORD);