Code Duplication    Length = 61-67 lines in 2 locations

opcua/ua/uaprotocol_auto.py 2 locations

@@ 1170-1236 (lines=67) @@
1167
1168
    __repr__ = __str__
1169
1170
1171
class RequestHeader(FrozenClass):
1172
    '''
1173
    The header passed with every server request.
1174
1175
    :ivar AuthenticationToken:
1176
    :vartype AuthenticationToken: NodeId
1177
    :ivar Timestamp:
1178
    :vartype Timestamp: DateTime
1179
    :ivar RequestHandle:
1180
    :vartype RequestHandle: UInt32
1181
    :ivar ReturnDiagnostics:
1182
    :vartype ReturnDiagnostics: UInt32
1183
    :ivar AuditEntryId:
1184
    :vartype AuditEntryId: String
1185
    :ivar TimeoutHint:
1186
    :vartype TimeoutHint: UInt32
1187
    :ivar AdditionalHeader:
1188
    :vartype AdditionalHeader: ExtensionObject
1189
    '''
1190
    def __init__(self, binary=None):
1191
        if binary is not None:
1192
            self._binary_init(binary)
1193
            self._freeze = True
1194
            return
1195
        self.AuthenticationToken = NodeId()
1196
        self.Timestamp = datetime.now()
1197
        self.RequestHandle = 0
1198
        self.ReturnDiagnostics = 0
1199
        self.AuditEntryId = None
1200
        self.TimeoutHint = 0
1201
        self.AdditionalHeader = None
1202
        self._freeze = True
1203
1204
    def to_binary(self):
1205
        packet = []
1206
        packet.append(self.AuthenticationToken.to_binary())
1207
        packet.append(pack_datetime(self.Timestamp))
1208
        packet.append(uatype_UInt32.pack(self.RequestHandle))
1209
        packet.append(uatype_UInt32.pack(self.ReturnDiagnostics))
1210
        packet.append(pack_string(self.AuditEntryId))
1211
        packet.append(uatype_UInt32.pack(self.TimeoutHint))
1212
        packet.append(extensionobject_to_binary(self.AdditionalHeader))
1213
        return b''.join(packet)
1214
1215
    @staticmethod
1216
    def from_binary(data):
1217
        return RequestHeader(data)
1218
1219
    def _binary_init(self, data):
1220
        self.AuthenticationToken = NodeId.from_binary(data)
1221
        self.Timestamp = unpack_datetime(data)
1222
        self.RequestHandle = uatype_UInt32.unpack(data.read(4))[0]
1223
        self.ReturnDiagnostics = uatype_UInt32.unpack(data.read(4))[0]
1224
        self.AuditEntryId = unpack_string(data)
1225
        self.TimeoutHint = uatype_UInt32.unpack(data.read(4))[0]
1226
        self.AdditionalHeader = extensionobject_from_binary(data)
1227
1228
    def __str__(self):
1229
        return 'RequestHeader(' + 'AuthenticationToken:' + str(self.AuthenticationToken) + ', ' + \
1230
               'Timestamp:' + str(self.Timestamp) + ', ' + \
1231
               'RequestHandle:' + str(self.RequestHandle) + ', ' + \
1232
               'ReturnDiagnostics:' + str(self.ReturnDiagnostics) + ', ' + \
1233
               'AuditEntryId:' + str(self.AuditEntryId) + ', ' + \
1234
               'TimeoutHint:' + str(self.TimeoutHint) + ', ' + \
1235
               'AdditionalHeader:' + str(self.AdditionalHeader) + ')'
1236
1237
    __repr__ = __str__
1238
1239
@@ 4631-4691 (lines=61) @@
4628
4629
    __repr__ = __str__
4630
4631
4632
class AddReferencesItem(FrozenClass):
4633
    '''
4634
    A request to add a reference to the server address space.
4635
4636
    :ivar SourceNodeId:
4637
    :vartype SourceNodeId: NodeId
4638
    :ivar ReferenceTypeId:
4639
    :vartype ReferenceTypeId: NodeId
4640
    :ivar IsForward:
4641
    :vartype IsForward: Boolean
4642
    :ivar TargetServerUri:
4643
    :vartype TargetServerUri: String
4644
    :ivar TargetNodeId:
4645
    :vartype TargetNodeId: ExpandedNodeId
4646
    :ivar TargetNodeClass:
4647
    :vartype TargetNodeClass: NodeClass
4648
    '''
4649
    def __init__(self, binary=None):
4650
        if binary is not None:
4651
            self._binary_init(binary)
4652
            self._freeze = True
4653
            return
4654
        self.SourceNodeId = NodeId()
4655
        self.ReferenceTypeId = NodeId()
4656
        self.IsForward = True
4657
        self.TargetServerUri = None
4658
        self.TargetNodeId = ExpandedNodeId()
4659
        self.TargetNodeClass = NodeClass(0)
4660
        self._freeze = True
4661
4662
    def to_binary(self):
4663
        packet = []
4664
        packet.append(self.SourceNodeId.to_binary())
4665
        packet.append(self.ReferenceTypeId.to_binary())
4666
        packet.append(uatype_Boolean.pack(self.IsForward))
4667
        packet.append(pack_string(self.TargetServerUri))
4668
        packet.append(self.TargetNodeId.to_binary())
4669
        packet.append(uatype_UInt32.pack(self.TargetNodeClass.value))
4670
        return b''.join(packet)
4671
4672
    @staticmethod
4673
    def from_binary(data):
4674
        return AddReferencesItem(data)
4675
4676
    def _binary_init(self, data):
4677
        self.SourceNodeId = NodeId.from_binary(data)
4678
        self.ReferenceTypeId = NodeId.from_binary(data)
4679
        self.IsForward = uatype_Boolean.unpack(data.read(1))[0]
4680
        self.TargetServerUri = unpack_string(data)
4681
        self.TargetNodeId = ExpandedNodeId.from_binary(data)
4682
        self.TargetNodeClass = NodeClass(uatype_UInt32.unpack(data.read(4))[0])
4683
4684
    def __str__(self):
4685
        return 'AddReferencesItem(' + 'SourceNodeId:' + str(self.SourceNodeId) + ', ' + \
4686
               'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \
4687
               'IsForward:' + str(self.IsForward) + ', ' + \
4688
               'TargetServerUri:' + str(self.TargetServerUri) + ', ' + \
4689
               'TargetNodeId:' + str(self.TargetNodeId) + ', ' + \
4690
               'TargetNodeClass:' + str(self.TargetNodeClass) + ')'
4691
4692
    __repr__ = __str__
4693
4694