[jboss-cvs] jboss-seam/src/main/org/jboss/seam/util ...
Gavin King
gavin.king at jboss.com
Tue Sep 26 23:53:50 EDT 2006
User: gavin
Date: 06/09/26 23:53:50
Modified: src/main/org/jboss/seam/util Reflections.java
Added: src/main/org/jboss/seam/util Parameters.java
Log:
stateful seam interceptors
page parameters
crud framework prototype
bugfixes to PC passivation stuff
Revision Changes Path
1.10 +3 -3 jboss-seam/src/main/org/jboss/seam/util/Reflections.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: Reflections.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/util/Reflections.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- Reflections.java 9 Aug 2006 21:39:50 -0000 1.9
+++ Reflections.java 27 Sep 2006 03:53:50 -0000 1.10
@@ -1,4 +1,4 @@
-//$Id: Reflections.java,v 1.9 2006/08/09 21:39:50 gavin Exp $
+//$Id: Reflections.java,v 1.10 2006/09/27 03:53:50 gavin Exp $
package org.jboss.seam.util;
import java.beans.Introspector;
@@ -97,7 +97,7 @@
private static String toString(Method method)
{
- return Strings.unqualify( method.getClass().getName() ) +
+ return Strings.unqualify( method.getDeclaringClass().getName() ) +
'.' +
method.getName() +
'(' +
@@ -107,7 +107,7 @@
private static String toString(Field field)
{
- return Strings.unqualify( field.getClass().getName() ) +
+ return Strings.unqualify( field.getDeclaringClass().getName() ) +
'.' +
field.getName();
}
1.1 date: 2006/09/27 03:53:50; author: gavin; state: Exp;jboss-seam/src/main/org/jboss/seam/util/Parameters.java
Index: Parameters.java
===================================================================
package org.jboss.seam.util;
import java.lang.reflect.Array;
import java.util.Map;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.servlet.ServletRequest;
import org.jboss.seam.contexts.Lifecycle;
public class Parameters
{
public static Object convertRequestParameter(String requestParameter, Class type)
{
if ( String.class.equals(type) ) return requestParameter;
FacesContext facesContext = FacesContext.getCurrentInstance();
Converter converter = facesContext.getApplication().createConverter(type);
if (converter==null)
{
throw new IllegalArgumentException("no converter for type: " + type);
}
return converter.getAsObject( facesContext, facesContext.getViewRoot(), requestParameter );
}
public static Map<String, String[]> getRequestParameters()
{
FacesContext facesContext = FacesContext.getCurrentInstance();
if ( facesContext != null )
{
return facesContext.getExternalContext().getRequestParameterValuesMap();
}
ServletRequest servletRequest = Lifecycle.getServletRequest();
if ( servletRequest != null )
{
return servletRequest.getParameterMap();
}
return null;
}
public static Object convertMultiValueRequestParameter(Map<String, String[]> requestParameters, String name, Class<?> type)
{
String[] array = requestParameters.get(name);
if (array==null || array.length==0)
{
return null;
}
else
{
if ( type.isArray() )
{
int length = Array.getLength(array);
Class<?> elementType = type.getComponentType();
Object newInstance = Array.newInstance(elementType, length);
for ( int i=0; i<length; i++ )
{
Object element = convertRequestParameter( (String) Array.get(array, i), elementType );
Array.set( newInstance, i, element );
}
return newInstance;
}
else
{
return convertRequestParameter( array[0], type );
}
}
}
}
More information about the jboss-cvs-commits
mailing list