public Map<String, Object> getOptionsFor(final String processor) {
if (this.parsedOptions == null) {
this.parsedOptions = new HashMap<String, Map<String, Object>>();
if (this.optionsDefinition != null) {
for (final String byProcessor : this.optionsDefinition.split(";")) {
StringTokenizer tokenizer = new StringTokenizer(byProcessor, ":");
final String name = tokenizer.nextToken();
this.parsedOptions.put(name, new HashMap<String, Object>());
for (final String option : tokenizer.nextToken().split(",")) {
tokenizer = new StringTokenizer(option, "=");
this.parsedOptions.get(name).put(tokenizer.nextToken(),
tokenizer.nextToken());
}
}
}
}
final Map<String, Object> options = getProcessOrOptions(processor);
if (!options.containsKey("source-maps")) {
options.put("source-maps", Boolean.toString(GlobalOptions
.isGenerateSourceMaps(getProcessOrOptions("global")
.get("source-maps"))));
}
return options;
}