I went ahead and whipped up a tool for you as well. This is just one of a couple derivatives I have created for other people here on d2jsp.
It is an extension of the base application framework, which I will give you first.
Code
package NumberReader;
public interface INumberReader
{
void readNumbers();
}
Code
package NumberReader;
import java.io.InputStream;
import java.io.PrintStream;
public interface INumberReaderConfig
{
Number getMaximumNumber();
Number getMinimumNumber();
int getAmountOfNumbers();
InputStream getInputer();
PrintStream getPrinter();
}
Code
package NumberReader;
public interface INumberReaderFactory
{
INumberReader createNumberReader(INumberReaderConfig config);
}
Code
package NumberReader;
public class NumberNotFoundException extends RuntimeException
{
public NumberNotFoundException(String msg)
{
super(msg);
}
}
Code
package NumberReader;
public abstract class NumberReaderApplicationBase
{
private INumberReaderFactory numberReaderFactory;
private INumberReaderConfig numberReaderConfig;
public NumberReaderApplicationBase(INumberReaderFactory numberReaderFactory, INumberReaderConfig numberReaderConfig)
{
this.numberReaderFactory = numberReaderFactory;
this.numberReaderConfig = numberReaderConfig;
}
public void execute()
{
INumberReader nr = numberReaderFactory.createNumberReader(numberReaderConfig);
nr.readNumbers();
}
}