提交 ca53100c 编写于 作者: S Stephen Connolly

Merge pull request #1253 from daniel-beck/ModelHyperlinkNote-MasterNode

Return correct URL to Jenkins master node
package hudson.console; package hudson.console;
import hudson.Extension; import hudson.Extension;
import hudson.model.Item; import hudson.model.*;
import hudson.model.ModelObject; import jenkins.model.Jenkins;
import hudson.model.Node;
import hudson.model.Run;
import hudson.model.User;
import java.io.IOException; import java.io.IOException;
import java.util.logging.Level; import java.util.logging.Level;
...@@ -37,7 +34,7 @@ public class ModelHyperlinkNote extends HyperlinkNote { ...@@ -37,7 +34,7 @@ public class ModelHyperlinkNote extends HyperlinkNote {
} }
public static String encodeTo(Item item) { public static String encodeTo(Item item) {
return encodeTo(item,item.getDisplayName()); return encodeTo(item,item.getFullDisplayName());
} }
public static String encodeTo(Item item, String text) { public static String encodeTo(Item item, String text) {
...@@ -49,7 +46,12 @@ public class ModelHyperlinkNote extends HyperlinkNote { ...@@ -49,7 +46,12 @@ public class ModelHyperlinkNote extends HyperlinkNote {
} }
public static String encodeTo(Node node) { public static String encodeTo(Node node) {
return encodeTo("/computer/"+ node.getNodeName(), node.getDisplayName()); Computer c = node.toComputer();
if (c != null) {
return encodeTo("/" + c.getUrl(), node.getDisplayName());
}
String nodePath = node == Jenkins.getInstance() ? "(master)" : node.getNodeName();
return encodeTo("/computer/" + nodePath, node.getDisplayName());
} }
public static String encodeTo(String url, String text) { public static String encodeTo(String url, String text) {
......
...@@ -626,7 +626,7 @@ public /*transient*/ abstract class Computer extends Actionable implements Acces ...@@ -626,7 +626,7 @@ public /*transient*/ abstract class Computer extends Actionable implements Acces
} }
public String getUrl() { public String getUrl() {
return "computer/" + Util.rawEncode(getDisplayName()) + "/"; return "computer/" + Util.rawEncode(getName()) + "/";
} }
/** /**
...@@ -865,7 +865,7 @@ public /*transient*/ abstract class Computer extends Actionable implements Acces ...@@ -865,7 +865,7 @@ public /*transient*/ abstract class Computer extends Actionable implements Acces
} }
public String getSearchUrl() { public String getSearchUrl() {
return "computer/"+nodeName; return getUrl();
} }
/** /**
......
...@@ -25,11 +25,7 @@ ...@@ -25,11 +25,7 @@
package hudson.model; package hudson.model;
import com.infradna.tool.bridge_method_injector.WithBridgeMethods; import com.infradna.tool.bridge_method_injector.WithBridgeMethods;
import hudson.Extension; import hudson.*;
import hudson.ExtensionPoint;
import hudson.FilePath;
import hudson.FileSystemProvisioner;
import hudson.Launcher;
import hudson.model.Descriptor.FormException; import hudson.model.Descriptor.FormException;
import hudson.model.Queue.Task; import hudson.model.Queue.Task;
import hudson.model.labels.LabelAtom; import hudson.model.labels.LabelAtom;
...@@ -103,7 +99,11 @@ public abstract class Node extends AbstractModelObject implements Reconfigurable ...@@ -103,7 +99,11 @@ public abstract class Node extends AbstractModelObject implements Reconfigurable
} }
public String getSearchUrl() { public String getSearchUrl() {
return "computer/"+getNodeName(); Computer c = toComputer();
if (c != null) {
return c.getUrl();
}
return "computer/" + Util.rawEncode(getNodeName());
} }
public boolean isHoldOffLaunchUntilSave() { public boolean isHoldOffLaunchUntilSave() {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册