浏览代码

use sets instead of lists

Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
tobiasKaminsky 2 年之前
父节点
当前提交
bb69f8cb86

+ 8 - 8
app/src/main/java/com/owncloud/android/operations/CreateShareWithShareeOperation.java

@@ -35,9 +35,9 @@ import com.owncloud.android.lib.resources.shares.OCShare;
 import com.owncloud.android.lib.resources.shares.ShareType;
 import com.owncloud.android.operations.common.SyncOperation;
 
-import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.List;
+import java.util.HashSet;
+import java.util.Set;
 
 /**
  * Creates a new private share for a given file.
@@ -54,12 +54,12 @@ public class CreateShareWithShareeOperation extends SyncOperation {
     private long expirationDateInMillis;
     private String label;
 
-    private static final List<ShareType> supportedShareTypes = new ArrayList<>(Arrays.asList(ShareType.USER,
-                                                                                             ShareType.GROUP,
-                                                                                             ShareType.FEDERATED,
-                                                                                             ShareType.EMAIL,
-                                                                                             ShareType.ROOM,
-                                                                                             ShareType.CIRCLE));
+    private static final Set<ShareType> supportedShareTypes = new HashSet<>(Arrays.asList(ShareType.USER,
+                                                                                          ShareType.GROUP,
+                                                                                          ShareType.FEDERATED,
+                                                                                          ShareType.EMAIL,
+                                                                                          ShareType.ROOM,
+                                                                                          ShareType.CIRCLE));
 
     /**
      * Constructor.

+ 2 - 2
app/src/main/java/com/owncloud/android/operations/RefreshFolderOperation.java

@@ -19,11 +19,11 @@
 
 package com.owncloud.android.operations;
 
-import android.accounts.Account;
 import android.content.Context;
 import android.content.Intent;
 import android.util.Log;
 
+import com.google.common.collect.Maps;
 import com.google.gson.Gson;
 import com.nextcloud.android.lib.resources.directediting.DirectEditingObtainRemoteOperation;
 import com.nextcloud.client.account.User;
@@ -631,7 +631,7 @@ public class RefreshFolderOperation extends RemoteOperation {
 
     @NonNull
     public static Map<String, OCFile> prefillLocalFilesMap(DecryptedFolderMetadata metadata, List<OCFile> localFiles) {
-        Map<String, OCFile> localFilesMap = new HashMap<>(localFiles.size());
+        Map<String, OCFile> localFilesMap = Maps.newHashMapWithExpectedSize(localFiles.size());
 
         for (OCFile file : localFiles) {
             String remotePath = file.getRemotePath();

+ 2 - 2
app/src/main/java/com/owncloud/android/ui/activity/ManageAccountsActivity.java

@@ -38,6 +38,7 @@ import android.os.IBinder;
 import android.view.MenuItem;
 import android.view.View;
 
+import com.google.common.collect.Sets;
 import com.nextcloud.client.account.User;
 import com.nextcloud.client.account.UserAccountManager;
 import com.nextcloud.client.jobs.BackgroundJobManager;
@@ -65,7 +66,6 @@ import org.greenrobot.eventbus.ThreadMode;
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
@@ -217,7 +217,7 @@ public class ManageAccountsActivity extends FileActivity implements UserListAdap
     }
 
     private static Set<String> toAccountNames(Collection<User> users) {
-        Set<String> accountNames = new HashSet<>(users.size());
+        Set<String> accountNames = Sets.newHashSetWithExpectedSize(users.size());
         for (User user : users) {
             accountNames.add(user.getAccountName());
         }

+ 5 - 2
app/src/main/java/com/owncloud/android/ui/dialog/ChooseRichDocumentsTemplateDialogFragment.java

@@ -35,6 +35,7 @@ import android.view.Window;
 import android.view.WindowManager.LayoutParams;
 import android.widget.Button;
 
+import com.google.common.collect.Sets;
 import com.nextcloud.client.account.CurrentAccountProvider;
 import com.nextcloud.client.account.User;
 import com.nextcloud.client.di.Injectable;
@@ -65,6 +66,7 @@ import com.owncloud.android.utils.theme.ThemeTextInputUtils;
 import java.lang.ref.WeakReference;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 import javax.inject.Inject;
 
@@ -150,9 +152,10 @@ public class ChooseRichDocumentsTemplateDialogFragment extends DialogFragment im
         }
 
         parentFolder = arguments.getParcelable(ARG_PARENT_FOLDER);
-        List<String> fileNames = new ArrayList<>();
+        List<OCFile> folderContent = fileDataStorageManager.getFolderContent(parentFolder, false);
+        Set<String> fileNames = Sets.newHashSetWithExpectedSize(folderContent.size());
 
-        for (OCFile file : fileDataStorageManager.getFolderContent(parentFolder, false)) {
+        for (OCFile file : folderContent) {
             fileNames.add(file.getFileName());
         }
 

+ 5 - 3
app/src/main/java/com/owncloud/android/ui/dialog/CreateFolderDialogFragment.java

@@ -33,6 +33,7 @@ import android.view.WindowManager.LayoutParams;
 import android.widget.Button;
 import android.widget.TextView;
 
+import com.google.common.collect.Sets;
 import com.nextcloud.client.di.Injectable;
 import com.owncloud.android.R;
 import com.owncloud.android.databinding.EditBoxDialogBinding;
@@ -45,8 +46,8 @@ import com.owncloud.android.utils.theme.ThemeButtonUtils;
 import com.owncloud.android.utils.theme.ThemeColorUtils;
 import com.owncloud.android.utils.theme.ThemeTextInputUtils;
 
-import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 import javax.inject.Inject;
 
@@ -123,9 +124,10 @@ public class CreateFolderDialogFragment
                                            themeColorUtils.primaryAccentColor(getActivity()));
 
         OCFile parentFolder = requireArguments().getParcelable(ARG_PARENT_FOLDER);
-        List<String> fileNames = new ArrayList<>();
+        List<OCFile> folderContent = fileDataStorageManager.getFolderContent(parentFolder, false);
+        Set<String> fileNames = Sets.newHashSetWithExpectedSize(folderContent.size());
 
-        for (OCFile file : fileDataStorageManager.getFolderContent(parentFolder, false)) {
+        for (OCFile file : folderContent) {
             fileNames.add(file.getFileName());
         }
 

+ 5 - 3
app/src/main/java/com/owncloud/android/ui/dialog/RenameFileDialogFragment.java

@@ -38,6 +38,7 @@ import android.view.Window;
 import android.view.WindowManager.LayoutParams;
 import android.widget.Button;
 
+import com.google.common.collect.Sets;
 import com.nextcloud.client.di.Injectable;
 import com.owncloud.android.R;
 import com.owncloud.android.databinding.EditBoxDialogBinding;
@@ -49,8 +50,8 @@ import com.owncloud.android.utils.DisplayUtils;
 import com.owncloud.android.utils.theme.ThemeColorUtils;
 import com.owncloud.android.utils.theme.ThemeTextInputUtils;
 
-import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 import javax.inject.Inject;
 
@@ -132,9 +133,10 @@ public class RenameFileDialogFragment
         binding.userInput.requestFocus();
 
         OCFile parentFolder = requireArguments().getParcelable(ARG_PARENT_FOLDER);
-        List<String> fileNames = new ArrayList<>();
+        List<OCFile> folderContent = fileDataStorageManager.getFolderContent(parentFolder, false);
+        Set<String> fileNames = Sets.newHashSetWithExpectedSize(folderContent.size());
 
-        for (OCFile file : fileDataStorageManager.getFolderContent(parentFolder, false)) {
+        for (OCFile file : folderContent) {
             fileNames.add(file.getFileName());
         }
 

+ 2 - 1
app/src/main/java/com/owncloud/android/utils/EncryptionUtils.java

@@ -26,6 +26,7 @@ import android.text.TextUtils;
 import android.util.Base64;
 import android.util.Pair;
 
+import com.google.common.collect.Lists;
 import com.google.gson.Gson;
 import com.google.gson.reflect.TypeToken;
 import com.nextcloud.client.account.User;
@@ -674,7 +675,7 @@ public final class EncryptionUtils {
 
         SecureRandom random = new SecureRandom();
 
-        List<String> outputLines = new ArrayList<>();
+        List<String> outputLines = Lists.newArrayListWithCapacity(count);
         for (int i = 0; i < count; i++) {
             int randomLine = random.nextInt(lines.size());
             outputLines.add(lines.get(randomLine));