package com.google.gwt.dist.compiler.agent.processor; import java.io.FileNotFoundException; import java.io.IOException; import com.google.gwt.dist.ProcessingState; import com.google.gwt.dist.comm.SendDataPayload; /** * * Mock implementation of DataProcessor. This mock changes its state every n * seconds. * */ public class DataProcessorMock implements DataProcessor, Runnable { private int interval = 15000; private ProcessingState mockProcessingState; public DataProcessorMock(int intervalInMiliSeconds) { mockProcessingState = ProcessingState.READY; interval = intervalInMiliSeconds; } public void compilePermsFinished() { this.mockProcessingState = ProcessingState.COMPLETED; } public void compilePermsStarted() { this.mockProcessingState = ProcessingState.INPROGRESS; } public ProcessingState getCurrentState() { return this.mockProcessingState; } @Override public void run() { while (true) { try { Thread.sleep(interval); } catch (InterruptedException e) { e.printStackTrace(); } switch (mockProcessingState) { case READY: mockProcessingState = ProcessingState.INPROGRESS; compilePermsStarted(); break; case INPROGRESS: mockProcessingState = ProcessingState.COMPLETED; compilePermsFinished(); break; default: mockProcessingState = ProcessingState.READY; break; } } } @Override public void storeInputStreamOnDisk(SendDataPayload receivedData) throws FileNotFoundException, IOException { } @Override public void onDataReceived(SendDataPayload receivedData) { } public void reset(){ mockProcessingState = ProcessingState.READY; } }