From 34f4837ebd9c1afabd83e66d4086443c711adc1a Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Thu, 5 Apr 2012 15:52:09 -0700 Subject: [PATCH] Replace use of Iterator with Java 5 foreach loops Issues: SWF-1532 --- .../convert/converters/ArrayToCollection.java | 6 +- .../converters/CollectionToCollection.java | 5 +- .../expression/el/DefaultELResolver.java | 5 +- .../binding/mapping/impl/DefaultMapper.java | 5 +- .../mapping/impl/DefaultMappingResults.java | 13 +--- .../message/DefaultMessageContext.java | 9 +-- .../binding/message/MessageContextErrors.java | 5 +- .../springframework/faces/mvc/JsfView.java | 7 +-- .../faces/ui/AjaxViewRoot.java | 5 +- .../ui/ProgressiveCommandButtonRenderer.java | 20 +++--- .../ui/ProgressiveCommandLinkRenderer.java | 27 +++----- .../faces/ui/resource/ResourceHelper.java | 7 +-- .../FlowFacesContextMessageDelegate.java | 6 +- .../js/ajax/tiles2/AjaxTilesView.java | 4 +- .../js/resource/ResourceServlet.java | 9 +-- ...lowExecutionListenerLoaderFactoryBean.java | 5 +- .../core/collection/LocalAttributeMap.java | 8 +-- .../registry/FlowDefinitionRegistryImpl.java | 5 +- .../webflow/engine/ActionList.java | 7 +-- .../springframework/webflow/engine/Flow.java | 22 ++----- .../FlowExecutionExceptionHandlerSet.java | 7 +-- .../webflow/engine/TransitionSet.java | 11 ++-- .../webflow/engine/ViewState.java | 15 +---- .../engine/builder/BinderConfiguration.java | 5 +- .../engine/impl/FlowExecutionImplFactory.java | 2 +- .../webflow/engine/model/AbstractModel.java | 62 +++++++++---------- .../support/TransitionCriteriaChain.java | 7 +-- ...onditionalFlowExecutionListenerHolder.java | 7 +-- ...onditionalFlowExecutionListenerLoader.java | 11 ++-- .../mvc/portlet/FlowHandlerAdapter.java | 12 +--- .../mvc/servlet/FlowHandlerAdapter.java | 13 +--- .../webflow/mvc/view/AbstractMvcView.java | 5 +- .../SecurityFlowExecutionListener.java | 6 +- .../webflow/security/SecurityRule.java | 19 ++---- ...FlowRegistryBeanDefinitionParserTests.java | 6 +- 35 files changed, 113 insertions(+), 255 deletions(-) diff --git a/spring-binding/src/main/java/org/springframework/binding/convert/converters/ArrayToCollection.java b/spring-binding/src/main/java/org/springframework/binding/convert/converters/ArrayToCollection.java index c90bfc1c..ecbee91e 100644 --- a/spring-binding/src/main/java/org/springframework/binding/convert/converters/ArrayToCollection.java +++ b/spring-binding/src/main/java/org/springframework/binding/convert/converters/ArrayToCollection.java @@ -19,7 +19,6 @@ import java.lang.reflect.Array; import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.Collection; -import java.util.Iterator; import java.util.LinkedHashSet; import java.util.List; import java.util.Set; @@ -101,8 +100,7 @@ public class ArrayToCollection implements TwoWayConverter { Collection collection = (Collection) target; Object array = Array.newInstance(sourceClass.getComponentType(), collection.size()); int i = 0; - for (Iterator it = collection.iterator(); it.hasNext(); i++) { - Object value = it.next(); + for (Object value : collection) { if (value != null) { ConversionExecutor converter; if (elementConverter != null) { @@ -113,7 +111,7 @@ public class ArrayToCollection implements TwoWayConverter { } value = converter.execute(value); } - Array.set(array, i, value); + Array.set(array, i++, value); } return array; } diff --git a/spring-binding/src/main/java/org/springframework/binding/convert/converters/CollectionToCollection.java b/spring-binding/src/main/java/org/springframework/binding/convert/converters/CollectionToCollection.java index 6473c473..b5467fbd 100644 --- a/spring-binding/src/main/java/org/springframework/binding/convert/converters/CollectionToCollection.java +++ b/spring-binding/src/main/java/org/springframework/binding/convert/converters/CollectionToCollection.java @@ -1,7 +1,6 @@ package org.springframework.binding.convert.converters; import java.util.Collection; -import java.util.Iterator; import org.springframework.binding.convert.ConversionExecutor; import org.springframework.binding.convert.ConversionService; @@ -54,9 +53,7 @@ public class CollectionToCollection implements Converter { Collection targetCollection = CollectionFactory.createCollection(targetClass, DEFAULT_INITIAL_SIZE); ConversionExecutor elementConverter = getElementConverter(source, (Class>) targetClass); Collection sourceCollection = (Collection) source; - Iterator it = sourceCollection.iterator(); - while (it.hasNext()) { - Object value = it.next(); + for (Object value : sourceCollection) { if (elementConverter != null) { value = elementConverter.execute(value); } diff --git a/spring-binding/src/main/java/org/springframework/binding/expression/el/DefaultELResolver.java b/spring-binding/src/main/java/org/springframework/binding/expression/el/DefaultELResolver.java index fea34be1..adc94de2 100644 --- a/spring-binding/src/main/java/org/springframework/binding/expression/el/DefaultELResolver.java +++ b/spring-binding/src/main/java/org/springframework/binding/expression/el/DefaultELResolver.java @@ -15,7 +15,6 @@ */ package org.springframework.binding.expression.el; -import java.util.Iterator; import java.util.List; import javax.el.ArrayELResolver; @@ -91,9 +90,7 @@ public class DefaultELResolver extends CompositeELResolver { private void configureResolvers(List customResolvers) { if (customResolvers != null) { - Iterator i = customResolvers.iterator(); - while (i.hasNext()) { - ELResolver resolver = i.next(); + for (ELResolver resolver : customResolvers) { add(resolver); } } diff --git a/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMapper.java b/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMapper.java index b6656e24..4a2a857c 100644 --- a/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMapper.java +++ b/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMapper.java @@ -16,7 +16,6 @@ package org.springframework.binding.mapping.impl; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import org.apache.commons.logging.Log; @@ -62,9 +61,7 @@ public class DefaultMapper implements Mapper { + target.getClass().getName() + "]"); } DefaultMappingContext context = new DefaultMappingContext(source, target); - Iterator it = mappings.iterator(); - while (it.hasNext()) { - DefaultMapping mapping = it.next(); + for (DefaultMapping mapping : mappings) { mapping.map(context); } MappingResults results = context.getMappingResults(); diff --git a/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMappingResults.java b/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMappingResults.java index 2626b074..a965e8fe 100644 --- a/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMappingResults.java +++ b/spring-binding/src/main/java/org/springframework/binding/mapping/impl/DefaultMappingResults.java @@ -17,7 +17,6 @@ package org.springframework.binding.mapping.impl; import java.util.ArrayList; import java.util.Collections; -import java.util.Iterator; import java.util.List; import org.springframework.binding.mapping.MappingResult; @@ -61,9 +60,7 @@ public class DefaultMappingResults implements MappingResults { } public boolean hasErrorResults() { - Iterator it = mappingResults.iterator(); - while (it.hasNext()) { - MappingResult result = it.next(); + for (MappingResult result : mappingResults) { if (result.isError()) { return true; } @@ -73,9 +70,7 @@ public class DefaultMappingResults implements MappingResults { public List getErrorResults() { List errorResults = new ArrayList(); - Iterator it = mappingResults.iterator(); - while (it.hasNext()) { - MappingResult result = it.next(); + for (MappingResult result : mappingResults) { if (result.isError()) { errorResults.add(result); } @@ -85,9 +80,7 @@ public class DefaultMappingResults implements MappingResults { public List getResults(MappingResultsCriteria criteria) { List results = new ArrayList(); - Iterator it = mappingResults.iterator(); - while (it.hasNext()) { - MappingResult result = it.next(); + for (MappingResult result : mappingResults) { if (criteria.test(result)) { results.add(result); } diff --git a/spring-binding/src/main/java/org/springframework/binding/message/DefaultMessageContext.java b/spring-binding/src/main/java/org/springframework/binding/message/DefaultMessageContext.java index 8c829213..c1961cd3 100644 --- a/spring-binding/src/main/java/org/springframework/binding/message/DefaultMessageContext.java +++ b/spring-binding/src/main/java/org/springframework/binding/message/DefaultMessageContext.java @@ -18,7 +18,6 @@ package org.springframework.binding.message; import java.io.Serializable; import java.text.MessageFormat; import java.util.ArrayList; -import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Locale; @@ -88,9 +87,7 @@ public class DefaultMessageContext implements StateManageableMessageContext { public Message[] getMessagesByCriteria(MessageCriteria criteria) { List messages = new ArrayList(); - Iterator> it = sourceMessages.values().iterator(); - while (it.hasNext()) { - List sourceMessages = it.next(); + for (List sourceMessages : this.sourceMessages.values()) { for (Message message : sourceMessages) { if (criteria.test(message)) { messages.add(message); @@ -101,9 +98,7 @@ public class DefaultMessageContext implements StateManageableMessageContext { } public boolean hasErrorMessages() { - Iterator> it = sourceMessages.values().iterator(); - while (it.hasNext()) { - List sourceMessages = it.next(); + for (List sourceMessages : this.sourceMessages.values()) { for (Message message : sourceMessages) { if (message.getSeverity() == Severity.ERROR) { return true; diff --git a/spring-binding/src/main/java/org/springframework/binding/message/MessageContextErrors.java b/spring-binding/src/main/java/org/springframework/binding/message/MessageContextErrors.java index d4cb18c3..b28922d6 100644 --- a/spring-binding/src/main/java/org/springframework/binding/message/MessageContextErrors.java +++ b/spring-binding/src/main/java/org/springframework/binding/message/MessageContextErrors.java @@ -17,7 +17,6 @@ package org.springframework.binding.message; import java.util.ArrayList; import java.util.Collections; -import java.util.Iterator; import java.util.List; import org.springframework.binding.expression.Expression; @@ -100,9 +99,7 @@ public class MessageContextErrors extends AbstractErrors { } public void addAllErrors(Errors errors) { - Iterator it = errors.getAllErrors().iterator(); - while (it.hasNext()) { - ObjectError error = it.next(); + for (ObjectError error : errors.getAllErrors()) { MessageBuilder builder = new MessageBuilder().error().codes(error.getCodes()).args(error.getArguments()) .defaultText(error.getDefaultMessage()); if (error instanceof FieldError) { diff --git a/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java b/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java index f1840c10..70906ce7 100644 --- a/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java +++ b/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java @@ -18,7 +18,6 @@ package org.springframework.faces.mvc; import static org.springframework.faces.webflow.JsfRuntimeInformation.isAtLeastJsf12; import static org.springframework.faces.webflow.JsfRuntimeInformation.isPortletRequest; -import java.util.Iterator; import java.util.Map; import javax.faces.FactoryFinder; @@ -89,11 +88,7 @@ public class JsfView extends AbstractUrlBasedView { } private void populateRequestMap(FacesContext facesContext, Map model) { - Iterator i = model.keySet().iterator(); - while (i.hasNext()) { - String key = i.next().toString(); - facesContext.getExternalContext().getRequestMap().put(key, model.get(key)); - } + facesContext.getExternalContext().getRequestMap().putAll(model); } private Lifecycle createFacesLifecycle() { diff --git a/spring-faces/src/main/java/org/springframework/faces/ui/AjaxViewRoot.java b/spring-faces/src/main/java/org/springframework/faces/ui/AjaxViewRoot.java index 0ec69cad..172fc635 100644 --- a/spring-faces/src/main/java/org/springframework/faces/ui/AjaxViewRoot.java +++ b/spring-faces/src/main/java/org/springframework/faces/ui/AjaxViewRoot.java @@ -18,7 +18,6 @@ package org.springframework.faces.ui; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; -import java.util.Iterator; import java.util.List; import java.util.ListIterator; @@ -266,9 +265,7 @@ public class AjaxViewRoot extends DelegatingViewRoot { } boolean abort = false; int phaseIdOrdinal = phaseId.getOrdinal(); - Iterator i = events.iterator(); - while (i.hasNext()) { - FacesEvent event = i.next(); + for (FacesEvent event : events) { int ordinal = event.getPhaseId().getOrdinal(); if (ordinal == PhaseId.ANY_PHASE.getOrdinal() || ordinal == phaseIdOrdinal) { UIComponent source = event.getComponent(); diff --git a/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandButtonRenderer.java b/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandButtonRenderer.java index 98623215..67700f10 100644 --- a/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandButtonRenderer.java +++ b/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandButtonRenderer.java @@ -20,7 +20,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; -import java.util.ListIterator; import java.util.Map; import javax.faces.component.UIComponent; @@ -37,7 +36,6 @@ import org.springframework.util.StringUtils; * {@link Renderer} for the {@code } tag. * * @author Jeremy Grelle - * */ public class ProgressiveCommandButtonRenderer extends BaseDojoComponentRenderer { @@ -46,17 +44,13 @@ public class ProgressiveCommandButtonRenderer extends BaseDojoComponentRenderer private static String INPUT_TAG_NAME = "input"; static { - List tempList = new ArrayList(); - tempList.addAll(Arrays.asList(HTML.STANDARD_ATTRIBUTES)); - tempList.addAll(Arrays.asList(HTML.BUTTON_ATTRIBUTES)); - tempList.addAll(Arrays.asList(HTML.COMMON_ELEMENT_EVENTS)); - tempList.addAll(Arrays.asList(HTML.KEYBOARD_EVENTS)); - tempList.addAll(Arrays.asList(HTML.MOUSE_EVENTS)); - ATTRIBUTES_TO_RENDER = new String[tempList.size()]; - ListIterator i = tempList.listIterator(); - while (i.hasNext()) { - ATTRIBUTES_TO_RENDER[i.nextIndex()] = i.next(); - } + List attributes = new ArrayList(); + attributes.addAll(Arrays.asList(HTML.STANDARD_ATTRIBUTES)); + attributes.addAll(Arrays.asList(HTML.BUTTON_ATTRIBUTES)); + attributes.addAll(Arrays.asList(HTML.COMMON_ELEMENT_EVENTS)); + attributes.addAll(Arrays.asList(HTML.KEYBOARD_EVENTS)); + attributes.addAll(Arrays.asList(HTML.MOUSE_EVENTS)); + ATTRIBUTES_TO_RENDER = attributes.toArray(new String[attributes.size()]); } private Map attributeCallbacks; diff --git a/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandLinkRenderer.java b/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandLinkRenderer.java index 80ab5818..9c4b352c 100644 --- a/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandLinkRenderer.java +++ b/spring-faces/src/main/java/org/springframework/faces/ui/ProgressiveCommandLinkRenderer.java @@ -22,7 +22,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; -import java.util.ListIterator; import java.util.Map; import javax.faces.component.UIComponent; @@ -58,24 +57,14 @@ public class ProgressiveCommandLinkRenderer extends ProgressiveCommandButtonRend private static String TAG_NAME_WHEN_DISABLED = "span"; static { - - List tempList = new ArrayList(); - tempList.addAll(Arrays.asList(HTML.STANDARD_ATTRIBUTES)); - tempList.addAll(Arrays.asList(HTML.COMMON_ELEMENT_EVENTS)); - tempList.addAll(Arrays.asList(HTML.KEYBOARD_EVENTS)); - tempList.addAll(Arrays.asList(HTML.MOUSE_EVENTS)); - ATTRIBUTES_TO_RENDER_WHEN_DISABLED = new String[tempList.size()]; - ListIterator i = tempList.listIterator(); - while (i.hasNext()) { - ATTRIBUTES_TO_RENDER_WHEN_DISABLED[i.nextIndex()] = i.next(); - } - - tempList.addAll(Arrays.asList(HTML.ANCHOR_ATTRIBUTES)); - ATTRIBUTES_TO_RENDER = new String[tempList.size()]; - i = tempList.listIterator(); - while (i.hasNext()) { - ATTRIBUTES_TO_RENDER[i.nextIndex()] = i.next(); - } + List attributes = new ArrayList(); + attributes.addAll(Arrays.asList(HTML.STANDARD_ATTRIBUTES)); + attributes.addAll(Arrays.asList(HTML.COMMON_ELEMENT_EVENTS)); + attributes.addAll(Arrays.asList(HTML.KEYBOARD_EVENTS)); + attributes.addAll(Arrays.asList(HTML.MOUSE_EVENTS)); + ATTRIBUTES_TO_RENDER_WHEN_DISABLED = attributes.toArray(new String[attributes.size()]); + attributes.addAll(Arrays.asList(HTML.ANCHOR_ATTRIBUTES)); + ATTRIBUTES_TO_RENDER = attributes.toArray(new String[attributes.size()]); } private Map attributeCallbacks; diff --git a/spring-faces/src/main/java/org/springframework/faces/ui/resource/ResourceHelper.java b/spring-faces/src/main/java/org/springframework/faces/ui/resource/ResourceHelper.java index 522b2f11..6c6878d2 100644 --- a/spring-faces/src/main/java/org/springframework/faces/ui/resource/ResourceHelper.java +++ b/spring-faces/src/main/java/org/springframework/faces/ui/resource/ResourceHelper.java @@ -19,7 +19,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -92,10 +91,8 @@ public class ResourceHelper { ResponseWriter writer = facesContext.getResponseWriter(); writer.startElement(SCRIPT_ELEMENT, null); writer.writeAttribute("type", "text/javascript", null); - Iterator i = attributes.keySet().iterator(); - while (i.hasNext()) { - String key = i.next(); - writer.writeAttribute(key, attributes.get(key), null); + for (Map.Entry entry : attributes.entrySet()) { + writer.writeAttribute(entry.getKey(), entry.getValue(), null); } String src = facesContext.getExternalContext().getRequestContextPath() + "/resources" + scriptPath; writer.writeAttribute("src", src, null); diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextMessageDelegate.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextMessageDelegate.java index 901a626e..9e549830 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextMessageDelegate.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextMessageDelegate.java @@ -95,9 +95,9 @@ public class FlowFacesContextMessageDelegate { return null; } FacesMessage.Severity max = FacesMessage.SEVERITY_INFO; - Iterator i = getMessages(); - while (i.hasNext()) { - FacesMessage message = i.next(); + Iterator messages = getMessages(); + while (messages.hasNext()) { + FacesMessage message = messages.next(); if (message.getSeverity().getOrdinal() > max.getOrdinal()) { max = message.getSeverity(); } diff --git a/spring-js/src/main/java/org/springframework/js/ajax/tiles2/AjaxTilesView.java b/spring-js/src/main/java/org/springframework/js/ajax/tiles2/AjaxTilesView.java index 4226214f..e1754dd9 100644 --- a/spring-js/src/main/java/org/springframework/js/ajax/tiles2/AjaxTilesView.java +++ b/spring-js/src/main/java/org/springframework/js/ajax/tiles2/AjaxTilesView.java @@ -196,9 +196,7 @@ public class AjaxTilesView extends TilesView { if (attributeContext.getCascadedAttributeNames() != null) { attributeNames.addAll(attributeContext.getCascadedAttributeNames()); } - Iterator iterator = attributeNames.iterator(); - while (iterator.hasNext()) { - String name = iterator.next(); + for (String name : attributeNames) { Attribute attr = attributeContext.getAttribute(name); resultMap.put(name, attr); } diff --git a/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java b/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java index 2be316d2..3506f925 100644 --- a/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java +++ b/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java @@ -25,7 +25,6 @@ import java.net.URLConnection; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; -import java.util.Iterator; import java.util.Map; import java.util.Set; import java.util.zip.GZIPOutputStream; @@ -166,9 +165,7 @@ public class ResourceServlet extends HttpServletBean { private boolean matchesCompressedMimeTypes(String mimeType) { PathMatcher pathMatcher = new AntPathMatcher(); - Iterator compressedMimeTypesIt = compressedMimeTypes.iterator(); - while (compressedMimeTypesIt.hasNext()) { - String compressedMimeType = compressedMimeTypesIt.next(); + for (String compressedMimeType : compressedMimeTypes) { if (pathMatcher.match(compressedMimeType, mimeType)) { return true; } @@ -298,9 +295,7 @@ public class ResourceServlet extends HttpServletBean { return false; } PathMatcher pathMatcher = new AntPathMatcher(); - Iterator allowedResourcePathsIt = allowedResourcePaths.iterator(); - while (allowedResourcePathsIt.hasNext()) { - String pattern = allowedResourcePathsIt.next(); + for (String pattern : allowedResourcePaths) { if (pathMatcher.match(pattern, resourcePath)) { return true; } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/config/FlowExecutionListenerLoaderFactoryBean.java b/spring-webflow/src/main/java/org/springframework/webflow/config/FlowExecutionListenerLoaderFactoryBean.java index 2e9457bb..5e7e6e8a 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/config/FlowExecutionListenerLoaderFactoryBean.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/config/FlowExecutionListenerLoaderFactoryBean.java @@ -15,7 +15,6 @@ */ package org.springframework.webflow.config; -import java.util.Iterator; import java.util.Map; import org.springframework.beans.factory.FactoryBean; @@ -60,9 +59,7 @@ class FlowExecutionListenerLoaderFactoryBean implements FactoryBean> it = listenersWithCriteria.entrySet().iterator(); - while (it.hasNext()) { - Map.Entry entry = it.next(); + for (Map.Entry entry : listenersWithCriteria.entrySet()) { FlowExecutionListener listener = entry.getKey(); String criteria = entry.getValue(); listenerLoader.addListener(listener, listenerCriteriaFactory.getListenerCriteria(criteria)); diff --git a/spring-webflow/src/main/java/org/springframework/webflow/core/collection/LocalAttributeMap.java b/spring-webflow/src/main/java/org/springframework/webflow/core/collection/LocalAttributeMap.java index 53c00f2b..fd1b36b8 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/core/collection/LocalAttributeMap.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/core/collection/LocalAttributeMap.java @@ -21,7 +21,6 @@ import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Collection; import java.util.HashMap; -import java.util.Iterator; import java.util.Map; import org.springframework.binding.collection.MapAccessor; @@ -243,10 +242,9 @@ public class LocalAttributeMap implements MutableAttributeMap, Serializabl if (attributes == null) { return this; } - Iterator it = attributes.asMap().keySet().iterator(); Map internal = getMapInternal(); - while (it.hasNext()) { - internal.remove(it.next()); + for (String attribute : attributes.asMap().keySet()) { + internal.remove(attribute); } return this; } @@ -343,4 +341,4 @@ public class LocalAttributeMap implements MutableAttributeMap, Serializabl public String toString() { return StylerUtils.style(attributes); } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/definition/registry/FlowDefinitionRegistryImpl.java b/spring-webflow/src/main/java/org/springframework/webflow/definition/registry/FlowDefinitionRegistryImpl.java index 5f8359a5..880d9f27 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/definition/registry/FlowDefinitionRegistryImpl.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/definition/registry/FlowDefinitionRegistryImpl.java @@ -15,7 +15,6 @@ */ package org.springframework.webflow.definition.registry; -import java.util.Iterator; import java.util.Map; import java.util.TreeMap; @@ -108,9 +107,7 @@ public class FlowDefinitionRegistryImpl implements FlowDefinitionRegistry { } public void destroy() { - Iterator it = flowDefinitions.values().iterator(); - while (it.hasNext()) { - FlowDefinitionHolder holder = it.next(); + for (FlowDefinitionHolder holder : flowDefinitions.values()) { holder.destroy(); } } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/ActionList.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/ActionList.java index e9ac85ed..820cfd47 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/ActionList.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/ActionList.java @@ -150,13 +150,12 @@ public class ActionList implements Iterable { * @param context the action execution request context */ public void execute(RequestContext context) { - Iterator it = actions.iterator(); - while (it.hasNext()) { - ActionExecutor.execute(it.next(), context); + for (Action action : actions) { + ActionExecutor.execute(action, context); } } public String toString() { return StylerUtils.style(actions); } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/Flow.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/Flow.java index a8a454e6..d4880556 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/Flow.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/Flow.java @@ -16,7 +16,6 @@ package org.springframework.webflow.engine; import java.util.ArrayList; -import java.util.Iterator; import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.List; @@ -279,9 +278,7 @@ public class Flow extends AnnotatedObject implements FlowDefinition { * @return true if yes, false otherwise */ public boolean containsState(String stateId) { - Iterator it = states.iterator(); - while (it.hasNext()) { - State state = it.next(); + for (State state : states) { if (state.getId().equals(stateId)) { return true; } @@ -337,9 +334,7 @@ public class Flow extends AnnotatedObject implements FlowDefinition { if (!StringUtils.hasText(stateId)) { throw new IllegalArgumentException("The specified stateId is invalid: state identifiers must be non-blank"); } - Iterator it = states.iterator(); - while (it.hasNext()) { - State state = it.next(); + for (State state : states) { if (state.getId().equals(stateId)) { return state; } @@ -356,9 +351,8 @@ public class Flow extends AnnotatedObject implements FlowDefinition { public String[] getStateIds() { String[] stateIds = new String[getStateCount()]; int i = 0; - Iterator it = states.iterator(); - while (it.hasNext()) { - stateIds[i++] = it.next().getId(); + for (State state : states) { + stateIds[i++] = state.getId(); } return stateIds; } @@ -616,9 +610,7 @@ public class Flow extends AnnotatedObject implements FlowDefinition { } private void createVariables(RequestContext context) { - Iterator it = variables.values().iterator(); - while (it.hasNext()) { - FlowVariable variable = it.next(); + for (FlowVariable variable : variables.values()) { if (logger.isDebugEnabled()) { logger.debug("Creating " + variable); } @@ -627,9 +619,7 @@ public class Flow extends AnnotatedObject implements FlowDefinition { } public void restoreVariables(RequestContext context) { - Iterator it = variables.values().iterator(); - while (it.hasNext()) { - FlowVariable variable = it.next(); + for (FlowVariable variable : variables.values()) { if (logger.isDebugEnabled()) { logger.debug("Restoring " + variable); } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/FlowExecutionExceptionHandlerSet.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/FlowExecutionExceptionHandlerSet.java index 9624d4da..ea3e214a 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/FlowExecutionExceptionHandlerSet.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/FlowExecutionExceptionHandlerSet.java @@ -15,7 +15,6 @@ */ package org.springframework.webflow.engine; -import java.util.Iterator; import java.util.LinkedList; import java.util.List; @@ -105,9 +104,7 @@ public class FlowExecutionExceptionHandlerSet { * @return true if the exception was handled */ public boolean handleException(FlowExecutionException exception, RequestControlContext context) { - Iterator it = exceptionHandlers.iterator(); - while (it.hasNext()) { - FlowExecutionExceptionHandler handler = it.next(); + for (FlowExecutionExceptionHandler handler : exceptionHandlers) { if (handler.canHandle(exception)) { handler.handle(exception, context); return true; @@ -119,4 +116,4 @@ public class FlowExecutionExceptionHandlerSet { public String toString() { return StylerUtils.style(exceptionHandlers); } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/TransitionSet.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/TransitionSet.java index 796ece00..431d1417 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/TransitionSet.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/TransitionSet.java @@ -108,9 +108,8 @@ public class TransitionSet implements Iterable { public TransitionCriteria[] getTransitionCriterias() { TransitionCriteria[] criterias = new TransitionCriteria[transitions.size()]; int i = 0; - Iterator it = transitions.iterator(); - while (it.hasNext()) { - criterias[i++] = it.next().getMatchingCriteria(); + for (Transition transition : transitions) { + criterias[i++] = transition.getMatchingCriteria(); } return criterias; } @@ -121,9 +120,7 @@ public class TransitionSet implements Iterable { * @return the transition, or null if no transition matches */ public Transition getTransition(RequestContext context) { - Iterator it = transitions.iterator(); - while (it.hasNext()) { - Transition transition = it.next(); + for (Transition transition : transitions) { if (transition.matches(context)) { return transition; } @@ -142,4 +139,4 @@ public class TransitionSet implements Iterable { public String toString() { return StylerUtils.style(transitions); } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/ViewState.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/ViewState.java index 4673063e..06fa1b7b 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/ViewState.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/ViewState.java @@ -16,7 +16,6 @@ package org.springframework.webflow.engine; import java.io.IOException; -import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; @@ -254,9 +253,7 @@ public class ViewState extends TransitionableState { // internal helpers private void createVariables(RequestContext context) { - Iterator it = variables.values().iterator(); - while (it.hasNext()) { - ViewVariable variable = it.next(); + for (ViewVariable variable : variables.values()) { if (logger.isDebugEnabled()) { logger.debug("Creating " + variable); } @@ -308,12 +305,9 @@ public class ViewState extends TransitionableState { } private void restoreVariables(RequestContext context) { - Iterator it = variables.values().iterator(); - while (it.hasNext()) { - ViewVariable variable = it.next(); + for (ViewVariable variable : variables.values()) { if (logger.isDebugEnabled()) { logger.debug("Restoring " + variable); - } variable.restore(context); } @@ -336,12 +330,9 @@ public class ViewState extends TransitionableState { } private void destroyVariables(RequestContext context) { - Iterator it = variables.values().iterator(); - while (it.hasNext()) { - ViewVariable variable = it.next(); + for (ViewVariable variable : variables.values()) { if (logger.isDebugEnabled()) { logger.debug("Destroying " + variable); - } variable.destroy(context); } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/builder/BinderConfiguration.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/builder/BinderConfiguration.java index 140bf0aa..8f353253 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/builder/BinderConfiguration.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/builder/BinderConfiguration.java @@ -1,6 +1,5 @@ package org.springframework.webflow.engine.builder; -import java.util.Iterator; import java.util.LinkedHashSet; import java.util.Set; @@ -40,9 +39,7 @@ public class BinderConfiguration { * @return the binding */ public Binding getBinding(String name) { - Iterator it = bindings.iterator(); - while (it.hasNext()) { - Binding binding = it.next(); + for (Binding binding : bindings) { if (name.equals(binding.getProperty())) { return binding; } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/impl/FlowExecutionImplFactory.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/impl/FlowExecutionImplFactory.java index 9faeb766..98bab900 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/impl/FlowExecutionImplFactory.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/impl/FlowExecutionImplFactory.java @@ -170,4 +170,4 @@ public class FlowExecutionImplFactory implements FlowExecutionFactory { } } } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/model/AbstractModel.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/model/AbstractModel.java index d8fff31f..1679097d 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/model/AbstractModel.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/model/AbstractModel.java @@ -16,7 +16,6 @@ package org.springframework.webflow.engine.model; import java.util.Collections; -import java.util.Iterator; import java.util.LinkedList; /** @@ -92,40 +91,41 @@ public abstract class AbstractModel implements Model { * @param addAtEnd if true new items will be added at the end of the list, otherwise the beginning * @return the merged list */ - @SuppressWarnings("unchecked") protected LinkedList merge(LinkedList child, LinkedList parent, boolean addAtEnd) { if (child == null) { - if (parent == null) { - return null; - } else { - return copyList(parent); - } - } else if (parent == null) { + return copyList(parent); + } + if (parent == null) { return child; + } + if (!addAtEnd) { + parent = new LinkedList(parent); + Collections.reverse(parent); + } + for (T element : parent) { + if (!mergeElement(child, element)) { + addElement(child, element, addAtEnd); + } + } + return child; + } + + private boolean mergeElement(LinkedList child, T element) { + for (T childElement : child) { + if (childElement.isMergeableWith(element)) { + childElement.merge(element); + return true; + } + } + return false; + } + + @SuppressWarnings("unchecked") + private void addElement(LinkedList child, T element, boolean addAtEnd) { + if (addAtEnd) { + child.addLast((T) element.createCopy()); } else { - if (!addAtEnd) { - parent = new LinkedList(parent); - Collections.reverse(parent); - } - for (Iterator parentIt = parent.iterator(); parentIt.hasNext();) { - Model parentElement = parentIt.next(); - boolean matchFound = false; - for (Iterator childIt = child.iterator(); !matchFound && childIt.hasNext();) { - Model childElement = childIt.next(); - if (childElement.isMergeableWith(parentElement)) { - matchFound = true; - childElement.merge(parentElement); - } - } - if (!matchFound) { - if (addAtEnd) { - child.addLast((T) parentElement.createCopy()); - } else { - child.addFirst((T) parentElement.createCopy()); - } - } - } - return child; + child.addFirst((T) element.createCopy()); } } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/engine/support/TransitionCriteriaChain.java b/spring-webflow/src/main/java/org/springframework/webflow/engine/support/TransitionCriteriaChain.java index 4e63e141..c2ae1536 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/engine/support/TransitionCriteriaChain.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/engine/support/TransitionCriteriaChain.java @@ -16,7 +16,6 @@ package org.springframework.webflow.engine.support; import java.util.Arrays; -import java.util.Iterator; import java.util.LinkedList; import java.util.List; @@ -65,9 +64,7 @@ public class TransitionCriteriaChain implements TransitionCriteria { } public boolean test(RequestContext context) { - Iterator it = criteriaChain.iterator(); - while (it.hasNext()) { - TransitionCriteria criteria = it.next(); + for (TransitionCriteria criteria : criteriaChain) { if (!criteria.test(context)) { return false; } @@ -95,4 +92,4 @@ public class TransitionCriteriaChain implements TransitionCriteria { } return chain; } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerHolder.java b/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerHolder.java index 1f51b899..dd886af8 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerHolder.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerHolder.java @@ -15,7 +15,6 @@ */ package org.springframework.webflow.execution.factory; -import java.util.Iterator; import java.util.LinkedHashSet; import java.util.Set; @@ -88,13 +87,11 @@ class ConditionalFlowExecutionListenerHolder { * @return true if yes, false otherwise */ public boolean listenerAppliesTo(FlowDefinition flowDefinition) { - Iterator it = criteriaSet.iterator(); - while (it.hasNext()) { - FlowExecutionListenerCriteria criteria = it.next(); + for (FlowExecutionListenerCriteria criteria : criteriaSet) { if (criteria.appliesTo(flowDefinition)) { return true; } } return false; } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerLoader.java b/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerLoader.java index 699f6739..afad1943 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerLoader.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/execution/factory/ConditionalFlowExecutionListenerLoader.java @@ -15,7 +15,6 @@ */ package org.springframework.webflow.execution.factory; -import java.util.Iterator; import java.util.LinkedList; import java.util.List; @@ -98,13 +97,11 @@ public class ConditionalFlowExecutionListenerLoader implements FlowExecutionList * @return the holder, or null if not found */ private ConditionalFlowExecutionListenerHolder getHolder(FlowExecutionListener listener) { - Iterator it = listeners.iterator(); - while (it.hasNext()) { - ConditionalFlowExecutionListenerHolder next = it.next(); - if (next.getListener().equals(listener)) { - return next; + for (ConditionalFlowExecutionListenerHolder holder : listeners) { + if (holder.getListener().equals(listener)) { + return holder; } } return null; } -} +} diff --git a/spring-webflow/src/main/java/org/springframework/webflow/mvc/portlet/FlowHandlerAdapter.java b/spring-webflow/src/main/java/org/springframework/webflow/mvc/portlet/FlowHandlerAdapter.java index defbe49b..232fde73 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/mvc/portlet/FlowHandlerAdapter.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/mvc/portlet/FlowHandlerAdapter.java @@ -15,7 +15,6 @@ */ package org.springframework.webflow.mvc.portlet; -import java.util.Iterator; import java.util.Map; import javax.portlet.ActionRequest; @@ -194,16 +193,9 @@ public class FlowHandlerAdapter extends PortletContentGenerator implements Handl return null; } LocalAttributeMap inputMap = new LocalAttributeMap(); - Iterator> it = parameterMap.entrySet().iterator(); - while (it.hasNext()) { - Map.Entry entry = it.next(); - String name = entry.getKey(); + for (Map.Entry entry : parameterMap.entrySet()) { String[] values = entry.getValue(); - if (values.length == 1) { - inputMap.put(name, values[0]); - } else { - inputMap.put(name, values); - } + inputMap.put(entry.getKey(), values.length == 1 ? values[0] : values); } return inputMap; } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowHandlerAdapter.java b/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowHandlerAdapter.java index dc463154..2585bd25 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowHandlerAdapter.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowHandlerAdapter.java @@ -16,9 +16,7 @@ package org.springframework.webflow.mvc.servlet; import java.io.IOException; -import java.util.Iterator; import java.util.Map; -import java.util.Map.Entry; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -241,16 +239,9 @@ public class FlowHandlerAdapter extends WebContentGenerator implements HandlerAd return null; } LocalAttributeMap inputMap = new LocalAttributeMap(parameterMap.size(), 1); - Iterator> it = parameterMap.entrySet().iterator(); - while (it.hasNext()) { - Entry entry = it.next(); - String name = entry.getKey(); + for (Map.Entry entry : parameterMap.entrySet()) { String[] values = entry.getValue(); - if (values.length == 1) { - inputMap.put(name, values[0]); - } else { - inputMap.put(name, values); - } + inputMap.put(entry.getKey(), values.length == 1 ? values[0] : values); } return inputMap; } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/mvc/view/AbstractMvcView.java b/spring-webflow/src/main/java/org/springframework/webflow/mvc/view/AbstractMvcView.java index 942a097c..e5382b6e 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/mvc/view/AbstractMvcView.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/mvc/view/AbstractMvcView.java @@ -19,7 +19,6 @@ import java.io.IOException; import java.io.Serializable; import java.lang.reflect.Array; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -387,9 +386,7 @@ public abstract class AbstractMvcView implements View { * @param model the model */ protected void addModelBindings(DefaultMapper mapper, Set parameterNames, Object model) { - Iterator it = binderConfiguration.getBindings().iterator(); - while (it.hasNext()) { - Binding binding = it.next(); + for (Binding binding : binderConfiguration.getBindings()) { String parameterName = binding.getProperty(); if (parameterNames.contains(parameterName)) { addMapping(mapper, binding, model); diff --git a/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java b/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java index f44473ba..e35d4618 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java @@ -17,7 +17,6 @@ package org.springframework.webflow.security; import java.util.ArrayList; import java.util.Collection; -import java.util.Iterator; import java.util.List; import org.springframework.security.access.AccessDecisionManager; @@ -118,9 +117,8 @@ public class SecurityFlowExecutionListener extends FlowExecutionListenerAdapter */ protected Collection getConfigAttributes(SecurityRule rule) { List configAttributes = new ArrayList(); - Iterator attributeIt = rule.getAttributes().iterator(); - while (attributeIt.hasNext()) { - configAttributes.add(new SecurityConfig(attributeIt.next())); + for (String attribute : rule.getAttributes()) { + configAttributes.add(new SecurityConfig(attribute)); } return configAttributes; } diff --git a/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityRule.java b/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityRule.java index 89079a41..5bd428c1 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityRule.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityRule.java @@ -15,10 +15,10 @@ */ package org.springframework.webflow.security; -import java.util.Arrays; import java.util.Collection; import java.util.HashSet; -import java.util.Iterator; + +import org.springframework.util.StringUtils; /** * Encapsulates the rules for comparing security attributes @@ -52,15 +52,7 @@ public class SecurityRule { * @return comma separated String */ public static String securityAttributesToCommaDelimitedList(Collection attributes) { - StringBuilder attrs = new StringBuilder(); - Iterator attributeIt = attributes.iterator(); - while (attributeIt.hasNext()) { - if (attrs.length() != 0) { - attrs.append(", "); - } - attrs.append(attributeIt.next()); - } - return attrs.toString(); + return StringUtils.collectionToDelimitedString(attributes, ", "); } /** @@ -70,9 +62,8 @@ public class SecurityRule { */ public static Collection commaDelimitedListToSecurityAttributes(String attributes) { Collection attrs = new HashSet(); - Iterator attributeIt = Arrays.asList(attributes.split(",")).iterator(); - while (attributeIt.hasNext()) { - String attribute = attributeIt.next().trim(); + for (String attribute : attributes.split(",")) { + attribute = attribute.trim(); if (!"".equals(attribute)) { attrs.add(attribute); } diff --git a/spring-webflow/src/test/java/org/springframework/webflow/config/FlowRegistryBeanDefinitionParserTests.java b/spring-webflow/src/test/java/org/springframework/webflow/config/FlowRegistryBeanDefinitionParserTests.java index 97883b4f..9a05a183 100644 --- a/spring-webflow/src/test/java/org/springframework/webflow/config/FlowRegistryBeanDefinitionParserTests.java +++ b/spring-webflow/src/test/java/org/springframework/webflow/config/FlowRegistryBeanDefinitionParserTests.java @@ -1,6 +1,5 @@ package org.springframework.webflow.config; -import java.util.Iterator; import java.util.Map; import junit.framework.TestCase; @@ -58,10 +57,7 @@ public class FlowRegistryBeanDefinitionParserTests extends TestCase { public void testDefaultFlowBuilderServices() { Map flowBuilderServicesBeans = context.getBeansOfType(FlowBuilderServices.class); assertTrue(flowBuilderServicesBeans.size() > 0); - - Iterator i = flowBuilderServicesBeans.values().iterator(); - while (i.hasNext()) { - FlowBuilderServices builderServices = i.next(); + for (FlowBuilderServices builderServices : flowBuilderServicesBeans.values()) { assertNotNull(builderServices); assertTrue(builderServices.getExpressionParser() instanceof SpringELExpressionParser); assertTrue(builderServices.getViewFactoryCreator() instanceof MvcViewFactoryCreator);