Browse Source

codacy: move listener to own file to reduce file complexity

AndyScherzinger 7 years ago
parent
commit
d96dee930a

+ 0 - 40
src/main/java/com/owncloud/android/ui/adapter/ExpandableUploadListAdapter.java

@@ -44,7 +44,6 @@ import com.owncloud.android.datamodel.UploadsStorageManager.UploadStatus;
 import com.owncloud.android.db.OCUpload;
 import com.owncloud.android.db.UploadResult;
 import com.owncloud.android.files.services.FileUploader;
-import com.owncloud.android.lib.common.network.OnDatatransferProgressListener;
 import com.owncloud.android.lib.common.utils.Log_OC;
 import com.owncloud.android.ui.activity.FileActivity;
 import com.owncloud.android.utils.DisplayUtils;
@@ -52,7 +51,6 @@ import com.owncloud.android.utils.MimeTypeUtil;
 import com.owncloud.android.utils.ThemeUtils;
 
 import java.io.File;
-import java.lang.ref.WeakReference;
 import java.util.Arrays;
 import java.util.Comparator;
 import java.util.Observable;
@@ -718,44 +716,6 @@ public class ExpandableUploadListAdapter extends BaseExpandableListAdapter imple
         return true;
     }
 
-    public class ProgressListener implements OnDatatransferProgressListener {
-        int mLastPercent = 0;
-        OCUpload mUpload = null;
-        WeakReference<ProgressBar> mProgressBar = null;
-
-        public ProgressListener(OCUpload upload, ProgressBar progressBar) {
-            mUpload = upload;
-            mProgressBar = new WeakReference<ProgressBar>(progressBar);
-        }
-
-        @Override
-        public void onTransferProgress(long progressRate, long totalTransferredSoFar, long totalToTransfer, String
-                filename) {
-            int percent = (int) (100.0 * ((double) totalTransferredSoFar) / ((double) totalToTransfer));
-            if (percent != mLastPercent) {
-                ProgressBar pb = mProgressBar.get();
-                if (pb != null) {
-                    pb.setProgress(percent);
-                    pb.postInvalidate();
-                }
-            }
-            mLastPercent = percent;
-        }
-
-        public boolean isWrapping(ProgressBar progressBar) {
-            ProgressBar wrappedProgressBar = mProgressBar.get();
-            return (
-                    wrappedProgressBar != null &&
-                            wrappedProgressBar == progressBar   // on purpose; don't replace with equals
-            );
-        }
-
-        public OCUpload getUpload() {
-            return mUpload;
-        }
-
-    }
-
     public void addBinder() {
         notifyDataSetChanged();
     }

+ 73 - 0
src/main/java/com/owncloud/android/ui/adapter/ProgressListener.java

@@ -0,0 +1,73 @@
+/*
+ * Nextcloud Android client application
+ *
+ * @author Andy Scherzinger
+ * Copyright (C) 2016 Andy Scherzinger
+ * Copyright (C) 2016 Nextcloud
+ * Copyright (C) 2016 ownCloud GmbH
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.owncloud.android.ui.adapter;
+
+import android.widget.ProgressBar;
+
+import com.owncloud.android.db.OCUpload;
+import com.owncloud.android.lib.common.network.OnDatatransferProgressListener;
+
+import java.lang.ref.WeakReference;
+
+/**
+ * Progress listener for file transfers.
+ */
+public class ProgressListener implements OnDatatransferProgressListener {
+    private int mLastPercent = 0;
+    private OCUpload mUpload = null;
+    private WeakReference<ProgressBar> mProgressBar = null;
+
+    public ProgressListener(OCUpload upload, ProgressBar progressBar) {
+        mUpload = upload;
+        mProgressBar = new WeakReference<>(progressBar);
+    }
+
+    @Override
+    public void onTransferProgress(
+            long progressRate,
+            long totalTransferredSoFar,
+            long totalToTransfer,
+            String fileAbsoluteName) {
+        int percent = (int) (100.0 * ((double) totalTransferredSoFar) / ((double) totalToTransfer));
+
+        if (percent != mLastPercent) {
+            ProgressBar progressBar = mProgressBar.get();
+            if (progressBar != null) {
+                progressBar.setProgress(percent);
+                progressBar.postInvalidate();
+            }
+        }
+
+        mLastPercent = percent;
+    }
+
+    public boolean isWrapping(ProgressBar progressBar) {
+        ProgressBar wrappedProgressBar = mProgressBar.get();
+        return (
+                wrappedProgressBar != null &&
+                        wrappedProgressBar == progressBar   // on purpose; don't replace with equals
+        );
+    }
+
+    public OCUpload getUpload() {
+        return mUpload;
+    }
+}