[jboss-cvs] jboss-seam/src/ui/org/jboss/seam/ui ...
Peter Muir
peter at bleepbleep.org.uk
Sat Feb 10 18:49:09 EST 2007
User: pmuir
Date: 07/02/10 18:49:09
Modified: src/ui/org/jboss/seam/ui ConverterChain.java
Log:
Don't sort the chain so much
Revision Changes Path
1.4 +14 -5 jboss-seam/src/ui/org/jboss/seam/ui/ConverterChain.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ConverterChain.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/ui/org/jboss/seam/ui/ConverterChain.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- ConverterChain.java 10 Feb 2007 23:45:30 -0000 1.3
+++ ConverterChain.java 10 Feb 2007 23:49:09 -0000 1.4
@@ -1,6 +1,6 @@
package org.jboss.seam.ui;
-
+import org.jboss.seam.core.AbstractMutable;
import java.util.ArrayList;
import java.util.Collections;
@@ -48,6 +48,8 @@
private List<PrioritizableConverter> converters;
+ private boolean dirty;
+
public ConverterChain()
{
// A Priority Queue would be nice but JSF has issues serializing that
@@ -82,8 +84,7 @@
throws ConverterException
{
Object output = null;
- Collections.sort(converters);
- for (Converter converter : converters)
+ for (Converter converter : getConverters())
{
Object result = converter.getAsObject(context, component, value);
if (!CONTINUE.equals(result))
@@ -99,8 +100,7 @@
throws ConverterException
{
String output = null;
- Collections.sort(converters);
- for (Converter converter : converters)
+ for (Converter converter : getConverters())
{
String result = converter.getAsString(context, component, value);
if (!CONTINUE.equals(result))
@@ -135,6 +135,7 @@
{
if (c != null)
{
+ dirty = true;
return converters.add(new PrioritizableConverter(c, priority));
}
else
@@ -150,6 +151,7 @@
{
if (c != null)
{
+ dirty = true;
return converters.add(new PrioritizableConverter(c, priority));
}
else
@@ -185,4 +187,11 @@
}
+ private List<PrioritizableConverter> getConverters() {
+ if (dirty) {
+ Collections.sort(converters);
+ }
+ return converters;
+ }
+
}
More information about the jboss-cvs-commits
mailing list