/*
- * Sone - ListNotification.java - Copyright © 2010 David Roden
+ * Sone - ListNotification.java - Copyright © 2010–2013 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
* 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();
}
// ABSTRACTNOTIFICATION METHODS
//
- /**
- * {@inheritDoc}
- */
@Override
public void dismiss() {
super.dismiss();
// OBJECT METHODS
//
- /**
- * {@inheritDoc}
- */
@Override
public int hashCode() {
- int hashCode = key.hashCode();
+ int hashCode = super.hashCode();
for (T element : elements) {
hashCode ^= element.hashCode();
}
return hashCode;
}
- /**
- * {@inheritDoc}
- */
@Override
public boolean equals(Object object) {
if (!(object instanceof ListNotification)) {
return false;
}
ListNotification<?> listNotification = (ListNotification<?>) object;
+ if (!super.equals(listNotification)) {
+ return false;
+ }
if (!key.equals(listNotification.key)) {
return false;
}