public void define(String name, String value) { values.put(name, value); if (name.equalsIgnoreCase("graphviz_dot")) { OptionFlags.getInstance() .setDotExecutable(StringUtils.eventuallyRemoveStartingAndEndingDoubleQuote(value)); } }
private String manageDefine(Matcher m) throws IOException { final String group1 = m.group(1); final String group2 = m.group(2); if (group2 == null) { defines.define(group1, null); } else { final List<String> strings = defines.applyDefines(group2); if (strings.size() > 1) { throw new UnsupportedOperationException(); } final StringBuilder value = new StringBuilder(strings.get(0)); while (StringUtils.endsWithBackslash(value.toString())) { value.setLength(value.length() - 1); final String read = this.readLine(); value.append(read); } final List<String> li = new ArrayList<String>(); li.add(value.toString()); defines.define(group1, li); } return this.readLine(); }