
fi.evolver.utils.arg.BooleanArg Maven / Gradle / Ivy
package fi.evolver.utils.arg;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.nio.charset.StandardCharsets;
public class BooleanArg extends Arg {
private static final int[] TRUE = new int[] { 't', 'r', 'u', 'e', -1 };
public BooleanArg(String name, Boolean defaultValue) {
super(Boolean.class, name, false, defaultValue);
}
public BooleanArg(String name) {
super(Boolean.class, name, true, null);
}
@Override
protected Boolean convert(InputStream in) throws IOException {
try (Reader reader = new InputStreamReader(in, StandardCharsets.UTF_8)) {
for (int c: TRUE) {
if (reader.read() != c)
return Boolean.FALSE;
}
}
return Boolean.TRUE;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy