add LibraryScopeBase.equals/hashCode (IDEA-CR-3681)

This commit is contained in:
peter
2015-07-14 20:57:45 +02:00
parent be52b61acb
commit 31c46e4ea0
2 changed files with 15 additions and 14 deletions
@@ -21,14 +21,10 @@ import com.intellij.openapi.roots.JdkOrderEntry;
import com.intellij.openapi.roots.OrderRootType;
import com.intellij.openapi.vfs.VirtualFile;
import java.util.Arrays;
/**
* @author max
*/
public class JdkScope extends LibraryScopeBase {
private final VirtualFile[] myClasses;
private final VirtualFile[] mySources;
private final String myJdkName;
public JdkScope(Project project, JdkOrderEntry entry) {
@@ -40,17 +36,12 @@ public class JdkScope extends LibraryScopeBase {
VirtualFile[] sources,
String jdkName) {
super(project, classes, sources);
myClasses = classes;
mySources = sources;
myJdkName = jdkName;
}
@Override
public int hashCode() {
int result = Arrays.hashCode(myClasses);
result = 31 * result + Arrays.hashCode(mySources);
result = 31 * result + myJdkName.hashCode();
return result;
return 31 * super.hashCode() + myJdkName.hashCode();
}
@Override
@@ -58,9 +49,6 @@ public class JdkScope extends LibraryScopeBase {
if (object == this) return true;
if (object.getClass() != getClass()) return false;
final JdkScope that = (JdkScope)object;
return myJdkName.equals(that.myJdkName) &&
Arrays.equals(myClasses, that.myClasses) &&
Arrays.equals(mySources, that.mySources);
return myJdkName.equals(((JdkScope)object).myJdkName) && super.equals(object);
}
}
@@ -79,4 +79,17 @@ public abstract class LibraryScopeBase extends GlobalSearchScope {
public boolean isSearchInLibraries() {
return true;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof LibraryScopeBase)) return false;
return myEntries.equals(((LibraryScopeBase)o).myEntries);
}
@Override
public int hashCode() {
return myEntries.hashCode();
}
}