【发布时间】:2015-02-06 13:24:48
【问题描述】:
【问题讨论】:
【问题讨论】:
好的,经过大量研究和尝试,我找到了答案。
要在 Job/Build REST API 中公开其他数据,TransientActionFactory (http://javadoc.jenkins-ci.org/jenkins/model/TransientActionFactory.html) 需要在键入时使用 AbstractBuild (http://javadoc.jenkins-ci.org/hudson/model/AbstractBuild.html) 进行扩展。
你会有这样的东西:
import hudson.Extension;
import hudson.model.AbstractBuild;
import hudson.model.Action;
import java.util.Collection;
import java.util.Collections;
import jenkins.model.TransientActionFactory;
@Extension
public class MyTransientActionFactory extends TransientActionFactory<AbstractBuild> {
@Override
public Class<AbstractBuild> type() {
return AbstractBuild.class;
}
@Override
public Collection<? extends Action> createFor(AbstractBuild target) {
return Collections.singleton(new MyAction(target));
}
}
这会将 MyAction 添加到 REST API 中显示的 AbstractBuild 操作列表中。
【讨论】: