Skip to content

Commit f9202af

Browse files
committed
Added XHR Response to Complete, Sending and Success event for better control.
Fixed #77
1 parent 3c261e6 commit f9202af

File tree

5 files changed

+43
-22
lines changed

5 files changed

+43
-22
lines changed

src/main/java/gwt/material/design/addins/client/fileuploader/MaterialFileUploader.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -220,15 +220,15 @@ private native void initDropzone(Element e, Element template, String previews, E
220220
});
221221
222222
zdrop.on('sending', function (file) {
223-
that.@gwt.material.design.addins.client.fileuploader.MaterialFileUploader::fireSendingEvent(*)(file.name , file.lastModifiedDate , file.size , file.type);
223+
that.@gwt.material.design.addins.client.fileuploader.MaterialFileUploader::fireSendingEvent(*)(file.name , file.lastModifiedDate , file.size , file.type, file.xhr.status, file.xhr.statusText);
224224
});
225225
226-
zdrop.on('success', function (file, response) {
227-
that.@gwt.material.design.addins.client.fileuploader.MaterialFileUploader::fireSuccessEvent(*)(file.name , file.lastModifiedDate , file.size , file.type);
226+
zdrop.on('success', function (file) {
227+
that.@gwt.material.design.addins.client.fileuploader.MaterialFileUploader::fireSuccessEvent(*)(file.name , file.lastModifiedDate , file.size , file.type, file.xhr.status, file.xhr.statusText);
228228
});
229229
230230
zdrop.on('complete', function (file) {
231-
that.@gwt.material.design.addins.client.fileuploader.MaterialFileUploader::fireCompleteEvent(*)(file.name , file.lastModifiedDate , file.size , file.type);
231+
that.@gwt.material.design.addins.client.fileuploader.MaterialFileUploader::fireCompleteEvent(*)(file.name , file.lastModifiedDate , file.size , file.type, file.xhr.status, file.xhr.statusText);
232232
});
233233
234234
zdrop.on('canceled', function (file) {
@@ -526,8 +526,8 @@ public void onSending(SendingEvent<UploadFile> event) {
526526
}
527527

528528
@Override
529-
public void fireSendingEvent(String fileName, String lastModified, String size, String type) {
530-
SendingEvent.fire(this, new UploadFile(fileName, new Date(lastModified), Double.parseDouble(size), type));
529+
public void fireSendingEvent(String fileName, String lastModified, String size, String type, String responseCode, String responseMessage) {
530+
SendingEvent.fire(this, new UploadFile(fileName, new Date(lastModified), Double.parseDouble(size), type), new UploadResponse(responseCode, responseMessage));
531531
}
532532

533533
@Override
@@ -543,8 +543,8 @@ public void onSuccess(SuccessEvent<UploadFile> event) {
543543
}
544544

545545
@Override
546-
public void fireSuccessEvent(String fileName, String lastModified, String size, String type) {
547-
SuccessEvent.fire(this, new UploadFile(fileName, new Date(lastModified), Double.parseDouble(size), type));
546+
public void fireSuccessEvent(String fileName, String lastModified, String size, String type, String responseCode, String responseMessage) {
547+
SuccessEvent.fire(this, new UploadFile(fileName, new Date(lastModified), Double.parseDouble(size), type), new UploadResponse(responseCode, responseMessage));
548548
}
549549

550550
@Override
@@ -560,8 +560,8 @@ public void onComplete(CompleteEvent<UploadFile> event) {
560560
}
561561

562562
@Override
563-
public void fireCompleteEvent(String fileName, String lastModified, String size, String type) {
564-
CompleteEvent.fire(this, new UploadFile(fileName, new Date(lastModified), Double.parseDouble(size), type));
563+
public void fireCompleteEvent(String fileName, String lastModified, String size, String type, String responseCode, String responseMessage) {
564+
CompleteEvent.fire(this, new UploadFile(fileName, new Date(lastModified), Double.parseDouble(size), type), new UploadResponse(responseCode, responseMessage));
565565
}
566566

567567
@Override

src/main/java/gwt/material/design/addins/client/fileuploader/base/HasFileUpload.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,23 +115,23 @@ public interface HasFileUpload<T> extends HasHandlers {
115115
*/
116116
HandlerRegistration addSendingHandler(SendingEvent.SendingHandler<T> handler);
117117

118-
void fireSendingEvent(String fileName, String lastModified, String size, String type);
118+
void fireSendingEvent(String fileName, String lastModified, String size, String type, String responseCode, String responseMessage);
119119

120120
/**
121121
* The file has been uploaded successfully. Gets the server response as second argument. (This event was called finished previously)
122122
* @param handler
123123
*/
124124
HandlerRegistration addSuccessHandler(SuccessEvent.SuccessHandler<T> handler);
125125

126-
void fireSuccessEvent(String fileName, String lastModified, String size, String type);
126+
void fireSuccessEvent(String fileName, String lastModified, String size, String type, String responseCode, String responseMessage);
127127

128128
/**
129129
* Called when the upload was either successful or erroneous.
130130
* @param handler
131131
*/
132132
HandlerRegistration addCompleteHandler(CompleteEvent.CompleteHandler<T> handler);
133133

134-
void fireCompleteEvent(String fileName, String lastModified, String size, String type);
134+
void fireCompleteEvent(String fileName, String lastModified, String size, String type, String responseCode, String responseMessage);
135135

136136
/**
137137
* Called when a file upload gets canceled.

src/main/java/gwt/material/design/addins/client/fileuploader/events/CompleteEvent.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.google.gwt.event.shared.EventHandler;
2525
import com.google.gwt.event.shared.GwtEvent;
2626
import gwt.material.design.addins.client.fileuploader.base.HasFileUpload;
27+
import gwt.material.design.addins.client.fileuploader.base.UploadResponse;
2728

2829
public class CompleteEvent<T> extends GwtEvent<CompleteEvent.CompleteHandler<T>> {
2930

@@ -33,9 +34,9 @@ public interface CompleteHandler<T> extends EventHandler {
3334
void onComplete(CompleteEvent<T> event);
3435
}
3536

36-
public static <T> void fire(HasFileUpload<T> source, T target) {
37+
public static <T> void fire(HasFileUpload<T> source, T target, UploadResponse response) {
3738
if (TYPE != null) {
38-
CompleteEvent<T> event = new CompleteEvent<T>(target);
39+
CompleteEvent<T> event = new CompleteEvent<T>(target, response);
3940
source.fireEvent(event);
4041
}
4142
}
@@ -45,9 +46,11 @@ public static Type<CompleteHandler<?>> getType() {
4546
}
4647

4748
private final T target;
49+
private final UploadResponse response;
4850

49-
protected CompleteEvent(T target) {
51+
protected CompleteEvent(T target, UploadResponse response) {
5052
this.target = target;
53+
this.response = response;
5154
}
5255

5356
@Override
@@ -59,6 +62,10 @@ public T getTarget() {
5962
return target;
6063
}
6164

65+
public UploadResponse getResponse() {
66+
return response;
67+
}
68+
6269
@Override
6370
protected void dispatch(CompleteHandler<T> handler) {
6471
handler.onComplete(this);

src/main/java/gwt/material/design/addins/client/fileuploader/events/SendingEvent.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.google.gwt.event.shared.EventHandler;
2525
import com.google.gwt.event.shared.GwtEvent;
2626
import gwt.material.design.addins.client.fileuploader.base.HasFileUpload;
27+
import gwt.material.design.addins.client.fileuploader.base.UploadResponse;
2728

2829
public class SendingEvent<T> extends GwtEvent<SendingEvent.SendingHandler<T>> {
2930

@@ -33,9 +34,9 @@ public interface SendingHandler<T> extends EventHandler {
3334
void onSending(SendingEvent<T> event);
3435
}
3536

36-
public static <T> void fire(HasFileUpload<T> source, T target) {
37+
public static <T> void fire(HasFileUpload<T> source, T target, UploadResponse response) {
3738
if (TYPE != null) {
38-
SendingEvent<T> event = new SendingEvent<T>(target);
39+
SendingEvent<T> event = new SendingEvent<T>(target, response);
3940
source.fireEvent(event);
4041
}
4142
}
@@ -45,9 +46,11 @@ public static Type<SendingHandler<?>> getType() {
4546
}
4647

4748
private final T target;
49+
private final UploadResponse response;
4850

49-
protected SendingEvent(T target) {
51+
protected SendingEvent(T target, UploadResponse response) {
5052
this.target = target;
53+
this.response = response;
5154
}
5255

5356
@Override
@@ -59,6 +62,10 @@ public T getTarget() {
5962
return target;
6063
}
6164

65+
public UploadResponse getResponse() {
66+
return response;
67+
}
68+
6269
@Override
6370
protected void dispatch(SendingHandler<T> handler) {
6471
handler.onSending(this);

src/main/java/gwt/material/design/addins/client/fileuploader/events/SuccessEvent.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.google.gwt.event.shared.EventHandler;
2525
import com.google.gwt.event.shared.GwtEvent;
2626
import gwt.material.design.addins.client.fileuploader.base.HasFileUpload;
27+
import gwt.material.design.addins.client.fileuploader.base.UploadResponse;
2728

2829
public class SuccessEvent<T> extends GwtEvent<SuccessEvent.SuccessHandler<T>> {
2930

@@ -33,9 +34,9 @@ public interface SuccessHandler<T> extends EventHandler {
3334
void onSuccess(SuccessEvent<T> event);
3435
}
3536

36-
public static <T> void fire(HasFileUpload<T> source, T target) {
37+
public static <T> void fire(HasFileUpload<T> source, T target, UploadResponse response) {
3738
if (TYPE != null) {
38-
SuccessEvent<T> event = new SuccessEvent<T>(target);
39+
SuccessEvent<T> event = new SuccessEvent<T>(target, response);
3940
source.fireEvent(event);
4041
}
4142
}
@@ -45,9 +46,11 @@ public static Type<SuccessHandler<?>> getType() {
4546
}
4647

4748
private final T target;
49+
private final UploadResponse response;
4850

49-
protected SuccessEvent(T target) {
51+
protected SuccessEvent(T target, UploadResponse response) {
5052
this.target = target;
53+
this.response = response;
5154
}
5255

5356
@Override
@@ -59,6 +62,10 @@ public T getTarget() {
5962
return target;
6063
}
6164

65+
public UploadResponse getResponse() {
66+
return response;
67+
}
68+
6269
@Override
6370
protected void dispatch(SuccessHandler<T> handler) {
6471
handler.onSuccess(this);

0 commit comments

Comments
 (0)