提交 38024d99 编写于 作者: K kohsuke

modified to suggest a likely name.


git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@1161 71c3de6d-444a-0410-be80-ed276b4c234a
上级 a84b6acc
......@@ -2,6 +2,7 @@ package hudson.model;
import hudson.FilePath;
import hudson.Launcher;
import hudson.util.EditDistance;
import hudson.model.Descriptor.FormException;
import hudson.model.Fingerprint.RangeSet;
import hudson.model.RunMap.Constructor;
......@@ -728,6 +729,19 @@ public class Project extends Job<Project,Build> {
return r;
}
/**
* Finds a {@link Project} that has the name closest to the given name.
*/
public static Project findNearest(String name) {
List<Project> projects = Hudson.getInstance().getProjects();
String[] names = new String[projects.size()];
for( int i=0; i<projects.size(); i++ )
names[i] = projects.get(i).getName();
String nearest = EditDistance.findNearest(name, names);
return (Project)Hudson.getInstance().getJob(nearest);
}
private static final Comparator<Integer> REVERSE_INTEGER_COMPARATOR = new Comparator<Integer>() {
public int compare(Integer o1, Integer o2) {
return o2-o1;
......
......@@ -123,7 +123,8 @@ public class BuildTrigger extends Publisher {
String projectName = tokens.nextToken().trim();
Job job = Hudson.getInstance().getJob(projectName);
if(job==null) {
error("No such project: "+projectName);
error("No such project '"+projectName+"'. Did you mean '"+
Project.findNearest(projectName).getName()+"'?");
return;
}
if(!(job instanceof Project)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册