Formatting Code base with ktlint
[ccsdk/cds.git] / ms / blueprintsprocessor / functions / netconf-executor / src / main / kotlin / org / onap / ccsdk / cds / blueprintsprocessor / functions / netconf / executor / api / NetconfMessage.kt
1 /*
2  * Copyright © 2019 Bell Canada
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.onap.ccsdk.cds.blueprintsprocessor.functions.netconf.executor.api
18
19 import org.onap.ccsdk.cds.blueprintsprocessor.functions.netconf.executor.utils.RpcStatus
20
21 data class DeviceResponse(
22     var status: String? = null,
23     var errorMessage: String? = null,
24     var responseMessage: String? = null,
25     var requestMessage: String? = null
26 ) {
27
28     fun isSuccess(): Boolean {
29         return this.status == RpcStatus.SUCCESS && this.errorMessage.isNullOrEmpty()
30     }
31 }
32
33 /**
34  * Creates an event of a given type and for the specified subject and the current time.
35  *
36  * @param type event type
37  * @param messagePayload message from the device
38  * @param messageId id of the message related to the event
39  * @param deviceInfo device of event
40  */
41 class NetconfReceivedEvent(
42     val type: Type,
43     val messagePayload: String = "",
44     val messageId: String = "",
45     val deviceInfo: DeviceInfo
46 ) {
47
48     enum class Type {
49         DEVICE_REPLY,
50         DEVICE_UNREGISTERED,
51         DEVICE_ERROR,
52         SESSION_CLOSED
53     }
54 }