1 /*******************************************************************************
2 * ============LICENSE_START========================================================================
3 * ONAP : ccsdk feature sdnr wt
4 * =================================================================================================
5 * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6 * =================================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8 * in compliance with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software distributed under the License
13 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14 * or implied. See the License for the specific language governing permissions and limitations under
16 * ============LICENSE_END==========================================================================
17 ******************************************************************************/
19 package org.onap.ccsdk.features.sdnr.wt.mountpointregistrar.impl;
21 import org.onap.ccsdk.features.sdnr.wt.common.configuration.Configuration;
22 import org.onap.ccsdk.features.sdnr.wt.common.configuration.ConfigurationFileRepresentation;
24 public class PNFRegistrationConfig implements Configuration {
25 private static final String SECTION_MARKER = "pnfRegistration";
27 private static final String PROPERTY_KEY_CONSUMER_CLASS = "pnfRegConsumerClass";
28 private static final String DEFAULT_VALUE_CONSUMER_CLASS = "org.onap.ccsdk.features.sdnr.wt.mountpointregistrar.impl.DMaaPPNFRegVESMsgConsumer";
30 public static final String PROPERTY_KEY_CONSUMER_TRANSPORTTYPE = "TransportType";
31 private static final String DEFAULT_VALUE_CONSUMER_TRANSPORTTYPE = "HTTPNOAUTH";
33 public static final String PROPERTY_KEY_CONSUMER_PROTOCOL = "Protocol";
34 private static final String DEFAULT_VALUE_CONSUMER_PROTOCOL = "http";
36 public static final String PROPERTY_KEY_CONSUMER_USERNAME = "username";
37 private static final String DEFAULT_VALUE_CONSUMER_USERNAME = "username";
39 public static final String PROPERTY_KEY_CONSUMER_PASSWORD = "password";
40 private static final String DEFAULT_VALUE_CONSUMER_PASSWORD = "password";
42 public static final String PROPERTY_KEY_CONSUMER_HOST_PORT = "host";
43 private static final String DEFAULT_VALUE_CONSUMER_HOST_PORT = "onap-dmaap:3904";
45 public static final String PROPERTY_KEY_CONSUMER_TOPIC = "topic";
46 private static final String DEFAULT_VALUE_CONSUMER_TOPIC = "unauthenticated.VES_PNFREG_OUTPUT";
48 public static final String PROPERTY_KEY_CONSUMER_CONTENTTYPE = "contenttype";
49 private static final String DEFAULT_VALUE_CONSUMER_CONTENTTYPE = "application/json";
51 public static final String PROPERTY_KEY_CONSUMER_GROUP = "group";
52 private static final String DEFAULT_VALUE_CONSUMER_GROUP = "myG";
54 public static final String PROPERTY_KEY_CONSUMER_ID = "id";
55 private static final String DEFAULT_VALUE_CONSUMER_ID = "C1";
57 public static final String PROPERTY_KEY_CONSUMER_TIMEOUT = "timeout";
58 private static final String DEFAULT_VALUE_CONSUMER_TIMEOUT = "20000";
60 public static final String PROPERTY_KEY_CONSUMER_LIMIT = "limit";
61 private static final String DEFAULT_VALUE_CONSUMER_LIMIT = "10000";
63 public static final String PROPERTY_KEY_CONSUMER_FETCHPAUSE = "fetchPause";
64 private static final String DEFAULT_VALUE_CONSUMER_FETCHPAUSE = "5000";
66 public static final String PROPERTY_KEY_CONSUMER_CLIENT_READTIMEOUT="jersey.config.client.readTimeout";
67 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_READTIMEOUT="25000";
69 public static final String PROPERTY_KEY_CONSUMER_CLIENT_CONNECTTIMEOUT="jersey.config.client.connectTimeout";
70 private static final String DEFAULT_VALUE_CONSUMER_CLIENT_CONNECTTIMEOUT="25000";
72 private final ConfigurationFileRepresentation configuration;
74 public PNFRegistrationConfig(ConfigurationFileRepresentation configuration) {
75 this.configuration = configuration;
76 this.configuration.addSection(SECTION_MARKER);
80 public String getSectionName() {
81 return SECTION_MARKER;
85 public void defaults() {
87 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CLASS, DEFAULT_VALUE_CONSUMER_CLASS);
88 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_TRANSPORTTYPE, DEFAULT_VALUE_CONSUMER_TRANSPORTTYPE);
89 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_PROTOCOL, DEFAULT_VALUE_CONSUMER_PROTOCOL);
90 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_USERNAME, DEFAULT_VALUE_CONSUMER_USERNAME);
91 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_PASSWORD, DEFAULT_VALUE_CONSUMER_PASSWORD);
92 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_HOST_PORT, DEFAULT_VALUE_CONSUMER_HOST_PORT);
93 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_TOPIC, DEFAULT_VALUE_CONSUMER_TOPIC);
94 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CONTENTTYPE, DEFAULT_VALUE_CONSUMER_CONTENTTYPE);
95 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_GROUP, DEFAULT_VALUE_CONSUMER_GROUP);
96 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_ID, DEFAULT_VALUE_CONSUMER_ID);
97 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_TIMEOUT, DEFAULT_VALUE_CONSUMER_TIMEOUT);
98 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_LIMIT, DEFAULT_VALUE_CONSUMER_LIMIT);
99 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_FETCHPAUSE, DEFAULT_VALUE_CONSUMER_FETCHPAUSE);
100 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CLIENT_READTIMEOUT, DEFAULT_VALUE_CONSUMER_CLIENT_READTIMEOUT);
101 configuration.setPropertyIfNotAvailable(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CLIENT_CONNECTTIMEOUT, DEFAULT_VALUE_CONSUMER_CLIENT_CONNECTTIMEOUT);
104 public String getConsumerClass() {
105 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CLASS);
108 public String getHostPort() {
109 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_HOST_PORT);
112 public String getTransportType() {
113 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_TRANSPORTTYPE);
116 public String getProtocol() {
117 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_PROTOCOL);
120 public String getUsername() {
121 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_USERNAME);
124 public String getPassword() {
125 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_PASSWORD);
128 public String getTopic() {
129 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_TOPIC);
132 public String getConsumerGroup() {
133 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_GROUP);
136 public String getConsumerId() {
137 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_ID);
140 public String getTimeout() {
141 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_TIMEOUT);
144 public String getLimit() {
145 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_LIMIT);
148 public String getFetchPause() {
149 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_FETCHPAUSE);
152 public String getContenttype() {
153 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CONTENTTYPE);
156 public String getClientReadTimeout() {
157 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CLIENT_READTIMEOUT);
160 public String getClientConnectTimeout() {
161 return configuration.getProperty(SECTION_MARKER, PROPERTY_KEY_CONSUMER_CLIENT_CONNECTTIMEOUT);