package com.koushikdutta.async; import com.koushikdutta.async.callback.CompletedCallback; import com.koushikdutta.async.callback.DataCallback; /** * Created by koush on 5/27/13. */ public abstract class DataEmitterBase implements DataEmitter { private boolean ended; protected void resetEnded() { ended = false; } protected void report(Exception e) { if (ended) return; ended = true; if (getEndCallback() != null) getEndCallback().onCompleted(e); } @Override public final void setEndCallback(CompletedCallback callback) { endCallback = callback; } CompletedCallback endCallback; @Override public final CompletedCallback getEndCallback() { return endCallback; } DataCallback mDataCallback; @Override public void setDataCallback(DataCallback callback) { mDataCallback = callback; } @Override public DataCallback getDataCallback() { return mDataCallback; } }