From 88f8b46dae765b461a07527ce87262242423fa53 Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Wed, 23 Sep 2009 08:35:12 +0000 Subject: [PATCH] * let the simple @BeanListFactoryBean@ take the order of the collected beans into account git-svn-id: svn+ssh://svn.synyx.de/var/svn/synyx/opensource/hera/trunk@6961 5a64d73e-33d6-4ccc-9058-23f8668ecac9 --- .../synyx/hera/core/support/BeanListFactoryBean.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java b/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java index 3c5c26e..1832836 100644 --- a/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java +++ b/core/src/main/java/org/synyx/hera/core/support/BeanListFactoryBean.java @@ -15,10 +15,13 @@ */ package org.synyx.hera.core.support; -import java.awt.List; +import java.util.Collections; +import java.util.Comparator; +import java.util.List; import org.springframework.beans.factory.FactoryBean; import org.springframework.context.ApplicationContext; +import org.springframework.core.annotation.AnnotationAwareOrderComparator; /** @@ -30,6 +33,10 @@ import org.springframework.context.ApplicationContext; public class BeanListFactoryBean extends AbstractTypeAwareSupport implements FactoryBean { + private static final Comparator COMPARATOR = + new AnnotationAwareOrderComparator(); + + /* * (non-Javadoc) * @@ -37,6 +44,9 @@ public class BeanListFactoryBean extends AbstractTypeAwareSupport */ public Object getObject() throws Exception { + List beans = getBeans(); + Collections.sort(beans, COMPARATOR); + return getBeans(); }