if (value instanceof Closure) {
Closure callable = (Closure) value;
final Closure cloned = (Closure) callable.clone();
cloned.setDelegate(webRequest);
cloned.setResolveStrategy(Closure.DELEGATE_FIRST);
Object result = cloned.call();
name = result != null ? result.toString() : null;
}
else if (value instanceof Map) {
Map httpMethods = (Map) value;
name = (String) httpMethods.get(webRequest.getCurrentRequest().getMethod());