Code Duplication    Length = 61-67 lines in 2 locations

opcua/ua/uaprotocol_auto.py 2 locations

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