Passed
Pull Request — master (#365)
by
unknown
02:53
created

asyncua.common.event_objects   F

Complexity

Total Complexity 90

Size/Duplication

Total Lines 1053
Duplicated Lines 3.7 %

Importance

Changes 0
Metric Value
eloc 685
dl 39
loc 1053
rs 1.915
c 0
b 0
f 0
wmc 90

90 Methods

Rating   Name   Duplication   Size   Complexity  
A AuditAddReferencesEvent.__init__() 0 4 1
A AuditChannelEvent.__init__() 0 4 1
A AuditCertificateDataMismatchEvent.__init__() 0 5 1
A AuditUpdateStateEvent.__init__() 0 5 1
A AuditCertificateInvalidEvent.__init__() 0 3 1
A AuditNodeManagementEvent.__init__() 0 3 1
A AuditEvent.__init__() 0 8 1
A AuditCreateSessionEvent.__init__() 0 7 1
A AuditOpenSecureChannelEvent.__init__() 0 9 1
A AuditHistoryUpdateEvent.__init__() 0 4 1
A AuditCancelEvent.__init__() 0 4 1
A AuditUpdateMethodEvent.__init__() 0 5 1
A AuditSessionEvent.__init__() 0 4 1
A TransitionEvent.__init__() 0 9 1
A AuditWriteUpdateEvent.__init__() 0 7 1
A BaseEvent.__init__() 0 11 1
A AuditCertificateEvent.__init__() 0 4 1
A AuditAddNodesEvent.__init__() 0 4 1
A SystemEvent.__init__() 0 3 1
A AuditActivateSessionEvent.__init__() 0 6 1
A AuditCertificateUntrustedEvent.__init__() 0 3 1
A GeneralModelChangeEvent.__init__() 0 4 1
A AuditUpdateEvent.__init__() 0 3 1
A AuditDeleteNodesEvent.__init__() 0 4 1
A AuditSecurityEvent.__init__() 0 4 1
A AuditCertificateRevokedEvent.__init__() 0 3 1
A DeviceFailureEvent.__init__() 0 3 1
A BaseModelChangeEvent.__init__() 0 3 1
A AuditCertificateExpiredEvent.__init__() 0 3 1
A AuditCertificateMismatchEvent.__init__() 0 3 1
A AuditDeleteReferencesEvent.__init__() 0 4 1
A AuditConditionOutOfServiceEvent.__init__() 0 3 1
A ProgramTransitionAuditEvent.__init__() 0 5 1
A KeyCredentialAuditEvent.__init__() 0 4 1
A AuditHistoryValueUpdateEvent.__init__() 0 7 1
A AuditConditionRespondEvent.__init__() 0 4 1
A InstrumentDiagnosticAlarm.__init__() 0 3 1
A AuditHistoryEventDeleteEvent.__init__() 0 5 1
A ExclusiveDeviationAlarm.__init__() 0 5 1
A LimitAlarm.__init__() 0 11 1
A RefreshRequiredEvent.__init__() 0 3 1
A AuditUrlMismatchEvent.__init__() 0 4 1
A AuditConditionEnableEvent.__init__() 0 3 1
A NonExclusiveLimitAlarm.__init__() 0 25 1
A ProgramTransitionEvent.__init__() 0 3 1
A AuditConditionSuppressionEvent.__init__() 0 3 1
A AuditConditionResetEvent.__init__() 0 3 1
A OffNormalAlarm.__init__() 0 4 1
A SystemOffNormalAlarm.__init__() 0 3 1
A PubSubStatusEvent.__init__() 0 6 1
A RefreshStartEvent.__init__() 0 3 1
A AuditHistoryRawModifyDeleteEvent.__init__() 0 7 1
A RoleMappingRuleChangedAuditEvent.__init__() 0 3 1
B AlarmCondition.__init__() 0 42 1
A ExclusiveRateOfChangeAlarm.__init__() 0 4 1
A ExclusiveLevelAlarm.__init__() 0 3 1
A SystemDiagnosticAlarm.__init__() 0 3 1
A AuditHistoryDeleteEvent.__init__() 0 4 1
A AuditConditionCommentEvent.__init__() 0 5 1
A CertificateUpdatedAuditEvent.__init__() 0 5 1
A AuditConditionConfirmEvent.__init__() 0 5 1
A ProgressEvent.__init__() 0 5 1
A SemanticChangeEvent.__init__() 0 4 1
A ExclusiveLimitAlarm.__init__() 0 5 1
A NonExclusiveLevelAlarm.__init__() 0 3 1
A PubSubTransportLimitsExceedEvent.__init__() 0 5 1
A AuditConditionSilenceEvent.__init__() 0 3 1
A DiscreteAlarm.__init__() 0 3 1
A AuditHistoryAnnotationUpdateEvent.__init__() 0 6 1
A AuditConditionAcknowledgeEvent.__init__() 0 5 1
A TripAlarm.__init__() 0 3 1
A SystemStatusChangeEvent.__init__() 0 4 1
A AuditHistoryEventUpdateEvent.__init__() 0 8 1
A AuditConditionShelvingEvent.__init__() 0 4 1
A EventQueueOverflowEvent.__init__() 0 3 1
A AcknowledgeableCondition.__init__() 15 15 1
A TrustListUpdatedAuditEvent.__init__() 0 3 1
A KeyCredentialUpdatedAuditEvent.__init__() 0 3 1
A NonExclusiveDeviationAlarm.__init__() 0 5 1
A CertificateExpirationAlarm.__init__() 0 7 1
A NonExclusiveRateOfChangeAlarm.__init__() 0 4 1
A DialogCondition.__init__() 16 16 1
A AuditHistoryAtTimeDeleteEvent.__init__() 0 5 1
A RefreshEndEvent.__init__() 0 3 1
A AuditConditionEvent.__init__() 0 3 1
A DiscrepancyAlarm.__init__() 0 6 1
A PubSubCommunicationFailureEvent.__init__() 0 4 1
A KeyCredentialDeletedAuditEvent.__init__() 0 3 1
A Condition.__init__() 0 24 1
A AuditProgramTransitionEvent.__init__() 0 4 1

How to fix   Duplicated Code    Complexity   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

Complexity

 Tip:   Before tackling complexity, make sure that you eliminate any duplication first. This often can reduce the size of classes significantly.

Complex classes like asyncua.common.event_objects often do a lot of different things. To break such a class down, we need to identify a cohesive component within that class. A common approach to find such a component is to look for fields/methods that share the same prefixes, or suffixes.

Once you have determined the fields that belong together, you can apply the Extract Class refactoring. If the component makes sense as a sub-class, Extract Subclass is also a candidate, and is often faster.

1
"""
2
Autogenerated code from xml spec. Date: 2020-06-14 12:29:12.030807
3
"""
4
5
from asyncua import ua
6
from .events import Event
7
8
__all__ = ["BaseEvent", "AuditEvent", "AuditSecurityEvent", "AuditChannelEvent", "AuditOpenSecureChannelEvent", "AuditSessionEvent", "AuditCreateSessionEvent", "AuditActivateSessionEvent", "AuditCancelEvent", "AuditCertificateEvent", "AuditCertificateDataMismatchEvent", "AuditCertificateExpiredEvent", "AuditCertificateInvalidEvent", "AuditCertificateUntrustedEvent", "AuditCertificateRevokedEvent", "AuditCertificateMismatchEvent", "AuditNodeManagementEvent", "AuditAddNodesEvent", "AuditDeleteNodesEvent", "AuditAddReferencesEvent", "AuditDeleteReferencesEvent", "AuditUpdateEvent", "AuditWriteUpdateEvent", "AuditHistoryUpdateEvent", "AuditUpdateMethodEvent", "SystemEvent", "DeviceFailureEvent", "BaseModelChangeEvent", "GeneralModelChangeEvent", "TransitionEvent", "AuditUpdateStateEvent", "ProgramTransitionEvent", "SemanticChangeEvent", "AuditUrlMismatchEvent", "Condition", "RefreshStartEvent", "RefreshEndEvent", "RefreshRequiredEvent", "AuditConditionEvent", "AuditConditionEnableEvent", "AuditConditionCommentEvent", "DialogCondition", "AcknowledgeableCondition", "AlarmCondition", "LimitAlarm", "AuditHistoryEventUpdateEvent", "AuditHistoryValueUpdateEvent", "AuditHistoryDeleteEvent", "AuditHistoryRawModifyDeleteEvent", "AuditHistoryAtTimeDeleteEvent", "AuditHistoryEventDeleteEvent", "EventQueueOverflowEvent", "ProgramTransitionAuditEvent", "AuditConditionRespondEvent", "AuditConditionAcknowledgeEvent", "AuditConditionConfirmEvent", "ExclusiveLimitAlarm", "ExclusiveLevelAlarm", "ExclusiveRateOfChangeAlarm", "ExclusiveDeviationAlarm", "NonExclusiveLimitAlarm", "NonExclusiveLevelAlarm", "NonExclusiveRateOfChangeAlarm", "NonExclusiveDeviationAlarm", "DiscreteAlarm", "OffNormalAlarm", "TripAlarm", "AuditConditionShelvingEvent", "ProgressEvent", "SystemStatusChangeEvent", "SystemOffNormalAlarm", "AuditProgramTransitionEvent", "TrustListUpdatedAuditEvent", "CertificateUpdatedAuditEvent", "CertificateExpirationAlarm", "AuditConditionResetEvent", "PubSubStatusEvent", "PubSubTransportLimitsExceedEvent", "PubSubCommunicationFailureEvent", "DiscrepancyAlarm", "AuditConditionSuppressEvent", "AuditConditionSilenceEvent", "AuditConditionOutOfServiceEvent", "RoleMappingRuleChangedAuditEvent", "KeyCredentialAuditEvent", "KeyCredentialUpdatedAuditEvent", "KeyCredentialDeletedAuditEvent", "InstrumentDiagnosticAlarm", "SystemDiagnosticAlarm", "AuditHistoryAnnotationUpdateEvent", "AuditConditionSuppressionEvent"]
9
10
11
class BaseEvent(Event):
12
    """
13
    BaseEvent: 
14
    """
15
    def __init__(self, sourcenode=None, message=None, severity=1):
16
        Event.__init__(self)
17
        self.add_property('EventId', None, ua.VariantType.ByteString)
18
        self.add_property('EventType', ua.NodeId(ua.ObjectIds.BaseEventType), ua.VariantType.NodeId)
19
        self.add_property('SourceNode', sourcenode, ua.VariantType.NodeId)
20
        self.add_property('SourceName', None, ua.VariantType.String)
21
        self.add_property('Time', None, ua.VariantType.DateTime)
22
        self.add_property('ReceiveTime', None, ua.VariantType.DateTime)
23
        self.add_property('LocalTime', None, ua.VariantType.ExtensionObject)
24
        self.add_property('Message', ua.LocalizedText(message), ua.VariantType.LocalizedText)
25
        self.add_property('Severity', severity, ua.VariantType.UInt16)
26
27
class AuditEvent(BaseEvent):
28
    """
29
    AuditEvent: 
30
    """
31
    def __init__(self, sourcenode=None, message=None, severity=1):
32
        super(AuditEvent, self).__init__(sourcenode, message, severity)
33
        self.EventType = ua.NodeId(ua.ObjectIds.AuditEventType)
34
        self.add_property('ActionTimeStamp', None, ua.NodeId(ua.ObjectIds.UtcTime))
35
        self.add_property('Status', False, ua.VariantType.Boolean)
36
        self.add_property('ServerId', None, ua.VariantType.String)
37
        self.add_property('ClientAuditEntryId', None, ua.VariantType.String)
38
        self.add_property('ClientUserId', None, ua.VariantType.String)
39
40
class AuditSecurityEvent(AuditEvent):
41
    """
42
    AuditSecurityEvent: 
43
    """
44
    def __init__(self, sourcenode=None, message=None, severity=1):
45
        super(AuditSecurityEvent, self).__init__(sourcenode, message, severity)
46
        self.EventType = ua.NodeId(ua.ObjectIds.AuditSecurityEventType)
47
        self.add_property('StatusCodeId', None, ua.VariantType.StatusCode)
48
49
class AuditChannelEvent(AuditSecurityEvent):
50
    """
51
    AuditChannelEvent: 
52
    """
53
    def __init__(self, sourcenode=None, message=None, severity=1):
54
        super(AuditChannelEvent, self).__init__(sourcenode, message, severity)
55
        self.EventType = ua.NodeId(ua.ObjectIds.AuditChannelEventType)
56
        self.add_property('SecureChannelId', None, ua.VariantType.String)
57
58
class AuditOpenSecureChannelEvent(AuditChannelEvent):
59
    """
60
    AuditOpenSecureChannelEvent: 
61
    """
62
    def __init__(self, sourcenode=None, message=None, severity=1):
63
        super(AuditOpenSecureChannelEvent, self).__init__(sourcenode, message, severity)
64
        self.EventType = ua.NodeId(ua.ObjectIds.AuditOpenSecureChannelEventType)
65
        self.add_property('ClientCertificate', None, ua.VariantType.ByteString)
66
        self.add_property('ClientCertificateThumbprint', None, ua.VariantType.String)
67
        self.add_property('RequestType', None, ua.NodeId(ua.ObjectIds.SecurityTokenRequestType))
68
        self.add_property('SecurityPolicyUri', None, ua.VariantType.String)
69
        self.add_property('SecurityMode', None, ua.NodeId(ua.ObjectIds.MessageSecurityMode))
70
        self.add_property('RequestedLifetime', None, ua.NodeId(ua.ObjectIds.Duration))
71
72
class AuditSessionEvent(AuditSecurityEvent):
73
    """
74
    AuditSessionEvent: 
75
    """
76
    def __init__(self, sourcenode=None, message=None, severity=1):
77
        super(AuditSessionEvent, self).__init__(sourcenode, message, severity)
78
        self.EventType = ua.NodeId(ua.ObjectIds.AuditSessionEventType)
79
        self.add_property('SessionId', ua.NodeId(ua.ObjectIds.AuditSessionEventType), ua.VariantType.NodeId)
80
81
class AuditCreateSessionEvent(AuditSessionEvent):
82
    """
83
    AuditCreateSessionEvent: 
84
    """
85
    def __init__(self, sourcenode=None, message=None, severity=1):
86
        super(AuditCreateSessionEvent, self).__init__(sourcenode, message, severity)
87
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCreateSessionEventType)
88
        self.add_property('SecureChannelId', None, ua.VariantType.String)
89
        self.add_property('ClientCertificate', None, ua.VariantType.ByteString)
90
        self.add_property('ClientCertificateThumbprint', None, ua.VariantType.String)
91
        self.add_property('RevisedSessionTimeout', None, ua.NodeId(ua.ObjectIds.Duration))
92
93
class AuditActivateSessionEvent(AuditSessionEvent):
94
    """
95
    AuditActivateSessionEvent: 
96
    """
97
    def __init__(self, sourcenode=None, message=None, severity=1):
98
        super(AuditActivateSessionEvent, self).__init__(sourcenode, message, severity)
99
        self.EventType = ua.NodeId(ua.ObjectIds.AuditActivateSessionEventType)
100
        self.add_property('ClientSoftwareCertificates', None, ua.NodeId(ua.ObjectIds.SignedSoftwareCertificate))
101
        self.add_property('UserIdentityToken', None, ua.NodeId(ua.ObjectIds.UserIdentityToken))
102
        self.add_property('SecureChannelId', None, ua.VariantType.String)
103
104
class AuditCancelEvent(AuditSessionEvent):
105
    """
106
    AuditCancelEvent: 
107
    """
108
    def __init__(self, sourcenode=None, message=None, severity=1):
109
        super(AuditCancelEvent, self).__init__(sourcenode, message, severity)
110
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCancelEventType)
111
        self.add_property('RequestHandle', None, ua.VariantType.UInt32)
112
113
class AuditCertificateEvent(AuditSecurityEvent):
114
    """
115
    AuditCertificateEvent: 
116
    """
117
    def __init__(self, sourcenode=None, message=None, severity=1):
118
        super(AuditCertificateEvent, self).__init__(sourcenode, message, severity)
119
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateEventType)
120
        self.add_property('Certificate', None, ua.VariantType.ByteString)
121
122
class AuditCertificateDataMismatchEvent(AuditCertificateEvent):
123
    """
124
    AuditCertificateDataMismatchEvent: 
125
    """
126
    def __init__(self, sourcenode=None, message=None, severity=1):
127
        super(AuditCertificateDataMismatchEvent, self).__init__(sourcenode, message, severity)
128
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateDataMismatchEventType)
129
        self.add_property('InvalidHostname', None, ua.VariantType.String)
130
        self.add_property('InvalidUri', None, ua.VariantType.String)
131
132
class AuditCertificateExpiredEvent(AuditCertificateEvent):
133
    """
134
    AuditCertificateExpiredEvent: 
135
    """
136
    def __init__(self, sourcenode=None, message=None, severity=1):
137
        super(AuditCertificateExpiredEvent, self).__init__(sourcenode, message, severity)
138
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateExpiredEventType)
139
140
class AuditCertificateInvalidEvent(AuditCertificateEvent):
141
    """
142
    AuditCertificateInvalidEvent: 
143
    """
144
    def __init__(self, sourcenode=None, message=None, severity=1):
145
        super(AuditCertificateInvalidEvent, self).__init__(sourcenode, message, severity)
146
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateInvalidEventType)
147
148
class AuditCertificateUntrustedEvent(AuditCertificateEvent):
149
    """
150
    AuditCertificateUntrustedEvent: 
151
    """
152
    def __init__(self, sourcenode=None, message=None, severity=1):
153
        super(AuditCertificateUntrustedEvent, self).__init__(sourcenode, message, severity)
154
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateUntrustedEventType)
155
156
class AuditCertificateRevokedEvent(AuditCertificateEvent):
157
    """
158
    AuditCertificateRevokedEvent: 
159
    """
160
    def __init__(self, sourcenode=None, message=None, severity=1):
161
        super(AuditCertificateRevokedEvent, self).__init__(sourcenode, message, severity)
162
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateRevokedEventType)
163
164
class AuditCertificateMismatchEvent(AuditCertificateEvent):
165
    """
166
    AuditCertificateMismatchEvent: 
167
    """
168
    def __init__(self, sourcenode=None, message=None, severity=1):
169
        super(AuditCertificateMismatchEvent, self).__init__(sourcenode, message, severity)
170
        self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateMismatchEventType)
171
172
class AuditNodeManagementEvent(AuditEvent):
173
    """
174
    AuditNodeManagementEvent: 
175
    """
176
    def __init__(self, sourcenode=None, message=None, severity=1):
177
        super(AuditNodeManagementEvent, self).__init__(sourcenode, message, severity)
178
        self.EventType = ua.NodeId(ua.ObjectIds.AuditNodeManagementEventType)
179
180
class AuditAddNodesEvent(AuditNodeManagementEvent):
181
    """
182
    AuditAddNodesEvent: 
183
    """
184
    def __init__(self, sourcenode=None, message=None, severity=1):
185
        super(AuditAddNodesEvent, self).__init__(sourcenode, message, severity)
186
        self.EventType = ua.NodeId(ua.ObjectIds.AuditAddNodesEventType)
187
        self.add_property('NodesToAdd', None, ua.NodeId(ua.ObjectIds.AddNodesItem))
188
189
class AuditDeleteNodesEvent(AuditNodeManagementEvent):
190
    """
191
    AuditDeleteNodesEvent: 
192
    """
193
    def __init__(self, sourcenode=None, message=None, severity=1):
194
        super(AuditDeleteNodesEvent, self).__init__(sourcenode, message, severity)
195
        self.EventType = ua.NodeId(ua.ObjectIds.AuditDeleteNodesEventType)
196
        self.add_property('NodesToDelete', None, ua.NodeId(ua.ObjectIds.DeleteNodesItem))
197
198
class AuditAddReferencesEvent(AuditNodeManagementEvent):
199
    """
200
    AuditAddReferencesEvent: 
201
    """
202
    def __init__(self, sourcenode=None, message=None, severity=1):
203
        super(AuditAddReferencesEvent, self).__init__(sourcenode, message, severity)
204
        self.EventType = ua.NodeId(ua.ObjectIds.AuditAddReferencesEventType)
205
        self.add_property('ReferencesToAdd', None, ua.NodeId(ua.ObjectIds.AddReferencesItem))
206
207
class AuditDeleteReferencesEvent(AuditNodeManagementEvent):
208
    """
209
    AuditDeleteReferencesEvent: 
210
    """
211
    def __init__(self, sourcenode=None, message=None, severity=1):
212
        super(AuditDeleteReferencesEvent, self).__init__(sourcenode, message, severity)
213
        self.EventType = ua.NodeId(ua.ObjectIds.AuditDeleteReferencesEventType)
214
        self.add_property('ReferencesToDelete', None, ua.NodeId(ua.ObjectIds.DeleteReferencesItem))
215
216
class AuditUpdateEvent(AuditEvent):
217
    """
218
    AuditUpdateEvent: 
219
    """
220
    def __init__(self, sourcenode=None, message=None, severity=1):
221
        super(AuditUpdateEvent, self).__init__(sourcenode, message, severity)
222
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateEventType)
223
224
class AuditWriteUpdateEvent(AuditUpdateEvent):
225
    """
226
    AuditWriteUpdateEvent: 
227
    """
228
    def __init__(self, sourcenode=None, message=None, severity=1):
229
        super(AuditWriteUpdateEvent, self).__init__(sourcenode, message, severity)
230
        self.EventType = ua.NodeId(ua.ObjectIds.AuditWriteUpdateEventType)
231
        self.add_property('AttributeId', None, ua.VariantType.UInt32)
232
        self.add_property('IndexRange', None, ua.NodeId(ua.ObjectIds.NumericRange))
233
        self.add_property('OldValue', None, ua.VariantType.Variant)
234
        self.add_property('NewValue', None, ua.VariantType.Variant)
235
236
class AuditHistoryUpdateEvent(AuditUpdateEvent):
237
    """
238
    AuditHistoryUpdateEvent: 
239
    """
240
    def __init__(self, sourcenode=None, message=None, severity=1):
241
        super(AuditHistoryUpdateEvent, self).__init__(sourcenode, message, severity)
242
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryUpdateEventType)
243
        self.add_property('ParameterDataTypeId', ua.NodeId(ua.ObjectIds.AuditHistoryUpdateEventType), ua.VariantType.NodeId)
244
245
class AuditUpdateMethodEvent(AuditEvent):
246
    """
247
    AuditUpdateMethodEvent: 
248
    """
249
    def __init__(self, sourcenode=None, message=None, severity=1):
250
        super(AuditUpdateMethodEvent, self).__init__(sourcenode, message, severity)
251
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateMethodEventType)
252
        self.add_property('MethodId', ua.NodeId(ua.ObjectIds.AuditUpdateMethodEventType), ua.VariantType.NodeId)
253
        self.add_property('InputArguments', None, ua.VariantType.Variant)
254
255
class SystemEvent(BaseEvent):
256
    """
257
    SystemEvent: 
258
    """
259
    def __init__(self, sourcenode=None, message=None, severity=1):
260
        super(SystemEvent, self).__init__(sourcenode, message, severity)
261
        self.EventType = ua.NodeId(ua.ObjectIds.SystemEventType)
262
263
class DeviceFailureEvent(SystemEvent):
264
    """
265
    DeviceFailureEvent: 
266
    """
267
    def __init__(self, sourcenode=None, message=None, severity=1):
268
        super(DeviceFailureEvent, self).__init__(sourcenode, message, severity)
269
        self.EventType = ua.NodeId(ua.ObjectIds.DeviceFailureEventType)
270
271
class BaseModelChangeEvent(BaseEvent):
272
    """
273
    BaseModelChangeEvent: 
274
    """
275
    def __init__(self, sourcenode=None, message=None, severity=1):
276
        super(BaseModelChangeEvent, self).__init__(sourcenode, message, severity)
277
        self.EventType = ua.NodeId(ua.ObjectIds.BaseModelChangeEventType)
278
279
class GeneralModelChangeEvent(BaseModelChangeEvent):
280
    """
281
    GeneralModelChangeEvent: 
282
    """
283
    def __init__(self, sourcenode=None, message=None, severity=1):
284
        super(GeneralModelChangeEvent, self).__init__(sourcenode, message, severity)
285
        self.EventType = ua.NodeId(ua.ObjectIds.GeneralModelChangeEventType)
286
        self.add_property('Changes', None, ua.NodeId(ua.ObjectIds.ModelChangeStructureDataType))
287
288
class TransitionEvent(BaseEvent):
289
    """
290
    TransitionEvent: 
291
    """
292
    def __init__(self, sourcenode=None, message=None, severity=1):
293
        super(TransitionEvent, self).__init__(sourcenode, message, severity)
294
        self.EventType = ua.NodeId(ua.ObjectIds.TransitionEventType)
295
        self.add_property('Transition/Id', None, ua.VariantType.Variant)
296
        self.add_variable('Transition', None, ua.VariantType.LocalizedText)
297
        self.add_property('FromState/Id', None, ua.VariantType.Variant)
298
        self.add_variable('FromState', None, ua.VariantType.LocalizedText)
299
        self.add_property('ToState/Id', None, ua.VariantType.Variant)
300
        self.add_variable('ToState', None, ua.VariantType.LocalizedText)
301
302
class AuditUpdateStateEvent(AuditUpdateMethodEvent):
303
    """
304
    AuditUpdateStateEvent: 
305
    """
306
    def __init__(self, sourcenode=None, message=None, severity=1):
307
        super(AuditUpdateStateEvent, self).__init__(sourcenode, message, severity)
308
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateStateEventType)
309
        self.add_property('OldStateId', None, ua.VariantType.Variant)
310
        self.add_property('NewStateId', None, ua.VariantType.Variant)
311
312
class ProgramTransitionEvent(TransitionEvent):
313
    """
314
    ProgramTransitionEvent: 
315
    """
316
    def __init__(self, sourcenode=None, message=None, severity=1):
317
        super(ProgramTransitionEvent, self).__init__(sourcenode, message, severity)
318
        self.EventType = ua.NodeId(ua.ObjectIds.ProgramTransitionEventType)
319
320
class SemanticChangeEvent(BaseEvent):
321
    """
322
    SemanticChangeEvent: 
323
    """
324
    def __init__(self, sourcenode=None, message=None, severity=1):
325
        super(SemanticChangeEvent, self).__init__(sourcenode, message, severity)
326
        self.EventType = ua.NodeId(ua.ObjectIds.SemanticChangeEventType)
327
        self.add_property('Changes', None, ua.NodeId(ua.ObjectIds.SemanticChangeStructureDataType))
328
329
class AuditUrlMismatchEvent(AuditCreateSessionEvent):
330
    """
331
    AuditUrlMismatchEvent: 
332
    """
333
    def __init__(self, sourcenode=None, message=None, severity=1):
334
        super(AuditUrlMismatchEvent, self).__init__(sourcenode, message, severity)
335
        self.EventType = ua.NodeId(ua.ObjectIds.AuditUrlMismatchEventType)
336
        self.add_property('EndpointUrl', None, ua.VariantType.String)
337
338
class Condition(BaseEvent):
339
    """
340
    Condition: 
341
    """
342
    def __init__(self, sourcenode=None, message=None, severity=1):
343
        super(Condition, self).__init__(sourcenode, message, severity)
344
        self.EventType = ua.NodeId(ua.ObjectIds.ConditionType)
345
        self.add_property('ConditionClassId', ua.NodeId(ua.ObjectIds.ConditionType), ua.VariantType.NodeId)
346
        self.add_property('ConditionClassName', None, ua.VariantType.LocalizedText)
347
        self.add_property('ConditionSubClassId', ua.NodeId(ua.ObjectIds.ConditionType), ua.VariantType.NodeId)
348
        self.add_property('ConditionSubClassName', None, ua.VariantType.LocalizedText)
349
        self.add_property('ConditionName', None, ua.VariantType.String)
350
        self.add_property('BranchId', ua.NodeId(ua.ObjectIds.ConditionType), ua.VariantType.NodeId)
351
        self.add_property('Retain', None, ua.VariantType.Boolean)
352
        self.add_property('EnabledState/Id', None, ua.VariantType.Boolean)
353
        self.add_property('EnabledState/EffectiveDisplayName', None, ua.VariantType.LocalizedText)
354
        self.add_property('EnabledState/TransitionTime', None, ua.VariantType.DateTime)
355
        self.add_property('EnabledState/EffectiveTransitionTime', None, ua.VariantType.DateTime)
356
        self.add_property('EnabledState/TrueState', None, ua.VariantType.LocalizedText)
357
        self.add_property('EnabledState/FalseState', None, ua.VariantType.LocalizedText)
358
        self.add_variable('EnabledState', None, ua.VariantType.LocalizedText)
359
        self.add_property('Quality/SourceTimestamp', None, ua.NodeId(ua.ObjectIds.UtcTime))
360
        self.add_variable('Quality', None, ua.VariantType.StatusCode)
361
        self.add_property('LastSeverity/SourceTimestamp', None, ua.NodeId(ua.ObjectIds.UtcTime))
362
        self.add_variable('LastSeverity', None, ua.VariantType.UInt16)
363
        self.add_property('Comment/SourceTimestamp', None, ua.NodeId(ua.ObjectIds.UtcTime))
364
        self.add_variable('Comment', None, ua.VariantType.LocalizedText)
365
        self.add_property('ClientUserId', None, ua.VariantType.String)
366
367
class RefreshStartEvent(SystemEvent):
368
    """
369
    RefreshStartEvent: 
370
    """
371
    def __init__(self, sourcenode=None, message=None, severity=1):
372
        super(RefreshStartEvent, self).__init__(sourcenode, message, severity)
373
        self.EventType = ua.NodeId(ua.ObjectIds.RefreshStartEventType)
374
375
class RefreshEndEvent(SystemEvent):
376
    """
377
    RefreshEndEvent: 
378
    """
379
    def __init__(self, sourcenode=None, message=None, severity=1):
380
        super(RefreshEndEvent, self).__init__(sourcenode, message, severity)
381
        self.EventType = ua.NodeId(ua.ObjectIds.RefreshEndEventType)
382
383
class RefreshRequiredEvent(SystemEvent):
384
    """
385
    RefreshRequiredEvent: 
386
    """
387
    def __init__(self, sourcenode=None, message=None, severity=1):
388
        super(RefreshRequiredEvent, self).__init__(sourcenode, message, severity)
389
        self.EventType = ua.NodeId(ua.ObjectIds.RefreshRequiredEventType)
390
391
class AuditConditionEvent(AuditUpdateMethodEvent):
392
    """
393
    AuditConditionEvent: 
394
    """
395
    def __init__(self, sourcenode=None, message=None, severity=1):
396
        super(AuditConditionEvent, self).__init__(sourcenode, message, severity)
397
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionEventType)
398
399
class AuditConditionEnableEvent(AuditConditionEvent):
400
    """
401
    AuditConditionEnableEvent: 
402
    """
403
    def __init__(self, sourcenode=None, message=None, severity=1):
404
        super(AuditConditionEnableEvent, self).__init__(sourcenode, message, severity)
405
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionEnableEventType)
406
407
class AuditConditionCommentEvent(AuditConditionEvent):
408
    """
409
    AuditConditionCommentEvent: 
410
    """
411
    def __init__(self, sourcenode=None, message=None, severity=1):
412
        super(AuditConditionCommentEvent, self).__init__(sourcenode, message, severity)
413
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionCommentEventType)
414
        self.add_property('ConditionEventId', None, ua.VariantType.ByteString)
415
        self.add_property('Comment', None, ua.VariantType.LocalizedText)
416
417 View Code Duplication
class DialogCondition(Condition):
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
418
    """
419
    DialogCondition: 
420
    """
421
    def __init__(self, sourcenode=None, message=None, severity=1):
422
        super(DialogCondition, self).__init__(sourcenode, message, severity)
423
        self.EventType = ua.NodeId(ua.ObjectIds.DialogConditionType)
424
        self.add_property('EnabledState/Id', None, ua.VariantType.Boolean)
425
        self.add_variable('EnabledState', None, ua.VariantType.LocalizedText)
426
        self.add_property('DialogState/Id', None, ua.VariantType.Boolean)
427
        self.add_property('DialogState/TransitionTime', None, ua.VariantType.DateTime)
428
        self.add_property('DialogState/TrueState', None, ua.VariantType.LocalizedText)
429
        self.add_property('DialogState/FalseState', None, ua.VariantType.LocalizedText)
430
        self.add_variable('DialogState', None, ua.VariantType.LocalizedText)
431
        self.add_property('Prompt', None, ua.VariantType.LocalizedText)
432
        self.add_property('ResponseOptionSet', None, ua.VariantType.LocalizedText)
433
        self.add_property('DefaultResponse', None, ua.VariantType.Int32)
434
        self.add_property('OkResponse', None, ua.VariantType.Int32)
435
        self.add_property('CancelResponse', None, ua.VariantType.Int32)
436
        self.add_property('LastResponse', None, ua.VariantType.Int32)
437
438 View Code Duplication
class AcknowledgeableCondition(Condition):
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
439
    """
440
    AcknowledgeableCondition: 
441
    """
442
    def __init__(self, sourcenode=None, message=None, severity=1):
443
        super(AcknowledgeableCondition, self).__init__(sourcenode, message, severity)
444
        self.EventType = ua.NodeId(ua.ObjectIds.AcknowledgeableConditionType)
445
        self.add_property('EnabledState/Id', None, ua.VariantType.Boolean)
446
        self.add_variable('EnabledState', None, ua.VariantType.LocalizedText)
447
        self.add_property('AckedState/Id', None, ua.VariantType.Boolean)
448
        self.add_property('AckedState/TransitionTime', None, ua.VariantType.DateTime)
449
        self.add_property('AckedState/TrueState', None, ua.VariantType.LocalizedText)
450
        self.add_property('AckedState/FalseState', None, ua.VariantType.LocalizedText)
451
        self.add_variable('AckedState', None, ua.VariantType.LocalizedText)
452
        self.add_property('ConfirmedState/Id', None, ua.VariantType.Boolean)
453
        self.add_property('ConfirmedState/TransitionTime', None, ua.VariantType.DateTime)
454
        self.add_property('ConfirmedState/TrueState', None, ua.VariantType.LocalizedText)
455
        self.add_property('ConfirmedState/FalseState', None, ua.VariantType.LocalizedText)
456
        self.add_variable('ConfirmedState', None, ua.VariantType.LocalizedText)
457
458
class AlarmCondition(AcknowledgeableCondition):
459
    """
460
    AlarmCondition: 
461
    """
462
    def __init__(self, sourcenode=None, message=None, severity=1):
463
        super(AlarmCondition, self).__init__(sourcenode, message, severity)
464
        self.EventType = ua.NodeId(ua.ObjectIds.AlarmConditionType)
465
        self.add_property('EnabledState/Id', None, ua.VariantType.Boolean)
466
        self.add_variable('EnabledState', None, ua.VariantType.LocalizedText)
467
        self.add_property('ActiveState/Id', None, ua.VariantType.Boolean)
468
        self.add_property('ActiveState/EffectiveDisplayName', None, ua.VariantType.LocalizedText)
469
        self.add_property('ActiveState/TransitionTime', None, ua.VariantType.DateTime)
470
        self.add_property('ActiveState/EffectiveTransitionTime', None, ua.VariantType.DateTime)
471
        self.add_property('ActiveState/TrueState', None, ua.VariantType.LocalizedText)
472
        self.add_property('ActiveState/FalseState', None, ua.VariantType.LocalizedText)
473
        self.add_variable('ActiveState', None, ua.VariantType.LocalizedText)
474
        self.add_property('InputNode', ua.NodeId(ua.ObjectIds.AlarmConditionType), ua.VariantType.NodeId)
475
        self.add_property('SuppressedState/Id', None, ua.VariantType.Boolean)
476
        self.add_property('SuppressedState/TransitionTime', None, ua.VariantType.DateTime)
477
        self.add_property('SuppressedState/TrueState', None, ua.VariantType.LocalizedText)
478
        self.add_property('SuppressedState/FalseState', None, ua.VariantType.LocalizedText)
479
        self.add_variable('SuppressedState', None, ua.VariantType.LocalizedText)
480
        self.add_property('OutOfServiceState/Id', None, ua.VariantType.Boolean)
481
        self.add_property('OutOfServiceState/TransitionTime', None, ua.VariantType.DateTime)
482
        self.add_property('OutOfServiceState/TrueState', None, ua.VariantType.LocalizedText)
483
        self.add_property('OutOfServiceState/FalseState', None, ua.VariantType.LocalizedText)
484
        self.add_variable('OutOfServiceState', None, ua.VariantType.LocalizedText)
485
        self.add_property('SuppressedOrShelved', None, ua.VariantType.Boolean)
486
        self.add_property('MaxTimeShelved', None, ua.NodeId(ua.ObjectIds.Duration))
487
        self.add_property('AudibleEnabled', None, ua.VariantType.Boolean)
488
        self.add_variable('AudibleSound', None, ua.NodeId(ua.ObjectIds.AudioDataType))
489
        self.add_property('SilenceState/Id', None, ua.VariantType.Boolean)
490
        self.add_property('SilenceState/TransitionTime', None, ua.VariantType.DateTime)
491
        self.add_property('SilenceState/TrueState', None, ua.VariantType.LocalizedText)
492
        self.add_property('SilenceState/FalseState', None, ua.VariantType.LocalizedText)
493
        self.add_variable('SilenceState', None, ua.VariantType.LocalizedText)
494
        self.add_property('OnDelay', None, ua.NodeId(ua.ObjectIds.Duration))
495
        self.add_property('OffDelay', None, ua.NodeId(ua.ObjectIds.Duration))
496
        self.add_property('FirstInGroupFlag', None, ua.VariantType.Boolean)
497
        self.add_property('LatchedState/Id', None, ua.VariantType.Boolean)
498
        self.add_property('LatchedState/TransitionTime', None, ua.VariantType.DateTime)
499
        self.add_property('LatchedState/TrueState', None, ua.VariantType.LocalizedText)
500
        self.add_property('LatchedState/FalseState', None, ua.VariantType.LocalizedText)
501
        self.add_variable('LatchedState', None, ua.VariantType.LocalizedText)
502
        self.add_property('ReAlarmTime', None, ua.VariantType.DateTime)
503
        self.add_property('ReAlarmRepeatCount', None, ua.VariantType.Int16)
504
505
class LimitAlarm(AlarmCondition):
506
    """
507
    LimitAlarm: 
508
    """
509
    def __init__(self, sourcenode=None, message=None, severity=1):
510
        super(LimitAlarm, self).__init__(sourcenode, message, severity)
511
        self.EventType = ua.NodeId(ua.ObjectIds.LimitAlarmType)
512
        self.add_property('HighHighLimit', None, ua.VariantType.Double)
513
        self.add_property('HighLimit', None, ua.VariantType.Double)
514
        self.add_property('LowLimit', None, ua.VariantType.Double)
515
        self.add_property('LowLowLimit', None, ua.VariantType.Double)
516
        self.add_property('BaseHighHighLimit', None, ua.VariantType.Double)
517
        self.add_property('BaseHighLimit', None, ua.VariantType.Double)
518
        self.add_property('BaseLowLimit', None, ua.VariantType.Double)
519
        self.add_property('BaseLowLowLimit', None, ua.VariantType.Double)
520
521
class AuditHistoryEventUpdateEvent(AuditHistoryUpdateEvent):
522
    """
523
    AuditHistoryEventUpdateEvent: 
524
    """
525
    def __init__(self, sourcenode=None, message=None, severity=1):
526
        super(AuditHistoryEventUpdateEvent, self).__init__(sourcenode, message, severity)
527
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryEventUpdateEventType)
528
        self.add_property('UpdatedNode', ua.NodeId(ua.ObjectIds.AuditHistoryEventUpdateEventType), ua.VariantType.NodeId)
529
        self.add_property('PerformInsertReplace', None, ua.NodeId(ua.ObjectIds.PerformUpdateType))
530
        self.add_property('Filter', None, ua.NodeId(ua.ObjectIds.EventFilter))
531
        self.add_property('NewValues', None, ua.NodeId(ua.ObjectIds.HistoryEventFieldList))
532
        self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.HistoryEventFieldList))
533
534
class AuditHistoryValueUpdateEvent(AuditHistoryUpdateEvent):
535
    """
536
    AuditHistoryValueUpdateEvent: 
537
    """
538
    def __init__(self, sourcenode=None, message=None, severity=1):
539
        super(AuditHistoryValueUpdateEvent, self).__init__(sourcenode, message, severity)
540
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryValueUpdateEventType)
541
        self.add_property('UpdatedNode', ua.NodeId(ua.ObjectIds.AuditHistoryValueUpdateEventType), ua.VariantType.NodeId)
542
        self.add_property('PerformInsertReplace', None, ua.NodeId(ua.ObjectIds.PerformUpdateType))
543
        self.add_property('NewValues', None, ua.NodeId(ua.ObjectIds.DataValue))
544
        self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue))
545
546
class AuditHistoryDeleteEvent(AuditHistoryUpdateEvent):
547
    """
548
    AuditHistoryDeleteEvent: 
549
    """
550
    def __init__(self, sourcenode=None, message=None, severity=1):
551
        super(AuditHistoryDeleteEvent, self).__init__(sourcenode, message, severity)
552
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryDeleteEventType)
553
        self.add_property('UpdatedNode', ua.NodeId(ua.ObjectIds.AuditHistoryDeleteEventType), ua.VariantType.NodeId)
554
555
class AuditHistoryRawModifyDeleteEvent(AuditHistoryDeleteEvent):
556
    """
557
    AuditHistoryRawModifyDeleteEvent: 
558
    """
559
    def __init__(self, sourcenode=None, message=None, severity=1):
560
        super(AuditHistoryRawModifyDeleteEvent, self).__init__(sourcenode, message, severity)
561
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryRawModifyDeleteEventType)
562
        self.add_property('IsDeleteModified', None, ua.VariantType.Boolean)
563
        self.add_property('StartTime', None, ua.NodeId(ua.ObjectIds.UtcTime))
564
        self.add_property('EndTime', None, ua.NodeId(ua.ObjectIds.UtcTime))
565
        self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue))
566
567
class AuditHistoryAtTimeDeleteEvent(AuditHistoryDeleteEvent):
568
    """
569
    AuditHistoryAtTimeDeleteEvent: 
570
    """
571
    def __init__(self, sourcenode=None, message=None, severity=1):
572
        super(AuditHistoryAtTimeDeleteEvent, self).__init__(sourcenode, message, severity)
573
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryAtTimeDeleteEventType)
574
        self.add_property('ReqTimes', None, ua.NodeId(ua.ObjectIds.UtcTime))
575
        self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue))
576
577
class AuditHistoryEventDeleteEvent(AuditHistoryDeleteEvent):
578
    """
579
    AuditHistoryEventDeleteEvent: 
580
    """
581
    def __init__(self, sourcenode=None, message=None, severity=1):
582
        super(AuditHistoryEventDeleteEvent, self).__init__(sourcenode, message, severity)
583
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryEventDeleteEventType)
584
        self.add_property('EventIds', None, ua.VariantType.ByteString)
585
        self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.HistoryEventFieldList))
586
587
class EventQueueOverflowEvent(BaseEvent):
588
    """
589
    EventQueueOverflowEvent: 
590
    """
591
    def __init__(self, sourcenode=None, message=None, severity=1):
592
        super(EventQueueOverflowEvent, self).__init__(sourcenode, message, severity)
593
        self.EventType = ua.NodeId(ua.ObjectIds.EventQueueOverflowEventType)
594
595
class ProgramTransitionAuditEvent(AuditUpdateStateEvent):
596
    """
597
    ProgramTransitionAuditEvent: 
598
    """
599
    def __init__(self, sourcenode=None, message=None, severity=1):
600
        super(ProgramTransitionAuditEvent, self).__init__(sourcenode, message, severity)
601
        self.EventType = ua.NodeId(ua.ObjectIds.ProgramTransitionAuditEventType)
602
        self.add_property('Transition/Id', ua.NodeId(ua.ObjectIds.ProgramTransitionAuditEventType), ua.VariantType.NodeId)
603
        self.add_variable('Transition', None, ua.VariantType.LocalizedText)
604
605
class AuditConditionRespondEvent(AuditConditionEvent):
606
    """
607
    AuditConditionRespondEvent: 
608
    """
609
    def __init__(self, sourcenode=None, message=None, severity=1):
610
        super(AuditConditionRespondEvent, self).__init__(sourcenode, message, severity)
611
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionRespondEventType)
612
        self.add_property('SelectedResponse', None, ua.VariantType.UInt32)
613
614
class AuditConditionAcknowledgeEvent(AuditConditionEvent):
615
    """
616
    AuditConditionAcknowledgeEvent: 
617
    """
618
    def __init__(self, sourcenode=None, message=None, severity=1):
619
        super(AuditConditionAcknowledgeEvent, self).__init__(sourcenode, message, severity)
620
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionAcknowledgeEventType)
621
        self.add_property('ConditionEventId', None, ua.VariantType.ByteString)
622
        self.add_property('Comment', None, ua.VariantType.LocalizedText)
623
624
class AuditConditionConfirmEvent(AuditConditionEvent):
625
    """
626
    AuditConditionConfirmEvent: 
627
    """
628
    def __init__(self, sourcenode=None, message=None, severity=1):
629
        super(AuditConditionConfirmEvent, self).__init__(sourcenode, message, severity)
630
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionConfirmEventType)
631
        self.add_property('ConditionEventId', None, ua.VariantType.ByteString)
632
        self.add_property('Comment', None, ua.VariantType.LocalizedText)
633
634
class ExclusiveLimitAlarm(LimitAlarm):
635
    """
636
    ExclusiveLimitAlarm: 
637
    """
638
    def __init__(self, sourcenode=None, message=None, severity=1):
639
        super(ExclusiveLimitAlarm, self).__init__(sourcenode, message, severity)
640
        self.EventType = ua.NodeId(ua.ObjectIds.ExclusiveLimitAlarmType)
641
        self.add_property('ActiveState/Id', None, ua.VariantType.Boolean)
642
        self.add_variable('ActiveState', None, ua.VariantType.LocalizedText)
643
644
class ExclusiveLevelAlarm(ExclusiveLimitAlarm):
645
    """
646
    ExclusiveLevelAlarm: 
647
    """
648
    def __init__(self, sourcenode=None, message=None, severity=1):
649
        super(ExclusiveLevelAlarm, self).__init__(sourcenode, message, severity)
650
        self.EventType = ua.NodeId(ua.ObjectIds.ExclusiveLevelAlarmType)
651
652
class ExclusiveRateOfChangeAlarm(ExclusiveLimitAlarm):
653
    """
654
    ExclusiveRateOfChangeAlarm: 
655
    """
656
    def __init__(self, sourcenode=None, message=None, severity=1):
657
        super(ExclusiveRateOfChangeAlarm, self).__init__(sourcenode, message, severity)
658
        self.EventType = ua.NodeId(ua.ObjectIds.ExclusiveRateOfChangeAlarmType)
659
        self.add_property('EngineeringUnits', None, ua.NodeId(ua.ObjectIds.EUInformation))
660
661
class ExclusiveDeviationAlarm(ExclusiveLimitAlarm):
662
    """
663
    ExclusiveDeviationAlarm: 
664
    """
665
    def __init__(self, sourcenode=None, message=None, severity=1):
666
        super(ExclusiveDeviationAlarm, self).__init__(sourcenode, message, severity)
667
        self.EventType = ua.NodeId(ua.ObjectIds.ExclusiveDeviationAlarmType)
668
        self.add_property('SetpointNode', ua.NodeId(ua.ObjectIds.ExclusiveDeviationAlarmType), ua.VariantType.NodeId)
669
        self.add_property('BaseSetpointNode', ua.NodeId(ua.ObjectIds.ExclusiveDeviationAlarmType), ua.VariantType.NodeId)
670
671
class NonExclusiveLimitAlarm(LimitAlarm):
672
    """
673
    NonExclusiveLimitAlarm: 
674
    """
675
    def __init__(self, sourcenode=None, message=None, severity=1):
676
        super(NonExclusiveLimitAlarm, self).__init__(sourcenode, message, severity)
677
        self.EventType = ua.NodeId(ua.ObjectIds.NonExclusiveLimitAlarmType)
678
        self.add_property('ActiveState/Id', None, ua.VariantType.Boolean)
679
        self.add_variable('ActiveState', None, ua.VariantType.LocalizedText)
680
        self.add_property('HighHighState/Id', None, ua.VariantType.Boolean)
681
        self.add_property('HighHighState/TransitionTime', None, ua.VariantType.DateTime)
682
        self.add_property('HighHighState/TrueState', None, ua.VariantType.LocalizedText)
683
        self.add_property('HighHighState/FalseState', None, ua.VariantType.LocalizedText)
684
        self.add_variable('HighHighState', None, ua.VariantType.LocalizedText)
685
        self.add_property('HighState/Id', None, ua.VariantType.Boolean)
686
        self.add_property('HighState/TransitionTime', None, ua.VariantType.DateTime)
687
        self.add_property('HighState/TrueState', None, ua.VariantType.LocalizedText)
688
        self.add_property('HighState/FalseState', None, ua.VariantType.LocalizedText)
689
        self.add_variable('HighState', None, ua.VariantType.LocalizedText)
690
        self.add_property('LowState/Id', None, ua.VariantType.Boolean)
691
        self.add_property('LowState/TransitionTime', None, ua.VariantType.DateTime)
692
        self.add_property('LowState/TrueState', None, ua.VariantType.LocalizedText)
693
        self.add_property('LowState/FalseState', None, ua.VariantType.LocalizedText)
694
        self.add_variable('LowState', None, ua.VariantType.LocalizedText)
695
        self.add_property('LowLowState/Id', None, ua.VariantType.Boolean)
696
        self.add_property('LowLowState/TransitionTime', None, ua.VariantType.DateTime)
697
        self.add_property('LowLowState/TrueState', None, ua.VariantType.LocalizedText)
698
        self.add_property('LowLowState/FalseState', None, ua.VariantType.LocalizedText)
699
        self.add_variable('LowLowState', None, ua.VariantType.LocalizedText)
700
701
class NonExclusiveLevelAlarm(NonExclusiveLimitAlarm):
702
    """
703
    NonExclusiveLevelAlarm: 
704
    """
705
    def __init__(self, sourcenode=None, message=None, severity=1):
706
        super(NonExclusiveLevelAlarm, self).__init__(sourcenode, message, severity)
707
        self.EventType = ua.NodeId(ua.ObjectIds.NonExclusiveLevelAlarmType)
708
709
class NonExclusiveRateOfChangeAlarm(NonExclusiveLimitAlarm):
710
    """
711
    NonExclusiveRateOfChangeAlarm: 
712
    """
713
    def __init__(self, sourcenode=None, message=None, severity=1):
714
        super(NonExclusiveRateOfChangeAlarm, self).__init__(sourcenode, message, severity)
715
        self.EventType = ua.NodeId(ua.ObjectIds.NonExclusiveRateOfChangeAlarmType)
716
        self.add_property('EngineeringUnits', None, ua.NodeId(ua.ObjectIds.EUInformation))
717
718
class NonExclusiveDeviationAlarm(NonExclusiveLimitAlarm):
719
    """
720
    NonExclusiveDeviationAlarm: 
721
    """
722
    def __init__(self, sourcenode=None, message=None, severity=1):
723
        super(NonExclusiveDeviationAlarm, self).__init__(sourcenode, message, severity)
724
        self.EventType = ua.NodeId(ua.ObjectIds.NonExclusiveDeviationAlarmType)
725
        self.add_property('SetpointNode', ua.NodeId(ua.ObjectIds.NonExclusiveDeviationAlarmType), ua.VariantType.NodeId)
726
        self.add_property('BaseSetpointNode', ua.NodeId(ua.ObjectIds.NonExclusiveDeviationAlarmType), ua.VariantType.NodeId)
727
728
class DiscreteAlarm(AlarmCondition):
729
    """
730
    DiscreteAlarm: 
731
    """
732
    def __init__(self, sourcenode=None, message=None, severity=1):
733
        super(DiscreteAlarm, self).__init__(sourcenode, message, severity)
734
        self.EventType = ua.NodeId(ua.ObjectIds.DiscreteAlarmType)
735
736
class OffNormalAlarm(DiscreteAlarm):
737
    """
738
    OffNormalAlarm: 
739
    """
740
    def __init__(self, sourcenode=None, message=None, severity=1):
741
        super(OffNormalAlarm, self).__init__(sourcenode, message, severity)
742
        self.EventType = ua.NodeId(ua.ObjectIds.OffNormalAlarmType)
743
        self.add_property('NormalState', ua.NodeId(ua.ObjectIds.OffNormalAlarmType), ua.VariantType.NodeId)
744
745
class TripAlarm(OffNormalAlarm):
746
    """
747
    TripAlarm: 
748
    """
749
    def __init__(self, sourcenode=None, message=None, severity=1):
750
        super(TripAlarm, self).__init__(sourcenode, message, severity)
751
        self.EventType = ua.NodeId(ua.ObjectIds.TripAlarmType)
752
753
class AuditConditionShelvingEvent(AuditConditionEvent):
754
    """
755
    AuditConditionShelvingEvent: 
756
    """
757
    def __init__(self, sourcenode=None, message=None, severity=1):
758
        super(AuditConditionShelvingEvent, self).__init__(sourcenode, message, severity)
759
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionShelvingEventType)
760
        self.add_property('ShelvingTime', None, ua.NodeId(ua.ObjectIds.Duration))
761
762
class ProgressEvent(BaseEvent):
763
    """
764
    ProgressEvent: 
765
    """
766
    def __init__(self, sourcenode=None, message=None, severity=1):
767
        super(ProgressEvent, self).__init__(sourcenode, message, severity)
768
        self.EventType = ua.NodeId(ua.ObjectIds.ProgressEventType)
769
        self.add_property('Context', None, ua.VariantType.Variant)
770
        self.add_property('Progress', None, ua.VariantType.UInt16)
771
772
class SystemStatusChangeEvent(SystemEvent):
773
    """
774
    SystemStatusChangeEvent: 
775
    """
776
    def __init__(self, sourcenode=None, message=None, severity=1):
777
        super(SystemStatusChangeEvent, self).__init__(sourcenode, message, severity)
778
        self.EventType = ua.NodeId(ua.ObjectIds.SystemStatusChangeEventType)
779
        self.add_property('SystemState', None, ua.NodeId(ua.ObjectIds.ServerState))
780
781
class SystemOffNormalAlarm(OffNormalAlarm):
782
    """
783
    SystemOffNormalAlarm: 
784
    """
785
    def __init__(self, sourcenode=None, message=None, severity=1):
786
        super(SystemOffNormalAlarm, self).__init__(sourcenode, message, severity)
787
        self.EventType = ua.NodeId(ua.ObjectIds.SystemOffNormalAlarmType)
788
789
class AuditProgramTransitionEvent(AuditUpdateStateEvent):
790
    """
791
    AuditProgramTransitionEvent: 
792
    """
793
    def __init__(self, sourcenode=None, message=None, severity=1):
794
        super(AuditProgramTransitionEvent, self).__init__(sourcenode, message, severity)
795
        self.EventType = ua.NodeId(ua.ObjectIds.AuditProgramTransitionEventType)
796
        self.add_property('TransitionNumber', None, ua.VariantType.UInt32)
797
798
class TrustListUpdatedAuditEvent(AuditUpdateMethodEvent):
799
    """
800
    TrustListUpdatedAuditEvent: 
801
    """
802
    def __init__(self, sourcenode=None, message=None, severity=1):
803
        super(TrustListUpdatedAuditEvent, self).__init__(sourcenode, message, severity)
804
        self.EventType = ua.NodeId(ua.ObjectIds.TrustListUpdatedAuditEventType)
805
806
class CertificateUpdatedAuditEvent(AuditUpdateMethodEvent):
807
    """
808
    CertificateUpdatedAuditEvent: 
809
    """
810
    def __init__(self, sourcenode=None, message=None, severity=1):
811
        super(CertificateUpdatedAuditEvent, self).__init__(sourcenode, message, severity)
812
        self.EventType = ua.NodeId(ua.ObjectIds.CertificateUpdatedAuditEventType)
813
        self.add_property('CertificateGroup', ua.NodeId(ua.ObjectIds.CertificateUpdatedAuditEventType), ua.VariantType.NodeId)
814
        self.add_property('CertificateType', ua.NodeId(ua.ObjectIds.CertificateUpdatedAuditEventType), ua.VariantType.NodeId)
815
816
class CertificateExpirationAlarm(SystemOffNormalAlarm):
817
    """
818
    CertificateExpirationAlarm: 
819
    """
820
    def __init__(self, sourcenode=None, message=None, severity=1):
821
        super(CertificateExpirationAlarm, self).__init__(sourcenode, message, severity)
822
        self.EventType = ua.NodeId(ua.ObjectIds.CertificateExpirationAlarmType)
823
        self.add_property('ExpirationDate', None, ua.VariantType.DateTime)
824
        self.add_property('ExpirationLimit', None, ua.NodeId(ua.ObjectIds.Duration))
825
        self.add_property('CertificateType', ua.NodeId(ua.ObjectIds.CertificateExpirationAlarmType), ua.VariantType.NodeId)
826
        self.add_property('Certificate', None, ua.VariantType.ByteString)
827
828
class AuditConditionResetEvent(AuditConditionEvent):
829
    """
830
    AuditConditionResetEvent: 
831
    """
832
    def __init__(self, sourcenode=None, message=None, severity=1):
833
        super(AuditConditionResetEvent, self).__init__(sourcenode, message, severity)
834
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionResetEventType)
835
836
class PubSubStatusEvent(SystemEvent):
837
    """
838
    PubSubStatusEvent: 
839
    """
840
    def __init__(self, sourcenode=None, message=None, severity=1):
841
        super(PubSubStatusEvent, self).__init__(sourcenode, message, severity)
842
        self.EventType = ua.NodeId(ua.ObjectIds.PubSubStatusEventType)
843
        self.add_property('ConnectionId', ua.NodeId(ua.ObjectIds.PubSubStatusEventType), ua.VariantType.NodeId)
844
        self.add_property('GroupId', ua.NodeId(ua.ObjectIds.PubSubStatusEventType), ua.VariantType.NodeId)
845
        self.add_property('State', None, ua.NodeId(ua.ObjectIds.PubSubState))
846
847
class PubSubTransportLimitsExceedEvent(PubSubStatusEvent):
848
    """
849
    PubSubTransportLimitsExceedEvent: 
850
    """
851
    def __init__(self, sourcenode=None, message=None, severity=1):
852
        super(PubSubTransportLimitsExceedEvent, self).__init__(sourcenode, message, severity)
853
        self.EventType = ua.NodeId(ua.ObjectIds.PubSubTransportLimitsExceedEventType)
854
        self.add_property('Actual', None, ua.VariantType.UInt32)
855
        self.add_property('Maximum', None, ua.VariantType.UInt32)
856
857
class PubSubCommunicationFailureEvent(PubSubStatusEvent):
858
    """
859
    PubSubCommunicationFailureEvent: 
860
    """
861
    def __init__(self, sourcenode=None, message=None, severity=1):
862
        super(PubSubCommunicationFailureEvent, self).__init__(sourcenode, message, severity)
863
        self.EventType = ua.NodeId(ua.ObjectIds.PubSubCommunicationFailureEventType)
864
        self.add_property('Error', None, ua.VariantType.StatusCode)
865
866
class DiscrepancyAlarm(AlarmCondition):
867
    """
868
    DiscrepancyAlarm: 
869
    """
870
    def __init__(self, sourcenode=None, message=None, severity=1):
871
        super(DiscrepancyAlarm, self).__init__(sourcenode, message, severity)
872
        self.EventType = ua.NodeId(ua.ObjectIds.DiscrepancyAlarmType)
873
        self.add_property('TargetValueNode', ua.NodeId(ua.ObjectIds.DiscrepancyAlarmType), ua.VariantType.NodeId)
874
        self.add_property('ExpectedTime', None, ua.VariantType.DateTime)
875
        self.add_property('Tolerance', None, ua.VariantType.Double)
876
877
class AuditConditionSuppressionEvent(AuditConditionEvent):
878
    """
879
    AuditConditionSuppressionEvent: 
880
    """
881
    def __init__(self, sourcenode=None, message=None, severity=1):
882
        super(AuditConditionSuppressionEvent, self).__init__(sourcenode, message, severity)
883
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionSuppressionEventType)
884
885
class AuditConditionSilenceEvent(AuditConditionEvent):
886
    """
887
    AuditConditionSilenceEvent: 
888
    """
889
    def __init__(self, sourcenode=None, message=None, severity=1):
890
        super(AuditConditionSilenceEvent, self).__init__(sourcenode, message, severity)
891
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionSilenceEventType)
892
893
class AuditConditionOutOfServiceEvent(AuditConditionEvent):
894
    """
895
    AuditConditionOutOfServiceEvent: 
896
    """
897
    def __init__(self, sourcenode=None, message=None, severity=1):
898
        super(AuditConditionOutOfServiceEvent, self).__init__(sourcenode, message, severity)
899
        self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionOutOfServiceEventType)
900
901
class RoleMappingRuleChangedAuditEvent(AuditUpdateMethodEvent):
902
    """
903
    RoleMappingRuleChangedAuditEvent: 
904
    """
905
    def __init__(self, sourcenode=None, message=None, severity=1):
906
        super(RoleMappingRuleChangedAuditEvent, self).__init__(sourcenode, message, severity)
907
        self.EventType = ua.NodeId(ua.ObjectIds.RoleMappingRuleChangedAuditEventType)
908
909
class KeyCredentialAuditEvent(AuditUpdateMethodEvent):
910
    """
911
    KeyCredentialAuditEvent: 
912
    """
913
    def __init__(self, sourcenode=None, message=None, severity=1):
914
        super(KeyCredentialAuditEvent, self).__init__(sourcenode, message, severity)
915
        self.EventType = ua.NodeId(ua.ObjectIds.KeyCredentialAuditEventType)
916
        self.add_property('ResourceUri', None, ua.VariantType.String)
917
918
class KeyCredentialUpdatedAuditEvent(KeyCredentialAuditEvent):
919
    """
920
    KeyCredentialUpdatedAuditEvent: 
921
    """
922
    def __init__(self, sourcenode=None, message=None, severity=1):
923
        super(KeyCredentialUpdatedAuditEvent, self).__init__(sourcenode, message, severity)
924
        self.EventType = ua.NodeId(ua.ObjectIds.KeyCredentialUpdatedAuditEventType)
925
926
class KeyCredentialDeletedAuditEvent(KeyCredentialAuditEvent):
927
    """
928
    KeyCredentialDeletedAuditEvent: 
929
    """
930
    def __init__(self, sourcenode=None, message=None, severity=1):
931
        super(KeyCredentialDeletedAuditEvent, self).__init__(sourcenode, message, severity)
932
        self.EventType = ua.NodeId(ua.ObjectIds.KeyCredentialDeletedAuditEventType)
933
934
class InstrumentDiagnosticAlarm(OffNormalAlarm):
935
    """
936
    InstrumentDiagnosticAlarm: 
937
    """
938
    def __init__(self, sourcenode=None, message=None, severity=1):
939
        super(InstrumentDiagnosticAlarm, self).__init__(sourcenode, message, severity)
940
        self.EventType = ua.NodeId(ua.ObjectIds.InstrumentDiagnosticAlarmType)
941
942
class SystemDiagnosticAlarm(OffNormalAlarm):
943
    """
944
    SystemDiagnosticAlarm: 
945
    """
946
    def __init__(self, sourcenode=None, message=None, severity=1):
947
        super(SystemDiagnosticAlarm, self).__init__(sourcenode, message, severity)
948
        self.EventType = ua.NodeId(ua.ObjectIds.SystemDiagnosticAlarmType)
949
950
class AuditHistoryAnnotationUpdateEvent(AuditHistoryUpdateEvent):
951
    """
952
    AuditHistoryAnnotationUpdateEvent: 
953
    """
954
    def __init__(self, sourcenode=None, message=None, severity=1):
955
        super(AuditHistoryAnnotationUpdateEvent, self).__init__(sourcenode, message, severity)
956
        self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryAnnotationUpdateEventType)
957
        self.add_property('PerformInsertReplace', None, ua.NodeId(ua.ObjectIds.PerformUpdateType))
958
        self.add_property('NewValues', None, ua.NodeId(ua.ObjectIds.DataValue))
959
        self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue))
960
961
962
IMPLEMENTED_EVENTS = {
963
    ua.ObjectIds.BaseEventType: BaseEvent,
964
    ua.ObjectIds.AuditEventType: AuditEvent,
965
    ua.ObjectIds.AuditSecurityEventType: AuditSecurityEvent,
966
    ua.ObjectIds.AuditChannelEventType: AuditChannelEvent,
967
    ua.ObjectIds.AuditOpenSecureChannelEventType: AuditOpenSecureChannelEvent,
968
    ua.ObjectIds.AuditSessionEventType: AuditSessionEvent,
969
    ua.ObjectIds.AuditCreateSessionEventType: AuditCreateSessionEvent,
970
    ua.ObjectIds.AuditActivateSessionEventType: AuditActivateSessionEvent,
971
    ua.ObjectIds.AuditCancelEventType: AuditCancelEvent,
972
    ua.ObjectIds.AuditCertificateEventType: AuditCertificateEvent,
973
    ua.ObjectIds.AuditCertificateDataMismatchEventType: AuditCertificateDataMismatchEvent,
974
    ua.ObjectIds.AuditCertificateExpiredEventType: AuditCertificateExpiredEvent,
975
    ua.ObjectIds.AuditCertificateInvalidEventType: AuditCertificateInvalidEvent,
976
    ua.ObjectIds.AuditCertificateUntrustedEventType: AuditCertificateUntrustedEvent,
977
    ua.ObjectIds.AuditCertificateRevokedEventType: AuditCertificateRevokedEvent,
978
    ua.ObjectIds.AuditCertificateMismatchEventType: AuditCertificateMismatchEvent,
979
    ua.ObjectIds.AuditNodeManagementEventType: AuditNodeManagementEvent,
980
    ua.ObjectIds.AuditAddNodesEventType: AuditAddNodesEvent,
981
    ua.ObjectIds.AuditDeleteNodesEventType: AuditDeleteNodesEvent,
982
    ua.ObjectIds.AuditAddReferencesEventType: AuditAddReferencesEvent,
983
    ua.ObjectIds.AuditDeleteReferencesEventType: AuditDeleteReferencesEvent,
984
    ua.ObjectIds.AuditUpdateEventType: AuditUpdateEvent,
985
    ua.ObjectIds.AuditWriteUpdateEventType: AuditWriteUpdateEvent,
986
    ua.ObjectIds.AuditHistoryUpdateEventType: AuditHistoryUpdateEvent,
987
    ua.ObjectIds.AuditUpdateMethodEventType: AuditUpdateMethodEvent,
988
    ua.ObjectIds.SystemEventType: SystemEvent,
989
    ua.ObjectIds.DeviceFailureEventType: DeviceFailureEvent,
990
    ua.ObjectIds.BaseModelChangeEventType: BaseModelChangeEvent,
991
    ua.ObjectIds.GeneralModelChangeEventType: GeneralModelChangeEvent,
992
    ua.ObjectIds.TransitionEventType: TransitionEvent,
993
    ua.ObjectIds.AuditUpdateStateEventType: AuditUpdateStateEvent,
994
    ua.ObjectIds.ProgramTransitionEventType: ProgramTransitionEvent,
995
    ua.ObjectIds.SemanticChangeEventType: SemanticChangeEvent,
996
    ua.ObjectIds.AuditUrlMismatchEventType: AuditUrlMismatchEvent,
997
    ua.ObjectIds.ConditionType: Condition,
998
    ua.ObjectIds.RefreshStartEventType: RefreshStartEvent,
999
    ua.ObjectIds.RefreshEndEventType: RefreshEndEvent,
1000
    ua.ObjectIds.RefreshRequiredEventType: RefreshRequiredEvent,
1001
    ua.ObjectIds.AuditConditionEventType: AuditConditionEvent,
1002
    ua.ObjectIds.AuditConditionEnableEventType: AuditConditionEnableEvent,
1003
    ua.ObjectIds.AuditConditionCommentEventType: AuditConditionCommentEvent,
1004
    ua.ObjectIds.DialogConditionType: DialogCondition,
1005
    ua.ObjectIds.AcknowledgeableConditionType: AcknowledgeableCondition,
1006
    ua.ObjectIds.AlarmConditionType: AlarmCondition,
1007
    ua.ObjectIds.LimitAlarmType: LimitAlarm,
1008
    ua.ObjectIds.AuditHistoryEventUpdateEventType: AuditHistoryEventUpdateEvent,
1009
    ua.ObjectIds.AuditHistoryValueUpdateEventType: AuditHistoryValueUpdateEvent,
1010
    ua.ObjectIds.AuditHistoryDeleteEventType: AuditHistoryDeleteEvent,
1011
    ua.ObjectIds.AuditHistoryRawModifyDeleteEventType: AuditHistoryRawModifyDeleteEvent,
1012
    ua.ObjectIds.AuditHistoryAtTimeDeleteEventType: AuditHistoryAtTimeDeleteEvent,
1013
    ua.ObjectIds.AuditHistoryEventDeleteEventType: AuditHistoryEventDeleteEvent,
1014
    ua.ObjectIds.EventQueueOverflowEventType: EventQueueOverflowEvent,
1015
    ua.ObjectIds.ProgramTransitionAuditEventType: ProgramTransitionAuditEvent,
1016
    ua.ObjectIds.AuditConditionRespondEventType: AuditConditionRespondEvent,
1017
    ua.ObjectIds.AuditConditionAcknowledgeEventType: AuditConditionAcknowledgeEvent,
1018
    ua.ObjectIds.AuditConditionConfirmEventType: AuditConditionConfirmEvent,
1019
    ua.ObjectIds.ExclusiveLimitAlarmType: ExclusiveLimitAlarm,
1020
    ua.ObjectIds.ExclusiveLevelAlarmType: ExclusiveLevelAlarm,
1021
    ua.ObjectIds.ExclusiveRateOfChangeAlarmType: ExclusiveRateOfChangeAlarm,
1022
    ua.ObjectIds.ExclusiveDeviationAlarmType: ExclusiveDeviationAlarm,
1023
    ua.ObjectIds.NonExclusiveLimitAlarmType: NonExclusiveLimitAlarm,
1024
    ua.ObjectIds.NonExclusiveLevelAlarmType: NonExclusiveLevelAlarm,
1025
    ua.ObjectIds.NonExclusiveRateOfChangeAlarmType: NonExclusiveRateOfChangeAlarm,
1026
    ua.ObjectIds.NonExclusiveDeviationAlarmType: NonExclusiveDeviationAlarm,
1027
    ua.ObjectIds.DiscreteAlarmType: DiscreteAlarm,
1028
    ua.ObjectIds.OffNormalAlarmType: OffNormalAlarm,
1029
    ua.ObjectIds.TripAlarmType: TripAlarm,
1030
    ua.ObjectIds.AuditConditionShelvingEventType: AuditConditionShelvingEvent,
1031
    ua.ObjectIds.ProgressEventType: ProgressEvent,
1032
    ua.ObjectIds.SystemStatusChangeEventType: SystemStatusChangeEvent,
1033
    ua.ObjectIds.SystemOffNormalAlarmType: SystemOffNormalAlarm,
1034
    ua.ObjectIds.AuditProgramTransitionEventType: AuditProgramTransitionEvent,
1035
    ua.ObjectIds.TrustListUpdatedAuditEventType: TrustListUpdatedAuditEvent,
1036
    ua.ObjectIds.CertificateUpdatedAuditEventType: CertificateUpdatedAuditEvent,
1037
    ua.ObjectIds.CertificateExpirationAlarmType: CertificateExpirationAlarm,
1038
    ua.ObjectIds.AuditConditionResetEventType: AuditConditionResetEvent,
1039
    ua.ObjectIds.PubSubStatusEventType: PubSubStatusEvent,
1040
    ua.ObjectIds.PubSubTransportLimitsExceedEventType: PubSubTransportLimitsExceedEvent,
1041
    ua.ObjectIds.PubSubCommunicationFailureEventType: PubSubCommunicationFailureEvent,
1042
    ua.ObjectIds.DiscrepancyAlarmType: DiscrepancyAlarm,
1043
    ua.ObjectIds.AuditConditionSuppressionEventType: AuditConditionSuppressionEvent,
1044
    ua.ObjectIds.AuditConditionSilenceEventType: AuditConditionSilenceEvent,
1045
    ua.ObjectIds.AuditConditionOutOfServiceEventType: AuditConditionOutOfServiceEvent,
1046
    ua.ObjectIds.RoleMappingRuleChangedAuditEventType: RoleMappingRuleChangedAuditEvent,
1047
    ua.ObjectIds.KeyCredentialAuditEventType: KeyCredentialAuditEvent,
1048
    ua.ObjectIds.KeyCredentialUpdatedAuditEventType: KeyCredentialUpdatedAuditEvent,
1049
    ua.ObjectIds.KeyCredentialDeletedAuditEventType: KeyCredentialDeletedAuditEvent,
1050
    ua.ObjectIds.InstrumentDiagnosticAlarmType: InstrumentDiagnosticAlarm,
1051
    ua.ObjectIds.SystemDiagnosticAlarmType: SystemDiagnosticAlarm,
1052
    ua.ObjectIds.AuditHistoryAnnotationUpdateEventType: AuditHistoryAnnotationUpdateEvent,
1053
    }
1054