From 635edcac8a20fea633e9393f1d96cd899aa0f06a Mon Sep 17 00:00:00 2001 From: Eugene Kudelevsky Date: Fri, 17 Aug 2012 20:52:37 +0400 Subject: [PATCH] equals & hashCode --- .../android/uipreview/VirtualFileWrapper.java | 28 +++++++++++++++++ .../uipreview/VirtualFolderWrapper.java | 31 ++++++++++++++++++- 2 files changed, 58 insertions(+), 1 deletion(-) diff --git a/plugins/android/src/org/jetbrains/android/uipreview/VirtualFileWrapper.java b/plugins/android/src/org/jetbrains/android/uipreview/VirtualFileWrapper.java index 82cf8fe74e4a..ecaab2a46130 100644 --- a/plugins/android/src/org/jetbrains/android/uipreview/VirtualFileWrapper.java +++ b/plugins/android/src/org/jetbrains/android/uipreview/VirtualFileWrapper.java @@ -101,4 +101,32 @@ class VirtualFileWrapper implements IAbstractFile { public VirtualFile getFile() { return myFile; } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + VirtualFileWrapper wrapper = (VirtualFileWrapper)o; + + if (!myFile.equals(wrapper.myFile)) { + return false; + } + if (!myProject.equals(wrapper.myProject)) { + return false; + } + + return true; + } + + @Override + public int hashCode() { + int result = myProject.hashCode(); + result = 31 * result + myFile.hashCode(); + return result; + } } diff --git a/plugins/android/src/org/jetbrains/android/uipreview/VirtualFolderWrapper.java b/plugins/android/src/org/jetbrains/android/uipreview/VirtualFolderWrapper.java index 8af6d391ffa5..23259a17129c 100644 --- a/plugins/android/src/org/jetbrains/android/uipreview/VirtualFolderWrapper.java +++ b/plugins/android/src/org/jetbrains/android/uipreview/VirtualFolderWrapper.java @@ -6,6 +6,7 @@ import com.android.io.IAbstractResource; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.vfs.VirtualFile; +import com.intellij.util.ArrayUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -74,7 +75,7 @@ class VirtualFolderWrapper implements IAbstractFolder { result.add(name); } } - return result.toArray(new String[result.size()]); + return ArrayUtil.toStringArray(result); } @Override @@ -105,4 +106,32 @@ class VirtualFolderWrapper implements IAbstractFolder { public boolean delete() { throw new UnsupportedOperationException(); } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + VirtualFolderWrapper wrapper = (VirtualFolderWrapper)o; + + if (!myFolder.equals(wrapper.myFolder)) { + return false; + } + if (!myProject.equals(wrapper.myProject)) { + return false; + } + + return true; + } + + @Override + public int hashCode() { + int result = myProject.hashCode(); + result = 31 * result + myFolder.hashCode(); + return result; + } }