class ArgonOptionsConverter implements CommandLine.ITypeConverter<ArgonOptions> {

    @Override
    public ArgonOptions convert(String value) throws Exception {
        final Path path = Paths.get(value);

        if (!Files.exists(path)) {
            throw new FileNotFoundException(String.format("%s not found.", path));
        }

        try (InputStream in = Files.newInputStream(path)) {
            return JaxbUtil.unmarshal(in, ArgonOptions.class);
        }
    }

}