@@ -113,24 +113,21 @@ public UploadListAdapter(FileActivity parentActivity) {
113113 mUploadGroups [0 ] = new UploadGroup (mParentActivity .getString (R .string .uploads_view_group_current_uploads )) {
114114 @ Override
115115 public void refresh () {
116- setItems (mUploadsStorageManager .getCurrentAndPendingUploadsForCurrentAccount ());
117- Arrays .sort (getItems (), comparator );
116+ fixAndSortItems (mUploadsStorageManager .getCurrentAndPendingUploadsForCurrentAccount ());
118117 }
119118 };
120119
121120 mUploadGroups [1 ] = new UploadGroup (mParentActivity .getString (R .string .uploads_view_group_failed_uploads )) {
122121 @ Override
123122 public void refresh () {
124- setItems (mUploadsStorageManager .getFailedButNotDelayedUploadsForCurrentAccount ());
125- Arrays .sort (getItems (), comparator );
123+ fixAndSortItems (mUploadsStorageManager .getFailedButNotDelayedUploadsForCurrentAccount ());
126124 }
127125 };
128126
129127 mUploadGroups [2 ] = new UploadGroup (mParentActivity .getString (R .string .uploads_view_group_finished_uploads )) {
130128 @ Override
131129 public void refresh () {
132- setItems (mUploadsStorageManager .getFinishedUploadsForCurrentAccount ());
133- Arrays .sort (getItems (), comparator );
130+ fixAndSortItems (mUploadsStorageManager .getFinishedUploadsForCurrentAccount ());
134131 }
135132 };
136133 loadUploadItemsFromDb ();
@@ -624,6 +621,17 @@ public void setItems(OCUpload[] items) {
624621 this .items = items ;
625622 }
626623
624+ void fixAndSortItems (OCUpload [] array ) {
625+ FileUploader .FileUploaderBinder binder = mParentActivity .getFileUploaderBinder ();
626+
627+ for (OCUpload upload : array ) {
628+ upload .setDataFixed (binder );
629+ }
630+ Arrays .sort (array , comparator );
631+
632+ setItems (array );
633+ }
634+
627635 private int getGroupItemCount () {
628636 return items == null ? 0 : items .length ;
629637 }
@@ -640,23 +648,20 @@ public int compare(OCUpload upload1, OCUpload upload2) {
640648 if (upload2 == null ) {
641649 return 1 ;
642650 }
643- if (UploadStatus .UPLOAD_IN_PROGRESS .equals (upload1 .getUploadStatus ())) {
644- if (!UploadStatus .UPLOAD_IN_PROGRESS .equals (upload2 .getUploadStatus ())) {
651+ if (UploadStatus .UPLOAD_IN_PROGRESS .equals (upload1 .getFixedUploadStatus ())) {
652+ if (!UploadStatus .UPLOAD_IN_PROGRESS .equals (upload2 .getFixedUploadStatus ())) {
645653 return -1 ;
646654 }
647655 // both are in progress
648- FileUploader .FileUploaderBinder binder = mParentActivity .getFileUploaderBinder ();
649- if (binder != null ) {
650- if (binder .isUploadingNow (upload1 )) {
651- return -1 ;
652- } else if (binder .isUploadingNow (upload2 )) {
653- return 1 ;
654- }
656+ if (upload1 .isFixedUploadingNow ()) {
657+ return -1 ;
658+ } else if (upload2 .isFixedUploadingNow ()) {
659+ return 1 ;
655660 }
656- } else if (upload2 .getUploadStatus ().equals (UploadStatus .UPLOAD_IN_PROGRESS )) {
661+ } else if (upload2 .getFixedUploadStatus ().equals (UploadStatus .UPLOAD_IN_PROGRESS )) {
657662 return 1 ;
658663 }
659- if (upload1 .getUploadEndTimestamp () == 0 || upload2 .getUploadEndTimestamp () == 0 ) {
664+ if (upload1 .getFixedUploadEndTimestamp () == 0 || upload2 .getFixedUploadEndTimestamp () == 0 ) {
660665 return compareUploadId (upload1 , upload2 );
661666 } else {
662667 return compareUpdateTime (upload1 , upload2 );
@@ -665,12 +670,12 @@ public int compare(OCUpload upload1, OCUpload upload2) {
665670
666671 @ SuppressFBWarnings ("Bx" )
667672 private int compareUploadId (OCUpload upload1 , OCUpload upload2 ) {
668- return Long .valueOf (upload1 .getUploadId ()).compareTo (upload2 .getUploadId ());
673+ return Long .valueOf (upload1 .getFixedUploadId ()).compareTo (upload2 .getFixedUploadId ());
669674 }
670675
671676 @ SuppressFBWarnings ("Bx" )
672677 private int compareUpdateTime (OCUpload upload1 , OCUpload upload2 ) {
673- return Long .valueOf (upload2 .getUploadEndTimestamp ()).compareTo (upload1 .getUploadEndTimestamp ());
678+ return Long .valueOf (upload2 .getFixedUploadEndTimestamp ()).compareTo (upload1 .getFixedUploadEndTimestamp ());
674679 }
675680 };
676681 }
0 commit comments