All Downloads are FREE. Search and download functionalities are using the official Maven repository.

fi.evolver.utils.arg.BooleanArg Maven / Gradle / Ivy

There is a newer version: 3.5.0
Show newest version
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