Code Duplication    Length = 10-10 lines in 3 locations

src/apex/plugins/apexparadigm/__init__.py 3 locations

@@ 114-123 (lines=10) @@
111
                        frame_hash = apex.aprs.util.hash_frame(frame)
112
                        if frame_hash not in self.packet_cache.values():
113
                            self.packet_cache[str(frame_hash)] = frame_hash
114
                            port['tnc'].write(frame, port['tnc_port'])
115
                            self.aprsis.send(frame)
116
                            click.echo(port_name + ' >> ' + apex.aprs.util.format_aprs_frame(frame))
117
                        return
118
                    elif node == 'GATE' and port['net'].startswith('2M'):
119
                        frame['path'] = frame['path'][:hop_index] + [recv_port['identifier'] + '*'] + [node + '*'] +\
120
                                        frame['path'][hop_index+1:]
121
                        frame_hash = apex.aprs.util.hash_frame(frame)
122
                        if frame_hash not in self.packet_cache.values():
123
                            self.packet_cache[str(frame_hash)] = frame_hash
124
                            port['tnc'].write(frame, port['tnc_port'])
125
                            self.aprsis.send(frame)
126
                            click.echo(port_name + ' >> ' + apex.aprs.util.format_aprs_frame(frame))
@@ 92-101 (lines=10) @@
89
                                if frame_hash not in self.packet_cache.values():
90
                                    self.packet_cache[str(frame_hash)] = frame_hash
91
                                    port['tnc'].write(frame, port['tnc_port'])
92
                                    self.aprsis.send(frame)
93
                                    click.echo(port_name + ' >> ' + apex.aprs.util.format_aprs_frame(frame))
94
                                return
95
                        else:
96
                            if port['net'].startswith(node):
97
                                frame['path'] = frame['path'][:hop_index] + [recv_port['identifier'] + '*'] +\
98
                                                [hop + '*'] + frame['path'][hop_index+1:]
99
                                frame_hash = apex.aprs.util.hash_frame(frame)
100
                                if frame_hash not in self.packet_cache.values():
101
                                    self.packet_cache[str(frame_hash)] = frame_hash
102
                                    port['tnc'].write(frame, port['tnc_port'])
103
                                    self.aprsis.send(frame)
104
                                    click.echo(port_name + ' >> ' + apex.aprs.util.format_aprs_frame(frame))
@@ 81-90 (lines=10) @@
78
                    if len(split_port_identifier) >= 2 and split_port_identifier[1]:
79
                        port_ssid = int(split_port_identifier[1])
80
                    else:
81
                        port_ssid = 0
82
83
                    if band_path:
84
                        if band_path_net:
85
                            if node == port['net']:
86
                                frame['path'] = frame['path'][:hop_index] + [recv_port['identifier'] + '*'] +\
87
                                                [hop + '*'] + frame['path'][hop_index+1:]
88
                                frame_hash = apex.aprs.util.hash_frame(frame)
89
                                if frame_hash not in self.packet_cache.values():
90
                                    self.packet_cache[str(frame_hash)] = frame_hash
91
                                    port['tnc'].write(frame, port['tnc_port'])
92
                                    self.aprsis.send(frame)
93
                                    click.echo(port_name + ' >> ' + apex.aprs.util.format_aprs_frame(frame))