package epson.common;

import android.support.annotation.Nullable;

public class EventWrapper<T> {
    private boolean handled = false;
    private T mContent;

    public EventWrapper(T t) {
        if (t != null) {
            this.mContent = t;
            return;
        }
        throw new IllegalArgumentException("null values in Event are not allowed.");
    }

    @Nullable
    public T getEventContent() {
        if (this.handled) {
            return null;
        }
        this.handled = true;
        return this.mContent;
    }

    public boolean hasBeenHandled() {
        return this.handled;
    }
}
