From 649258bd2bec43d3b8b6de70e361330be954e33c Mon Sep 17 00:00:00 2001 From: robekl Date: Sat, 25 Apr 2020 04:52:14 -0500 Subject: [PATCH] Fix some minor bugs (#745) * Include other member variables in copy constructor * Add break to switch cases * Implement equals() in classes extending Comparable If equals() is not overridden, the equals() implementation is not consistent with the compareTo() implementation. If an object of such a class is added to a collection such as java.util.SortedSet, this collection will violate the contract of java.util.Set, which is defined in terms of equals(). Co-authored-by: Rob Ekl --- src/main/java/io/github/dsheirer/alias/id/WildcardID.java | 6 ++++++ .../io/github/dsheirer/audio/broadcast/AudioRecording.java | 6 ++++++ .../io/github/dsheirer/audio/broadcast/BroadcastModel.java | 1 + src/main/java/io/github/dsheirer/bits/BinaryMessage.java | 2 ++ .../io/github/dsheirer/channel/state/MultiChannelState.java | 1 + .../controller/channel/ChannelProcessingManager.java | 1 + src/main/java/io/github/dsheirer/filter/FilterElement.java | 6 ++++++ src/main/java/io/github/dsheirer/icon/Icon.java | 6 ++++++ .../io/github/dsheirer/identifier/esn/ESNIdentifier.java | 6 ++++++ .../github/dsheirer/identifier/talkgroup/LTRTalkgroup.java | 6 ++++++ .../decode/fleetsync2/identifier/FleetsyncIdentifier.java | 6 ++++++ .../module/decode/ltrnet/channel/LtrNetChannel.java | 6 ++++++ .../decode/ltrnet/identifier/LtrNetRadioIdentifier.java | 6 ++++++ .../module/decode/ltrstandard/channel/LtrChannel.java | 6 ++++++ .../dsheirer/module/decode/mpt1327/MPT1327Message.java | 1 + .../decode/p25/identifier/channel/P25ExplicitChannel.java | 6 ++++++ .../module/decode/p25/phase1/P25P1DecoderState.java | 2 ++ .../decode/passport/identifier/PassportTalkgroup.java | 6 ++++++ src/main/java/io/github/dsheirer/source/SourceManager.java | 1 + .../java/io/github/dsheirer/source/recording/Recording.java | 6 ++++++ .../dsheirer/source/tuner/airspy/AirspyTunerEditor.java | 1 + .../github/dsheirer/source/tuner/channel/TunerChannel.java | 6 ++++++ 22 files changed, 94 insertions(+) diff --git a/src/main/java/io/github/dsheirer/alias/id/WildcardID.java b/src/main/java/io/github/dsheirer/alias/id/WildcardID.java index 96d9a60b..2ce8c6da 100644 --- a/src/main/java/io/github/dsheirer/alias/id/WildcardID.java +++ b/src/main/java/io/github/dsheirer/alias/id/WildcardID.java @@ -110,4 +110,10 @@ public class WildcardID implements Comparable { return Integer.compare(this.weight(), otherWildcardID.weight()); } + + @Override + public boolean equals(Object o) { + if (!(o instanceof WildcardID)) return false; + return compareTo((WildcardID) o) == 0; + } } diff --git a/src/main/java/io/github/dsheirer/audio/broadcast/AudioRecording.java b/src/main/java/io/github/dsheirer/audio/broadcast/AudioRecording.java index 5b70c83a..c9cfac5e 100644 --- a/src/main/java/io/github/dsheirer/audio/broadcast/AudioRecording.java +++ b/src/main/java/io/github/dsheirer/audio/broadcast/AudioRecording.java @@ -138,4 +138,10 @@ public class AudioRecording implements Comparable { return mPendingReplayCount.get() > 0; } + + @Override + public boolean equals(Object o) { + if (!(o instanceof AudioRecording)) return false; + return compareTo((AudioRecording) o) == 0; + } } diff --git a/src/main/java/io/github/dsheirer/audio/broadcast/BroadcastModel.java b/src/main/java/io/github/dsheirer/audio/broadcast/BroadcastModel.java index 4018032f..0f9d1173 100644 --- a/src/main/java/io/github/dsheirer/audio/broadcast/BroadcastModel.java +++ b/src/main/java/io/github/dsheirer/audio/broadcast/BroadcastModel.java @@ -538,6 +538,7 @@ public class BroadcastModel extends AbstractTableModel implements Listener