// Path: spring-mvc-asynch/src/main/java/se/callista/springmvc/asynch/common/statemachine/Processor.java
// public interface Processor {
//     public void process(State state);
// }


import se.callista.springmvc.asynch.common.statemachine.Processor;
import java.util.Iterator;
package se.callista.springmvc.asynch.common.statemachine.internal;



/**
 * Created by magnus on 08/06/14.
 */
public class StateProcessingStepIterator implements Iterator<Processor> {

    private final Iterator<Processor> processingSteps;
    private int processingStepNo = 0;

    public StateProcessingStepIterator(Iterator<Processor> processingSteps) {
        this.processingSteps = processingSteps;
    }

    @Override
// Path: spring-mvc-asynch/src/main/java/se/callista/springmvc/asynch/common/statemachine/Processor.java
// public interface Processor {
//     public void process(State state);
// }


// Path: spring-mvc-asynch/src/main/java/se/callista/springmvc/asynch/common/statemachine/internal/StateProcessingStepIterator.java
import se.callista.springmvc.asynch.common.statemachine.Processor;
import java.util.Iterator;

package se.callista.springmvc.asynch.common.statemachine.internal;



/**
 * Created by magnus on 08/06/14.
 */
public class StateProcessingStepIterator implements Iterator<Processor> {

    private final Iterator<Processor> processingSteps;
    private int processingStepNo = 0;

    public StateProcessingStepIterator(Iterator<Processor> processingSteps) {
        this.processingSteps = processingSteps;
    }

    @Override
    public boolean hasNext() {