/** * Does the actual configuration. This is protected, so * subclasses may share the same ValueParser and call configure * at any time, while preventing templates from doing so when * configure(Map) is locked. */ protected void configure(ValueParser values) { super.configure(values); String format = values.getString(FORMAT_KEY); if (format != null) { setFormat(format); } }