SSLRestClientProperties does not allow ignoring hostname discrepancies with certificate,
[ccsdk/cds.git] / ms / blueprintsprocessor / modules / commons / rest-lib / src / main / kotlin / org / onap / ccsdk / cds / blueprintsprocessor / rest / BluePrintRestLibData.kt
1 /*
2  * Copyright © 2017-2018 AT&T Intellectual Property.
3  * Modifications Copyright © 2019 Huawei.
4  * Modifications Copyright © 2019 Bell Canada.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *     http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18
19 package org.onap.ccsdk.cds.blueprintsprocessor.rest
20
21 open class RestClientProperties {
22     lateinit var type: String
23     lateinit var url: String
24     var additionalHeaders: Map<String, String>? = null
25 }
26
27 open class SSLRestClientProperties : RestClientProperties() {
28     lateinit var keyStoreInstance: String // JKS, PKCS12
29     lateinit var sslTrust: String
30     lateinit var sslTrustPassword: String
31     var sslTrustIgnoreHostname: Boolean = false
32     var sslKey: String? = null
33     var sslKeyPassword: String? = null
34 }
35
36 // FIXME("Define basic auth userName and password properties")
37 open class SSLBasicAuthRestClientProperties : SSLRestClientProperties() {
38     var basicAuth: BasicAuthRestClientProperties? = null
39 }
40
41 // FIXME("Define token properties")
42 open class SSLTokenAuthRestClientProperties : SSLRestClientProperties() {
43     var tokenAuth: TokenAuthRestClientProperties? = null
44 }
45
46 open class BasicAuthRestClientProperties : RestClientProperties() {
47     lateinit var password: String
48     lateinit var username: String
49 }
50
51 open class TokenAuthRestClientProperties : RestClientProperties() {
52     var token: String? = null
53 }
54
55 open class DME2RestClientProperties : RestClientProperties() {
56     lateinit var service: String
57     lateinit var subContext: String
58     lateinit var version: String
59     lateinit var envContext: String
60     lateinit var routeOffer: String
61     var partner: String? = null
62     lateinit var appId: String
63 }
64
65 open class PolicyManagerRestClientProperties : RestClientProperties() {
66     lateinit var env: String
67     lateinit var clientAuth: String
68     lateinit var authorisation: String
69 }