Author: andrei_exadel
Date: 2008-03-03 08:28:57 -0500 (Mon, 03 Mar 2008)
New Revision: 6486
Modified:
trunk/ui/fileUpload/src/main/config/component/fileUpload.xml
trunk/ui/fileUpload/src/main/java/org/richfaces/org/jboss/seam/ui/renderkit/FileUploadRendererBase.java
trunk/ui/fileUpload/src/main/resources/org/richfaces/renderkit/html/css/fileUpload.xcss
Log:
changes after upload event update
Modified: trunk/ui/fileUpload/src/main/config/component/fileUpload.xml
===================================================================
--- trunk/ui/fileUpload/src/main/config/component/fileUpload.xml 2008-03-03 13:28:14 UTC
(rev 6485)
+++ trunk/ui/fileUpload/src/main/config/component/fileUpload.xml 2008-03-03 13:28:57 UTC
(rev 6486)
@@ -67,9 +67,9 @@
&html_events;
&html_input_events;
<property elonly="true">
- <name>data</name>
+ <name>uploadData</name>
<classname>java.lang.Object</classname>
- <description>this value binding receives the file's content type
(optional).</description>
+ <description>Collection of files uploaded</description>
</property>
<property elonly="true">
<name>contentType</name>
Modified:
trunk/ui/fileUpload/src/main/java/org/richfaces/org/jboss/seam/ui/renderkit/FileUploadRendererBase.java
===================================================================
---
trunk/ui/fileUpload/src/main/java/org/richfaces/org/jboss/seam/ui/renderkit/FileUploadRendererBase.java 2008-03-03
13:28:14 UTC (rev 6485)
+++
trunk/ui/fileUpload/src/main/java/org/richfaces/org/jboss/seam/ui/renderkit/FileUploadRendererBase.java 2008-03-03
13:28:57 UTC (rev 6486)
@@ -1,6 +1,7 @@
package org.richfaces.org.jboss.seam.ui.renderkit;
import java.io.IOException;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
@@ -26,6 +27,7 @@
import org.ajax4jsf.resource.CountingOutputWriter;
import org.richfaces.component.UIProgressBar;
import org.richfaces.event.UploadEvent;
+import org.richfaces.model.UploadItem;
import org.richfaces.org.jboss.seam.ui.component.UIFileUpload;
import org.richfaces.org.jboss.seam.web.FileUploadException;
import org.richfaces.org.jboss.seam.web.MultipartRequest;
@@ -39,6 +41,9 @@
*/
public abstract class FileUploadRendererBase extends
TemplateEncoderRendererBase {
+
+ /** Attribute name where collection of files uploaded will be stored */
+ private static final String _FILES_UPLOADED_ATTRIBUTE_NAME = "uploadData";
/*
* (non-Javadoc)
@@ -65,7 +70,6 @@
.getFileContentType(clientId));
fileUpload.setLocalFileName(multipartRequest.getFileName(clientId));
fileUpload.setLocalFileSize(multipartRequest.getFileSize(clientId));
- new UploadEvent(component, multipartRequest.getFile(clientId),
multipartRequest.getFileName(clientId)).queue();
onUploadComplete(context, multipartRequest.getFile(clientId),
fileUpload);
}
@@ -78,9 +82,9 @@
* @param map
* @return
*/
- private boolean checkFileCount (UIFileUpload fileUpload, Map<String, Object>
map) {
+ private boolean checkFileCount (UIFileUpload fileUpload, Collection filesUploaded) {
Integer max = fileUpload.getMaxFilesQuantity();
- if (map != null && map.size() >= max) {
+ if (filesUploaded != null && filesUploaded.size() >= max) {
fileUpload.reset();
return false;
}
@@ -95,13 +99,14 @@
*/
@SuppressWarnings("unchecked")
private void storeData(FacesContext context, UIFileUpload fileUpload, Object file) {
- ValueExpression data = fileUpload.getValueExpression("data");
+ ValueExpression data = fileUpload.getValueExpression(_FILES_UPLOADED_ATTRIBUTE_NAME);
if (data != null) {
- Class clazz = data.getType(context.getELContext());
- if (clazz.isAssignableFrom(Map.class)) {
- Map<String, Object> map = (Map<String, Object>)
data.getValue(context.getELContext());
- if (checkFileCount(fileUpload, map)) {
- map.put(fileUpload.getLocalFileName(), file);
+ if (data.getValue(context.getELContext()) instanceof Collection) {
+ Collection collection = (Collection) data.getValue(context.getELContext());
+ if (checkFileCount(fileUpload, collection)) {
+ UploadItem item = new UploadItem(fileUpload.getLocalFileName(), file);
+ new UploadEvent(fileUpload, item).queue();
+ collection.add(item);
}else {
throw new FileUploadException("Files count overflow");
}
Modified:
trunk/ui/fileUpload/src/main/resources/org/richfaces/renderkit/html/css/fileUpload.xcss
===================================================================
---
trunk/ui/fileUpload/src/main/resources/org/richfaces/renderkit/html/css/fileUpload.xcss 2008-03-03
13:28:14 UTC (rev 6485)
+++
trunk/ui/fileUpload/src/main/resources/org/richfaces/renderkit/html/css/fileUpload.xcss 2008-03-03
13:28:57 UTC (rev 6486)
@@ -11,7 +11,7 @@
table{width : 100%}
.upload_list_overflow{overflow : auto; overflow-x : hidden;}
-.upload_name{ width : 100%; height : 50px; padding : 2px 10px 2px 10px;}
+.upload_name{ width : 100%; height : 58px; padding : 2px 10px 2px 10px;}
.upload_del{ width : 90px; text-align : center; padding-top : 3; padding-bottom : 3;}
.upload_scroll{ width : 10px; text-align : center;}
Show replies by date