mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
AbstractUrl: cleanup and notnullification
This commit is contained in:
@@ -17,8 +17,10 @@
|
||||
package com.intellij.ide.projectView.impl;
|
||||
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import org.jdom.Element;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
@@ -29,9 +31,9 @@ public abstract class AbstractUrl {
|
||||
protected final String moduleName;
|
||||
private final String myType;
|
||||
|
||||
protected AbstractUrl(String url, String moduleName, @NonNls String type) {
|
||||
protected AbstractUrl(String url, @Nullable String moduleName, @NotNull @NonNls String type) {
|
||||
myType = type;
|
||||
this.url = url == null ? "" : url;
|
||||
this.url = StringUtil.notNullize(url);
|
||||
this.moduleName = moduleName;
|
||||
}
|
||||
|
||||
@@ -47,7 +49,7 @@ public abstract class AbstractUrl {
|
||||
@Nullable
|
||||
public abstract Object[] createPath(Project project);
|
||||
|
||||
// return null if cannot recognize the element
|
||||
@Nullable("return null if cannot recognize the element")
|
||||
public AbstractUrl createUrl(String type, String moduleName, String url){
|
||||
if (type.equals(myType)) {
|
||||
return createUrl(moduleName, url);
|
||||
@@ -65,17 +67,13 @@ public abstract class AbstractUrl {
|
||||
final AbstractUrl that = (AbstractUrl)o;
|
||||
|
||||
if (moduleName != null ? !moduleName.equals(that.moduleName) : that.moduleName != null) return false;
|
||||
if (myType != null ? !myType.equals(that.myType) : that.myType != null) return false;
|
||||
if (url != null ? !url.equals(that.url) : that.url != null) return false;
|
||||
|
||||
return true;
|
||||
return myType.equals(that.myType) && url.equals(that.url);
|
||||
}
|
||||
|
||||
public int hashCode() {
|
||||
int result;
|
||||
result = (url != null ? url.hashCode() : 0);
|
||||
int result = url.hashCode();
|
||||
result = 29 * result + (moduleName != null ? moduleName.hashCode() : 0);
|
||||
result = 29 * result + (myType != null ? myType.hashCode() : 0);
|
||||
result = 29 * result + myType.hashCode();
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ public class DirectoryUrl extends AbstractUrl {
|
||||
@NonNls private static final String ELEMENT_TYPE = "directory";
|
||||
|
||||
public DirectoryUrl(String url, String moduleName) {
|
||||
super(url, moduleName,ELEMENT_TYPE);
|
||||
super(url, moduleName, ELEMENT_TYPE);
|
||||
}
|
||||
public static DirectoryUrl create(PsiDirectory directory) {
|
||||
Project project = directory.getProject();
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
package com.intellij.ide.projectView.impl;
|
||||
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
|
||||
@@ -43,13 +44,7 @@ public class ModuleGroupUrl extends AbstractUrl {
|
||||
if (element instanceof ModuleGroup) {
|
||||
ModuleGroup group = (ModuleGroup)element;
|
||||
final String[] groupPath = group.getGroupPath();
|
||||
StringBuffer sb = new StringBuffer();
|
||||
for (int i = 0; i < groupPath.length; i++) {
|
||||
String s = groupPath[i];
|
||||
sb.append(s);
|
||||
sb.append(";");
|
||||
}
|
||||
return new ModuleGroupUrl(sb.toString());
|
||||
return new ModuleGroupUrl(StringUtil.join(groupPath, ";"));
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ public class ModuleUrl extends AbstractUrl {
|
||||
@NonNls private static final String ELEMENT_TYPE = "module";
|
||||
|
||||
public ModuleUrl(String url, String moduleName) {
|
||||
super(url, moduleName,ELEMENT_TYPE);
|
||||
super(url, moduleName, ELEMENT_TYPE);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user