Completed
Pull Request — master (#406)
by Denis
03:42
created

AuditSecurityEvent   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 7
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 7
ccs 4
cts 4
cp 1
rs 10
c 0
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A __init__() 0 3 1
1
"""
2
Autogenerated code from xml spec
3
"""
4
5 1
from opcua import ua
6 1
from opcua.common.events import Event
7
8 1
class BaseEvent(Event):
9
    """
10
    BaseEvent: The base type for all events.
11
    """
12 1
    def __init__(self, sourcenode=None, message=None, severity=1):
13 1
        Event.__init__(self)
14 1
        self.add_property('EventId', None, ua.VariantType.ByteString)
15 1
        self.add_property('EventType', ua.NodeId(ua.ObjectIds.BaseEventType), ua.VariantType.NodeId)
16 1
        self.add_property('SourceNode', sourcenode, ua.VariantType.NodeId)
17 1
        self.add_property('SourceName', None, ua.VariantType.String)
18 1
        self.add_property('Time', None, ua.VariantType.DateTime)
19 1
        self.add_property('ReceiveTime', None, ua.VariantType.DateTime)
20 1
        self.add_property('LocalTime', None, ua.VariantType.DateTime)
21 1
        self.add_property('Message', ua.LocalizedText(message), ua.VariantType.LocalizedText)
22 1
        self.add_property('Severity', severity, ua.VariantType.UInt16)
23
24 1
class AuditEvent(BaseEvent):
25
    """
26
    AuditEvent: A base type for events used to track client initiated changes to the server state.
27
    """
28 1
    def __init__(self, sourcenode=None, message=None, severity=1):
29 1
        super(AuditEvent, self).__init__(sourcenode, message, severity)
30 1
        self.EventType = ua.NodeId(ua.ObjectIds.AuditEventType)
31 1
        self.add_property('ActionTimeStamp', None, ua.NodeId(ua.ObjectIds.UtcTime))
32 1
        self.add_property('Status', False, ua.VariantType.Boolean)
33 1
        self.add_property('ServerId', None, ua.VariantType.String)
34 1
        self.add_property('ClientAuditEntryId', None, ua.VariantType.String)
35 1
        self.add_property('ClientUserId', None, ua.VariantType.String)
36
37 1
class AuditSecurityEvent(AuditEvent):
38
    """
39
    AuditSecurityEvent: A base type for events used to track security related changes.
40
    """
41 1
    def __init__(self, sourcenode=None, message=None, severity=1):
42 1
        super(AuditSecurityEvent, self).__init__(sourcenode, message, severity)
43 1
        self.EventType = ua.NodeId(ua.ObjectIds.AuditSecurityEventType)
44
45 1
class AuditChannelEvent(AuditSecurityEvent):
46
    """
47
    AuditChannelEvent: A base type for events used to track related changes to a secure channel.
48
    """
49 1
    def __init__(self, sourcenode=None, message=None, severity=1):
50 1
        super(AuditChannelEvent, self).__init__(sourcenode, message, severity)
51 1
        self.EventType = ua.NodeId(ua.ObjectIds.AuditChannelEventType)
52 1
        self.add_property('SecureChannelId', None, ua.VariantType.String)
53
54 1
class AuditOpenSecureChannelEvent(AuditChannelEvent):
55
    """
56
    AuditOpenSecureChannelEvent: An event that is raised when a secure channel is opened.
57
    """
58 1
    def __init__(self, sourcenode=None, message=None, severity=1):
59 1
        super(AuditOpenSecureChannelEvent, self).__init__(sourcenode, message, severity)
60 1
        self.EventType = ua.NodeId(ua.ObjectIds.AuditOpenSecureChannelEventType)
61 1
        self.add_property('ClientCertificate', None, ua.VariantType.ByteString)
62 1
        self.add_property('ClientCertificateThumbprint', None, ua.VariantType.String)
63 1
        self.add_property('RequestType', None, ua.NodeId(ua.ObjectIds.SecurityTokenRequestType))
64 1
        self.add_property('SecurityPolicyUri', None, ua.VariantType.String)
65 1
        self.add_property('SecurityMode', None, ua.NodeId(ua.ObjectIds.MessageSecurityMode))
66 1
        self.add_property('RequestedLifetime', None, ua.NodeId(ua.ObjectIds.Duration))
67
68 1
class AuditSessionEvent(AuditSecurityEvent):
69
    """
70
    AuditSessionEvent: A base type for events used to track related changes to a session.
71
    """
72 1
    def __init__(self, sourcenode=None, message=None, severity=1):
73
        super(AuditSessionEvent, self).__init__(sourcenode, message, severity)
74
        self.EventType = ua.NodeId(ua.ObjectIds.AuditSessionEventType)
75
        self.add_property('SessionId', ua.NodeId(ua.ObjectIds.AuditSessionEventType), ua.VariantType.NodeId)
76
77 1
class AuditCreateSessionEvent(AuditSessionEvent):
78
    """
79
    AuditCreateSessionEvent: An event that is raised when a session is created.
80
    """
81 1
    def __init__(self, sourcenode=None, message=None, severity=1):
82
        super(AuditCreateSessionEvent, self).__init__(sourcenode, message, severity)
83
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCreateSessionEventType)
84
        self.add_property('SecureChannelId', None, ua.VariantType.String)
85
        self.add_property('ClientCertificate', None, ua.VariantType.ByteString)
86
        self.add_property('ClientCertificateThumbprint', None, ua.VariantType.String)
87
        self.add_property('RevisedSessionTimeout', None, ua.NodeId(ua.ObjectIds.Duration))
88
89 1
class AuditActivateSessionEvent(AuditSessionEvent):
90
    """
91
    AuditActivateSessionEvent: 
92
    """
93 1
    def __init__(self, sourcenode=None, message=None, severity=1):
94
        super(AuditActivateSessionEvent, self).__init__(sourcenode, message, severity)
95
        self.EventType = ua.NodeId(ua.ObjectIds.AuditActivateSessionEventType)
96
        self.add_property('ClientSoftwareCertificates', None, ua.NodeId(ua.ObjectIds.SignedSoftwareCertificate))
97
        self.add_property('UserIdentityToken', None, ua.NodeId(ua.ObjectIds.UserIdentityToken))
98
        self.add_property('SecureChannelId', None, ua.VariantType.String)
99
100 1
class AuditCancelEvent(AuditSessionEvent):
101
    """
102
    AuditCancelEvent: 
103
    """
104 1
    def __init__(self, sourcenode=None, message=None, severity=1):
105
        super(AuditCancelEvent, self).__init__(sourcenode, message, severity)
106
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCancelEventType)
107
        self.add_property('RequestHandle', None, ua.VariantType.UInt32)
108
109 1
class AuditCertificateEvent(AuditSecurityEvent):
110
    """
111
    AuditCertificateEvent: 
112
    """
113 1
    def __init__(self, sourcenode=None, message=None, severity=1):
114
        super(AuditCertificateEvent, self).__init__(sourcenode, message, severity)
115
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateEventType)
116
        self.add_property('Certificate', None, ua.VariantType.ByteString)
117
118 1
class AuditCertificateDataMismatchEvent(AuditCertificateEvent):
119
    """
120
    AuditCertificateDataMismatchEvent: 
121
    """
122 1
    def __init__(self, sourcenode=None, message=None, severity=1):
123
        super(AuditCertificateDataMismatchEvent, self).__init__(sourcenode, message, severity)
124
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateDataMismatchEventType)
125
        self.add_property('InvalidHostname', None, ua.VariantType.String)
126
        self.add_property('InvalidUri', None, ua.VariantType.String)
127
128 1
class AuditCertificateExpiredEvent(AuditCertificateEvent):
129
    """
130
    AuditCertificateExpiredEvent: 
131
    """
132 1
    def __init__(self, sourcenode=None, message=None, severity=1):
133
        super(AuditCertificateExpiredEvent, self).__init__(sourcenode, message, severity)
134
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateExpiredEventType)
135
136 1
class AuditCertificateInvalidEvent(AuditCertificateEvent):
137
    """
138
    AuditCertificateInvalidEvent: 
139
    """
140 1
    def __init__(self, sourcenode=None, message=None, severity=1):
141
        super(AuditCertificateInvalidEvent, self).__init__(sourcenode, message, severity)
142
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateInvalidEventType)
143
144 1
class AuditCertificateUntrustedEvent(AuditCertificateEvent):
145
    """
146
    AuditCertificateUntrustedEvent: 
147
    """
148 1
    def __init__(self, sourcenode=None, message=None, severity=1):
149
        super(AuditCertificateUntrustedEvent, self).__init__(sourcenode, message, severity)
150
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateUntrustedEventType)
151
152 1
class AuditCertificateRevokedEvent(AuditCertificateEvent):
153
    """
154
    AuditCertificateRevokedEvent: 
155
    """
156 1
    def __init__(self, sourcenode=None, message=None, severity=1):
157
        super(AuditCertificateRevokedEvent, self).__init__(sourcenode, message, severity)
158
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateRevokedEventType)
159
160 1
class AuditCertificateMismatchEvent(AuditCertificateEvent):
161
    """
162
    AuditCertificateMismatchEvent: 
163
    """
164 1
    def __init__(self, sourcenode=None, message=None, severity=1):
165
        super(AuditCertificateMismatchEvent, self).__init__(sourcenode, message, severity)
166
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateMismatchEventType)
167
168 1
class AuditNodeManagementEvent(AuditEvent):
169
    """
170
    AuditNodeManagementEvent: 
171
    """
172 1
    def __init__(self, sourcenode=None, message=None, severity=1):
173
        super(AuditNodeManagementEvent, self).__init__(sourcenode, message, severity)
174
        self.EventType = ua.NodeId(ua.ObjectIds.AuditNodeManagementEventType)
175
176 1
class AuditAddNodesEvent(AuditNodeManagementEvent):
177
    """
178
    AuditAddNodesEvent: 
179
    """
180 1
    def __init__(self, sourcenode=None, message=None, severity=1):
181
        super(AuditAddNodesEvent, self).__init__(sourcenode, message, severity)
182
        self.EventType = ua.NodeId(ua.ObjectIds.AuditAddNodesEventType)
183
        self.add_property('NodesToAdd', None, ua.NodeId(ua.ObjectIds.AddNodesItem))
184
185 1
class AuditDeleteNodesEvent(AuditNodeManagementEvent):
186
    """
187
    AuditDeleteNodesEvent: 
188
    """
189 1
    def __init__(self, sourcenode=None, message=None, severity=1):
190
        super(AuditDeleteNodesEvent, self).__init__(sourcenode, message, severity)
191
        self.EventType = ua.NodeId(ua.ObjectIds.AuditDeleteNodesEventType)
192
        self.add_property('NodesToDelete', None, ua.NodeId(ua.ObjectIds.DeleteNodesItem))
193
194 1
class AuditAddReferencesEvent(AuditNodeManagementEvent):
195
    """
196
    AuditAddReferencesEvent: 
197
    """
198 1
    def __init__(self, sourcenode=None, message=None, severity=1):
199
        super(AuditAddReferencesEvent, self).__init__(sourcenode, message, severity)
200
        self.EventType = ua.NodeId(ua.ObjectIds.AuditAddReferencesEventType)
201
        self.add_property('ReferencesToAdd', None, ua.NodeId(ua.ObjectIds.AddReferencesItem))
202
203 1
class AuditDeleteReferencesEvent(AuditNodeManagementEvent):
204
    """
205
    AuditDeleteReferencesEvent: 
206
    """
207 1
    def __init__(self, sourcenode=None, message=None, severity=1):
208
        super(AuditDeleteReferencesEvent, self).__init__(sourcenode, message, severity)
209
        self.EventType = ua.NodeId(ua.ObjectIds.AuditDeleteReferencesEventType)
210
        self.add_property('ReferencesToDelete', None, ua.NodeId(ua.ObjectIds.DeleteReferencesItem))
211
212 1
class AuditUpdateEvent(AuditEvent):
213
    """
214
    AuditUpdateEvent: 
215
    """
216 1
    def __init__(self, sourcenode=None, message=None, severity=1):
217
        super(AuditUpdateEvent, self).__init__(sourcenode, message, severity)
218
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateEventType)
219
220 1
class AuditWriteUpdateEvent(AuditUpdateEvent):
221
    """
222
    AuditWriteUpdateEvent: 
223
    """
224 1
    def __init__(self, sourcenode=None, message=None, severity=1):
225
        super(AuditWriteUpdateEvent, self).__init__(sourcenode, message, severity)
226
        self.EventType = ua.NodeId(ua.ObjectIds.AuditWriteUpdateEventType)
227
        self.add_property('AttributeId', None, ua.VariantType.UInt32)
228
        self.add_property('IndexRange', None, ua.NodeId(ua.ObjectIds.NumericRange))
229
        self.add_property('OldValue', None, ua.VariantType.Variant)
230
        self.add_property('NewValue', None, ua.VariantType.Variant)
231
232 1
class AuditHistoryUpdateEvent(AuditUpdateEvent):
233
    """
234
    AuditHistoryUpdateEvent: 
235
    """
236 1
    def __init__(self, sourcenode=None, message=None, severity=1):
237
        super(AuditHistoryUpdateEvent, self).__init__(sourcenode, message, severity)
238
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryUpdateEventType)
239
        self.add_property('ParameterDataTypeId', ua.NodeId(ua.ObjectIds.AuditHistoryUpdateEventType), ua.VariantType.NodeId)
240
241 1
class AuditUpdateMethodEvent(AuditEvent):
242
    """
243
    AuditUpdateMethodEvent: 
244
    """
245 1
    def __init__(self, sourcenode=None, message=None, severity=1):
246
        super(AuditUpdateMethodEvent, self).__init__(sourcenode, message, severity)
247
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateMethodEventType)
248
        self.add_property('MethodId', ua.NodeId(ua.ObjectIds.AuditUpdateMethodEventType), ua.VariantType.NodeId)
249
        self.add_property('InputArguments', None, ua.VariantType.Variant)
250
251 1
class SystemEvent(BaseEvent):
252
    """
253
    SystemEvent: 
254
    """
255 1
    def __init__(self, sourcenode=None, message=None, severity=1):
256
        super(SystemEvent, self).__init__(sourcenode, message, severity)
257
        self.EventType = ua.NodeId(ua.ObjectIds.SystemEventType)
258
259 1
class DeviceFailureEvent(SystemEvent):
260
    """
261
    DeviceFailureEvent: 
262
    """
263 1
    def __init__(self, sourcenode=None, message=None, severity=1):
264
        super(DeviceFailureEvent, self).__init__(sourcenode, message, severity)
265
        self.EventType = ua.NodeId(ua.ObjectIds.DeviceFailureEventType)
266
267 1
class BaseModelChangeEvent(BaseEvent):
268
    """
269
    BaseModelChangeEvent: 
270
    """
271 1
    def __init__(self, sourcenode=None, message=None, severity=1):
272
        super(BaseModelChangeEvent, self).__init__(sourcenode, message, severity)
273
        self.EventType = ua.NodeId(ua.ObjectIds.BaseModelChangeEventType)
274
275 1
class GeneralModelChangeEvent(BaseModelChangeEvent):
276
    """
277
    GeneralModelChangeEvent: 
278
    """
279 1
    def __init__(self, sourcenode=None, message=None, severity=1):
280
        super(GeneralModelChangeEvent, self).__init__(sourcenode, message, severity)
281
        self.EventType = ua.NodeId(ua.ObjectIds.GeneralModelChangeEventType)
282
        self.add_property('Changes', None, ua.NodeId(ua.ObjectIds.ModelChangeStructureDataType))
283
284 1
class TransitionEvent(BaseEvent):
285
    """
286
    TransitionEvent: 
287
    """
288 1
    def __init__(self, sourcenode=None, message=None, severity=1):
289
        super(TransitionEvent, self).__init__(sourcenode, message, severity)
290
        self.EventType = ua.NodeId(ua.ObjectIds.TransitionEventType)
291
292 1
class AuditUpdateStateEvent(AuditUpdateMethodEvent):
293
    """
294
    AuditUpdateStateEvent: 
295
    """
296 1
    def __init__(self, sourcenode=None, message=None, severity=1):
297
        super(AuditUpdateStateEvent, self).__init__(sourcenode, message, severity)
298
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateStateEventType)
299
        self.add_property('OldStateId', None, ua.VariantType.Variant)
300
        self.add_property('NewStateId', None, ua.VariantType.Variant)
301
302 1
class SemanticChangeEvent(BaseModelChangeEvent):
303
    """
304
    SemanticChangeEvent: 
305
    """
306 1
    def __init__(self, sourcenode=None, message=None, severity=1):
307
        super(SemanticChangeEvent, self).__init__(sourcenode, message, severity)
308
        self.EventType = ua.NodeId(ua.ObjectIds.SemanticChangeEventType)
309
        self.add_property('Changes', None, ua.NodeId(ua.ObjectIds.SemanticChangeStructureDataType))
310
311 1
class AuditUrlMismatchEvent(AuditCreateSessionEvent):
312
    """
313
    AuditUrlMismatchEvent: 
314
    """
315 1
    def __init__(self, sourcenode=None, message=None, severity=1):
316
        super(AuditUrlMismatchEvent, self).__init__(sourcenode, message, severity)
317
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUrlMismatchEventType)
318
        self.add_property('EndpointUrl', None, ua.VariantType.String)
319
320 1
class EventQueueOverflowEvent(BaseEvent):
321
    """
322
    EventQueueOverflowEvent: 
323
    """
324 1
    def __init__(self, sourcenode=None, message=None, severity=1):
325
        super(EventQueueOverflowEvent, self).__init__(sourcenode, message, severity)
326
        self.EventType = ua.NodeId(ua.ObjectIds.EventQueueOverflowEventType)
327
328 1
class ProgressEvent(BaseEvent):
329
    """
330
    ProgressEvent: 
331
    """
332 1
    def __init__(self, sourcenode=None, message=None, severity=1):
333
        super(ProgressEvent, self).__init__(sourcenode, message, severity)
334
        self.EventType = ua.NodeId(ua.ObjectIds.ProgressEventType)
335
        self.add_property('Context', None, ua.VariantType.Variant)
336
        self.add_property('Progress', None, ua.VariantType.UInt16)
337
338 1
class SystemStatusChangeEvent(SystemEvent):
339
    """
340
    SystemStatusChangeEvent: 
341
    """
342 1
    def __init__(self, sourcenode=None, message=None, severity=1):
343
        super(SystemStatusChangeEvent, self).__init__(sourcenode, message, severity)
344
        self.EventType = ua.NodeId(ua.ObjectIds.SystemStatusChangeEventType)
345
        self.add_property('SystemState', None, ua.NodeId(ua.ObjectIds.ServerState))
346
347
348 1
IMPLEMENTED_EVENTS = {
349
    ua.ObjectIds.BaseEventType: BaseEvent,
350
    ua.ObjectIds.AuditEventType: AuditEvent,
351
    ua.ObjectIds.AuditSecurityEventType: AuditSecurityEvent,
352
    ua.ObjectIds.AuditChannelEventType: AuditChannelEvent,
353
    ua.ObjectIds.AuditOpenSecureChannelEventType: AuditOpenSecureChannelEvent,
354
    ua.ObjectIds.AuditSessionEventType: AuditSessionEvent,
355
    ua.ObjectIds.AuditCreateSessionEventType: AuditCreateSessionEvent,
356
    ua.ObjectIds.AuditActivateSessionEventType: AuditActivateSessionEvent,
357
    ua.ObjectIds.AuditCancelEventType: AuditCancelEvent,
358
    ua.ObjectIds.AuditCertificateEventType: AuditCertificateEvent,
359
    ua.ObjectIds.AuditCertificateDataMismatchEventType: AuditCertificateDataMismatchEvent,
360
    ua.ObjectIds.AuditCertificateExpiredEventType: AuditCertificateExpiredEvent,
361
    ua.ObjectIds.AuditCertificateInvalidEventType: AuditCertificateInvalidEvent,
362
    ua.ObjectIds.AuditCertificateUntrustedEventType: AuditCertificateUntrustedEvent,
363
    ua.ObjectIds.AuditCertificateRevokedEventType: AuditCertificateRevokedEvent,
364
    ua.ObjectIds.AuditCertificateMismatchEventType: AuditCertificateMismatchEvent,
365
    ua.ObjectIds.AuditNodeManagementEventType: AuditNodeManagementEvent,
366
    ua.ObjectIds.AuditAddNodesEventType: AuditAddNodesEvent,
367
    ua.ObjectIds.AuditDeleteNodesEventType: AuditDeleteNodesEvent,
368
    ua.ObjectIds.AuditAddReferencesEventType: AuditAddReferencesEvent,
369
    ua.ObjectIds.AuditDeleteReferencesEventType: AuditDeleteReferencesEvent,
370
    ua.ObjectIds.AuditUpdateEventType: AuditUpdateEvent,
371
    ua.ObjectIds.AuditWriteUpdateEventType: AuditWriteUpdateEvent,
372
    ua.ObjectIds.AuditHistoryUpdateEventType: AuditHistoryUpdateEvent,
373
    ua.ObjectIds.AuditUpdateMethodEventType: AuditUpdateMethodEvent,
374
    ua.ObjectIds.SystemEventType: SystemEvent,
375
    ua.ObjectIds.DeviceFailureEventType: DeviceFailureEvent,
376
    ua.ObjectIds.BaseModelChangeEventType: BaseModelChangeEvent,
377
    ua.ObjectIds.GeneralModelChangeEventType: GeneralModelChangeEvent,
378
    ua.ObjectIds.TransitionEventType: TransitionEvent,
379
    ua.ObjectIds.AuditUpdateStateEventType: AuditUpdateStateEvent,
380
    ua.ObjectIds.SemanticChangeEventType: SemanticChangeEvent,
381
    ua.ObjectIds.AuditUrlMismatchEventType: AuditUrlMismatchEvent,
382
    ua.ObjectIds.EventQueueOverflowEventType: EventQueueOverflowEvent,
383
    ua.ObjectIds.ProgressEventType: ProgressEvent,
384
    ua.ObjectIds.SystemStatusChangeEventType: SystemStatusChangeEvent,
385
    }
386