annotate java-genomics-toolkit/src/edu/unc/genomics/ReadablePathValidator.java @ 0:1daf3026d231

Upload alpha version
author timpalpant
date Mon, 13 Feb 2012 21:55:55 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
1 /**
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
2 *
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
3 */
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
4 package edu.unc.genomics;
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
5
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
6 import java.nio.file.Files;
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
7 import java.nio.file.Path;
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
8
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
9 import com.beust.jcommander.IParameterValidator;
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
10 import com.beust.jcommander.ParameterException;
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
11
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
12 /**
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
13 * @author timpalpant
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
14 *
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
15 */
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
16 public class ReadablePathValidator implements IParameterValidator {
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
17
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
18 /* (non-Javadoc)
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
19 * @see com.beust.jcommander.IParameterValidator#validate(java.lang.String, java.lang.String)
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
20 */
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
21 @Override
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
22 public void validate(String name, String value) throws ParameterException {
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
23 PathConverter converter = new PathConverter();
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
24 Path p = converter.convert(value);
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
25 if (!Files.isReadable(p)) {
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
26 throw new ParameterException("Parameter " + name + " should be a readable file");
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
27 }
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
28 }
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
29
1daf3026d231 Upload alpha version
timpalpant
parents:
diff changeset
30 }