annotate src/edu/unc/genomics/ReadablePathValidator.java @ 2:e16016635b2a

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