25c9629ad0f38473a4275bc42543d423e64d4473
[pti/o2.git] / o2ims / domain / commands.py
1 # Copyright (C) 2021 Wind River Systems, Inc.
2 #
3 #  Licensed under the Apache License, Version 2.0 (the "License");
4 #  you may not use this file except in compliance with the License.
5 #  You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #  Unless required by applicable law or agreed to in writing, software
10 #  distributed under the License is distributed on an "AS IS" BASIS,
11 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #  See the License for the specific language governing permissions and
13 #  limitations under the License.
14
15 # pylint: disable=too-few-public-methods
16 # from datetime import date
17 from dataclasses import dataclass
18 # from typing import List
19
20 from o2ims.domain.stx_object import StxGenericModel
21 from o2ims.domain.alarm_obj import AlarmEvent2SMO, FaultGenericModel
22 from o2ims.domain.subscription_obj import Message2SMO, RegistrationMessage
23 # from o2ims.domain.resource_type import ResourceTypeEnum
24 from o2common.domain.commands import Command
25
26
27 @dataclass
28 class UpdateStxObject(Command):
29     data: StxGenericModel
30
31
32 @dataclass
33 class UpdateFaultObject(Command):
34     data: FaultGenericModel
35
36
37 @dataclass
38 class PubMessage2SMO(Command):
39     data: Message2SMO
40
41
42 @dataclass
43 class PubAlarm2SMO(Command):
44     data: AlarmEvent2SMO
45
46
47 @dataclass
48 class Register2SMO(Command):
49     data: RegistrationMessage
50
51
52 @dataclass
53 class UpdateOCloud(UpdateStxObject):
54     pass
55
56
57 @dataclass
58 class UpdateDms(UpdateStxObject):
59     parentid: str
60
61
62 @dataclass
63 class UpdateResourcePool(UpdateStxObject):
64     parentid: str
65
66
67 @dataclass
68 class UpdateResourceType(UpdateStxObject):
69     parentid: str
70
71
72 @dataclass
73 class UpdateResource(UpdateStxObject):
74     parentid: str
75
76
77 @dataclass
78 class UpdatePserver(UpdateResource):
79     pass
80
81
82 @dataclass
83 class UpdatePserverCpu(UpdateResource):
84     pass
85
86
87 @dataclass
88 class UpdatePserverMem(UpdateResource):
89     pass
90
91
92 @dataclass
93 class UpdatePserverEth(UpdateResource):
94     pass
95
96
97 @dataclass
98 class UpdatePserverIf(UpdateResource):
99     pass
100
101
102 @dataclass
103 class UpdatePserverIfPort(UpdateResource):
104     pass
105
106
107 @dataclass
108 class UpdateAlarm(UpdateFaultObject):
109     pass