* take a single {@link Map} attribute so as to apply its attributes in a specific way. Otherwise
* it will simply pass on to the {@link StandardAttributeApplicator#applyAttributes(ObjectFactoryInterceptor, String, Object, Map)}.
*/
public void applyAttributes(GroovyBuilder builder, ObjectFactoryInterceptor ofi, String nodeName, Object instance, Map<Object, Object> attributes) {
ClassMethod apply = this.getAttributeApplicator(instance.getClass());
if (apply != null && attributes != null) apply.invoke(instance, attributes);
else if (attributes != null) super.applyAttributes(builder, ofi, nodeName, instance, attributes);
}
protected ClassMethod getAttributeApplicator (Class clazz) {
if (!this.apply.containsKey(clazz)) {