class AbstractPollableSource extends BasicSourceSemantics implements PollableSource {

  public Status process() throws EventDeliveryException {
    Exception exception = getStartException();
    if (exception != null) {
      throw new FlumeException("Source had error configuring or starting",
          exception);
    }
    if (!isStarted()) {
      throw new EventDeliveryException("Source is not started.  It is in '" +
                                       getLifecycleState() + "' state");
    }
    return doProcess();
  }

  public  AbstractPollableSource();

}