edu.stanford.nlp.util.DataFilePaths Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of stanford-parser Show documentation
Show all versions of stanford-parser Show documentation
Stanford Parser processes raw text in English, Chinese, German, Arabic, and French, and extracts constituency parse trees.
package edu.stanford.nlp.util;
/**
* Simple utility class: reads the environment variable in
* ENV_VARIABLE and provides a method that converts strings which
* start with that environment variable to file paths. For example,
* you can send it
* "$NLP_DATA_HOME/data/pos-tagger/wsj3t0-18-left3words"
* and it will convert that to
* "/u/nlp/data/pos-tagger/wsj3t0-18-left3words"
* unless you have set $NLP_DATA_HOME to something else.
*
* The only environment variable expanded is that defined by
* ENV_VARIABLE, and the only place in the string it is expanded is at
* the start of the string.
*
* @author John Bauer
*/
public class DataFilePaths {
private DataFilePaths() {}
static final String NLP_DATA_VARIABLE = "NLP_DATA_HOME";
static final String NLP_DATA_VARIABLE_PREFIX = "$" + NLP_DATA_VARIABLE;
static final String NLP_DATA_HOME =
((System.getenv(NLP_DATA_VARIABLE) != null) ?
System.getenv(NLP_DATA_VARIABLE) : "/u/nlp");
static final String JAVANLP_VARIABLE = "JAVANLP_HOME";
static final String JAVANLP_VARIABLE_PREFIX = "$" + JAVANLP_VARIABLE;
static final String JAVANLP_HOME =
((System.getenv(JAVANLP_VARIABLE) != null) ?
System.getenv(JAVANLP_VARIABLE) : ".");
static public String convert(String path) {
if (path.startsWith(NLP_DATA_VARIABLE_PREFIX))
return NLP_DATA_HOME + path.substring(NLP_DATA_VARIABLE_PREFIX.length());
if (path.startsWith(JAVANLP_VARIABLE_PREFIX))
return JAVANLP_HOME + path.substring(JAVANLP_VARIABLE_PREFIX.length());
return path;
}
}