27213c95a0e2f6c66116e752b17a17719aa49261
[dcaegen2/collectors/hv-ves.git] / hv-collector-utils / src / main / kotlin / org / onap / dcae / collectors / veshv / utils / commandline / CommandLineOption.kt
1 /*
2  * ============LICENSE_START=======================================================
3  * dcaegen2-collectors-veshv
4  * ================================================================================
5  * Copyright (C) 2018 NOKIA
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 package org.onap.dcae.collectors.veshv.utils.commandline
21
22 import org.apache.commons.cli.Option
23
24
25 enum class CommandLineOption(val option: Option) {
26     LISTEN_PORT(Option.builder("p")
27             .longOpt("listen-port")
28             .hasArg()
29             .desc("Listen port")
30             .build()
31     ),
32     CONSUL_CONFIG_URL(Option.builder("c")
33             .longOpt("config-url")
34             .hasArg()
35             .desc("URL of ves configuration on consul")
36             .build()
37     ),
38     CONSUL_FIRST_REQUEST_DELAY(Option.builder("d")
39             .longOpt("first-request-delay")
40             .hasArg()
41             .desc("Delay of first request to consul in seconds")
42             .build()
43     ),
44     VES_HV_PORT(Option.builder("p")
45             .longOpt("ves-port")
46             .required()
47             .hasArg()
48             .desc("VesHvCollector port")
49             .build()
50     ),
51     VES_HV_HOST(Option.builder("h")
52             .longOpt("ves-host")
53             .required()
54             .hasArg()
55             .desc("VesHvCollector host")
56             .build()
57     ),
58     MESSAGES_TO_SEND_AMOUNT(Option.builder("m")
59             .longOpt("messages")
60             .hasArg()
61             .desc("Amount of messages to send")
62             .build()
63     ),
64     KAFKA_SERVERS(Option.builder("s")
65             .longOpt("kafka-bootstrap-servers")
66             .required()
67             .hasArg()
68             .desc("Comma-separated Kafka bootstrap servers in <host>:<port> format")
69             .build()
70     ),
71     KAFKA_TOPICS(Option.builder("f")
72             .longOpt("kafka-topics")
73             .required()
74             .hasArg()
75             .desc("Comma-separated Kafka topics")
76             .build()
77     ),
78     SSL_DISABLE(Option.builder("l")
79             .longOpt("ssl-disable")
80             .desc("Disable SSL encryption")
81             .build()
82     ),
83     PRIVATE_KEY_FILE(Option.builder("k")
84             .longOpt("private-key-file")
85             .hasArg()
86             .desc("File with private key in PEM format")
87             .build()
88     ),
89     CERT_FILE(Option.builder("e")
90             .longOpt("cert-file")
91             .hasArg()
92             .desc("File with certificate bundle")
93             .build()
94     ),
95     TRUST_CERT_FILE(Option.builder("t")
96             .longOpt("trust-cert-file")
97             .hasArg()
98             .desc("File with trusted certificate bundle for trusting connections")
99             .build()
100     ),
101     IDLE_TIMEOUT_SEC(Option.builder("i")
102             .longOpt("idle-timeout-sec")
103             .hasArg()
104             .desc("""Idle timeout for remote hosts. After given time without any data exchange the
105                 |connection might be closed.""".trimMargin())
106             .build()
107     ),
108     DUMMY_MODE(Option.builder("d")
109             .longOpt("dummy")
110             .desc("If present will start in dummy mode (dummy external services)")
111             .build()
112     ),
113 }