X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fnotify%2FListNotification.java;h=11b08290aca3f3880df1237d81fa8bde7d2bf481;hp=d99424c0cdeb4b174128ec9562ad370067572c91;hb=2bacfa78f3191fd9847574a6c8b218a4882844a4;hpb=99888ce13cc17d49f5e217ab6f2c9ad5ef168792 diff --git a/src/main/java/net/pterodactylus/sone/notify/ListNotification.java b/src/main/java/net/pterodactylus/sone/notify/ListNotification.java index d99424c..11b0829 100644 --- a/src/main/java/net/pterodactylus/sone/notify/ListNotification.java +++ b/src/main/java/net/pterodactylus/sone/notify/ListNotification.java @@ -1,5 +1,5 @@ /* - * Sone - ListNotification.java - Copyright © 2010–2013 David Roden + * Sone - ListNotification.java - Copyright © 2010–2016 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -30,7 +30,6 @@ import net.pterodactylus.util.template.Template; * * @param * The type of the items - * @author David ‘Bombe’ Roden */ public class ListNotification extends TemplateNotification { @@ -38,7 +37,7 @@ public class ListNotification extends TemplateNotification { private final String key; /** The list of new elements. */ - private final List elements = new CopyOnWriteArrayList(); + private final List elements = new CopyOnWriteArrayList<>(); /** * Creates a new list notification. @@ -97,7 +96,7 @@ public class ListNotification extends TemplateNotification { * @return The current list of elements */ public List getElements() { - return new ArrayList(elements); + return new ArrayList<>(elements); } /** @@ -141,7 +140,9 @@ public class ListNotification extends TemplateNotification { * The element to remove */ public void remove(T element) { - elements.remove(element); + while (elements.remove(element)) { + /* do nothing, just remove all instances of the element. */ + } if (elements.isEmpty()) { dismiss(); } @@ -192,15 +193,7 @@ public class ListNotification extends TemplateNotification { if (!key.equals(listNotification.key)) { return false; } - if (elements.size() != listNotification.elements.size()) { - return false; - } - for (int index = 0; index < elements.size(); ++index) { - if (!elements.get(index).equals(listNotification.elements.get(index))) { - return false; - } - } - return true; + return elements.equals(listNotification.elements); } }