|
Re: UploadWidget: temporary files [message #639101 is a reply to message #639098] |
Mon, 15 November 2010 10:01 |
Oliver B. Messages: 38 Registered: November 2010 |
Member |
|
|
Patch:
### Eclipse Workspace Patch 1.0
#P org.eclipse.rwt.widgets.upload
Index: src/org/eclipse/rwt/widgets/upload/servlet/FileUploadServiceHandler.java
===================================================================
RCS file: /cvsroot/rt/org.eclipse.rap/sandbox/org.eclipse.rwt.widgets.upload/src/org/eclipse/rwt/widgets/upload/servlet/FileUploadServiceHandler.java,v
retrieving revision 1.6
diff -u -r1.6 FileUploadServiceHandler.java
--- src/org/eclipse/rwt/widgets/upload/servlet/FileUploadServiceHandler.java 5 May 2010 11:40:29 -0000 1.6
+++ src/org/eclipse/rwt/widgets/upload/servlet/FileUploadServiceHandler.java 15 Nov 2010 09:32:22 -0000
@@ -141,6 +141,7 @@
if( !fileItem.isFormField() ) {
fileUploadStorageitem.setFileInputStream( fileItem.getInputStream() );
fileUploadStorageitem.setContentType(fileItem.getContentType());
+ fileUploadStorageitem.setFileItem(fileItem);
}
}
} catch( final FileUploadException e ) {
Index: src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage.java
===================================================================
RCS file: /cvsroot/rt/org.eclipse.rap/sandbox/org.eclipse.rwt.widgets.upload/src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage.java,v
retrieving revision 1.1
diff -u -r1.1 FileUploadStorage.java
--- src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage.java 5 Jun 2008 10:47:03 -0000 1.1
+++ src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage.java 15 Nov 2010 09:32:22 -0000
@@ -43,6 +43,12 @@
* Sets a {@link FileUploadStorageItem} or removes an existing one, if the item is null.
*/
public void setUploadStorageItem(final String key, final FileUploadStorageItem item) {
+ FileUploadStorageItem oldItem = getUploadStorageItem(key);
+ if( oldItem != null )
+ {
+ oldItem.reset();
+ }
+
if( item == null ) {
items.remove( key );
} else {
Index: src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorageItem.java
===================================================================
RCS file: /cvsroot/rt/org.eclipse.rap/sandbox/org.eclipse.rwt.widgets.upload/src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorageItem.java,v
retrieving revision 1.4
diff -u -r1.4 FileUploadStorageItem.java
--- src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorageItem.java 5 May 2010 11:40:29 -0000 1.4
+++ src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorageItem.java 15 Nov 2010 09:32:22 -0000
@@ -13,6 +13,8 @@
import java.io.InputStream;
+import org.apache.commons.fileupload.FileItem;
+
/**
* This Pojo is used to store a file reference and a progress listener.
@@ -24,16 +26,24 @@
* @author stefan.roeck
*/
public class FileUploadStorageItem {
+ private FileItem fileItem;
private InputStream fileInputStream;
private String contentType;
private String uploadProcessId;
private long bytesRead;
private long contentLength;
- private Exception exception;
-
+ private Exception exception;
public FileUploadStorageItem() {
reset();
+ }
+
+ public synchronized FileItem getFileItem() {
+ return this.fileItem;
+ }
+
+ public synchronized void setFileItem(final FileItem fileItem) {
+ this.fileItem = fileItem;
}
public synchronized InputStream getFileInputStream() {
@@ -74,6 +84,13 @@
}
public synchronized void reset() {
+ if(fileItem != null)
+ {
+ // clean temp files
+ fileItem.delete();
+ }
+
+ fileItem = null;
contentLength = -1;
bytesRead = -1;
contentType = null;
|
|
|
Re: UploadWidget: temporary files [message #639137 is a reply to message #639101] |
Mon, 15 November 2010 11:42 |
Ivan Furnadjiev Messages: 2426 Registered: July 2009 Location: Sofia, Bulgaria |
Senior Member |
|
|
Hi Oliver,
please open a bugzilla and attach your patch there.
Thanks,
Ivan
On 15.11.2010 12:01 PM, Oliver wrote:
> Patch:
>
>
>
> ### Eclipse Workspace Patch 1.0
> #P org.eclipse.rwt.widgets.upload
> Index:
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadService Handler.java
> ============================================================ =======
> RCS file:
> /cvsroot/rt/org.eclipse.rap/sandbox/org.eclipse.rwt.widgets. upload/src/org/eclipse/rwt/widgets/upload/servlet/FileUpload ServiceHandler.java,v
> retrieving revision 1.6
> diff -u -r1.6 FileUploadServiceHandler.java
> ---
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadService Handler.java
> 5 May 2010 11:40:29 -0000 1.6
> +++
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadService Handler.java
> 15 Nov 2010 09:32:22 -0000
> @@ -141,6 +141,7 @@
> if( !fileItem.isFormField() ) {
> fileUploadStorageitem.setFileInputStream(
> fileItem.getInputStream() );
>
> fileUploadStorageitem.setContentType(fileItem.getContentType ());
> + fileUploadStorageitem.setFileItem(fileItem);
> }
> }
> } catch( final FileUploadException e ) {
> Index: src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage .java
> ============================================================ =======
> RCS file:
> /cvsroot/rt/org.eclipse.rap/sandbox/org.eclipse.rwt.widgets. upload/src/org/eclipse/rwt/widgets/upload/servlet/FileUpload Storage.java,v
> retrieving revision 1.1
> diff -u -r1.1 FileUploadStorage.java
> ---
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage .java 5
> Jun 2008 10:47:03 -0000 1.1
> +++
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage .java
> 15 Nov 2010 09:32:22 -0000
> @@ -43,6 +43,12 @@
> * Sets a {@link FileUploadStorageItem} or removes an existing one,
> if the item is null.
> */
> public void setUploadStorageItem(final String key, final
> FileUploadStorageItem item) {
> + FileUploadStorageItem oldItem = getUploadStorageItem(key);
> + if( oldItem != null )
> + {
> + oldItem.reset();
> + }
> + if( item == null ) {
> items.remove( key );
> } else {
> Index:
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage Item.java
> ============================================================ =======
> RCS file:
> /cvsroot/rt/org.eclipse.rap/sandbox/org.eclipse.rwt.widgets. upload/src/org/eclipse/rwt/widgets/upload/servlet/FileUpload StorageItem.java,v
> retrieving revision 1.4
> diff -u -r1.4 FileUploadStorageItem.java
> ---
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage Item.java
> 5 May 2010 11:40:29 -0000 1.4
> +++
> src/org/eclipse/rwt/widgets/upload/servlet/FileUploadStorage Item.java
> 15 Nov 2010 09:32:22 -0000
> @@ -13,6 +13,8 @@
>
> import java.io.InputStream;
>
> +import org.apache.commons.fileupload.FileItem;
> +
>
> /**
> * This Pojo is used to store a file reference and a progress listener.
> @@ -24,16 +26,24 @@
> * @author stefan.roeck
> */
> public class FileUploadStorageItem {
> + private FileItem fileItem;
> private InputStream fileInputStream;
> private String contentType;
> private String uploadProcessId;
> private long bytesRead;
> private long contentLength;
> - private Exception exception;
> - + private Exception exception; public FileUploadStorageItem() {
> reset();
> + } +
> + public synchronized FileItem getFileItem() {
> + return this.fileItem;
> + }
> + + public synchronized void setFileItem(final FileItem fileItem) {
> + this.fileItem = fileItem;
> }
> public synchronized InputStream getFileInputStream() {
> @@ -74,6 +84,13 @@
> }
>
> public synchronized void reset() {
> + if(fileItem != null)
> + {
> + // clean temp files
> + fileItem.delete();
> + }
> + + fileItem = null;
> contentLength = -1;
> bytesRead = -1;
> contentType = null;
>
>
>
|
|
|
|
Powered by
FUDForum. Page generated in 0.03737 seconds