package org.limewire.listener;
import org.limewire.util.Objects;
public class DefaultDataEvent<D> implements DataEvent<D> {
private final D data;
public DefaultDataEvent(D data) {
this.data = Objects.nonNull(data, "data");
}
@Override
public D getData() {
return data;
}
@Override
public int hashCode() {
return data.hashCode();
}
@Override
public boolean equals(Object obj) {
if(!(obj instanceof DataEvent)) {
return false;
}
return data.equals(((DataEvent)obj).getData());
}
@Override
public String toString() {
return getClass().getSimpleName() + " - data: " + data;
}
}