提交 51e2cdc4 编写于 作者: J Joseph Petersen 提交者: Oleg Nenashev

[JENKINS-57121] - make list view JCasC compliant (#3994)

* make list view JCasC complianant

* setRecurse @DataBoundSetter

* Set and synchronized jobNames

* description databound setter for view
上级 fdcaef37
......@@ -124,6 +124,11 @@ public class ListView extends View implements DirectlyModifiableView {
this.columns.replaceBy(columns);
}
@DataBoundSetter
public void setJobFilters(List<ViewJobFilter> jobFilters) throws IOException {
this.jobFilters.replaceBy(jobFilters);
}
private Object readResolve() {
if(includeRegex!=null) {
try {
......@@ -171,6 +176,9 @@ public class ListView extends View implements DirectlyModifiableView {
return columns;
}
public Set<String> getJobNames() {
return Collections.unmodifiableSet(jobNames);
}
/**
* Returns a read-only view of all {@link Job}s in this view.
......@@ -320,14 +328,15 @@ public class ListView extends View implements DirectlyModifiableView {
public String getIncludeRegex() {
return includeRegex;
}
public boolean isRecurse() {
return recurse;
}
/**
* @since 1.568
*/
@DataBoundSetter
public void setRecurse(boolean recurse) {
this.recurse = recurse;
}
......@@ -462,7 +471,7 @@ public class ListView extends View implements DirectlyModifiableView {
columns = new DescribableList<>(this);
}
columns.rebuildHetero(req, json, ListViewColumn.all(), "columns");
if (jobFilters == null) {
jobFilters = new DescribableList<>(this);
}
......@@ -473,6 +482,7 @@ public class ListView extends View implements DirectlyModifiableView {
}
/** @since 1.526 */
@DataBoundSetter
public void setIncludeRegex(String includeRegex) {
this.includeRegex = Util.nullify(includeRegex);
if (this.includeRegex == null)
......@@ -481,6 +491,16 @@ public class ListView extends View implements DirectlyModifiableView {
this.includePattern = Pattern.compile(includeRegex);
}
@DataBoundSetter
public synchronized void setJobNames(Set<String> jobNames) {
this.jobNames = new TreeSet<>(jobNames);
}
@DataBoundSetter
public void setStatusFilter(Boolean statusFilter) {
this.statusFilter = statusFilter;
}
@Extension @Symbol("list")
public static class DescriptorImpl extends ViewDescriptor {
@Override
......
......@@ -76,6 +76,7 @@ import org.apache.tools.ant.filters.StringInputStream;
import org.jenkins.ui.icon.Icon;
import org.jenkins.ui.icon.IconSet;
import org.kohsuke.accmod.restrictions.DoNotUse;
import org.kohsuke.stapler.DataBoundSetter;
import org.kohsuke.stapler.HttpResponse;
import org.kohsuke.stapler.HttpResponses;
import org.kohsuke.stapler.Stapler;
......@@ -292,7 +293,12 @@ public abstract class View extends AbstractModelObject implements AccessControll
public String getDescription() {
return description;
}
@DataBoundSetter
public void setDescription(String description) {
this.description = description;
}
/**
* Gets the view properties configured for this view.
* @since 1.406
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册