/*
* The MIT License
*
* Copyright (c) 2011, Oracle Corporation, Anton Kozak, Nikita Levyankov
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
package hudson.model;
import hudson.Functions;
import hudson.model.Descriptor.FormException;
import hudson.tasks.BuildStep;
import hudson.tasks.BuildStepDescriptor;
import hudson.tasks.BuildWrapper;
import hudson.tasks.BuildWrappers;
import hudson.tasks.Builder;
import hudson.tasks.Publisher;
import hudson.triggers.Trigger;
import hudson.util.CascadingUtil;
import hudson.util.DescribableList;
import hudson.util.DescribableListUtil;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import net.sf.json.JSONObject;
import org.hudsonci.api.model.IBaseBuildableProject;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
/**
* Base buildable project.
*
* @author Anton Kozak.
*/
public abstract class BaseBuildableProject
,B extends AbstractBuild
>
extends AbstractProject
implements Saveable, BuildableItemWithBuildWrappers, IBaseBuildableProject {
public static final String BUILDERS_PROPERTY_NAME = "builders";
/**
* List of active {@link Builder}s configured for this project.
*
* @deprecated as of 2.2.0
* don't use this field directly, logic was moved to {@link org.hudsonci.api.model.IProjectProperty}.
* Use getter/setter for accessing to this field.
*/
@Deprecated
private DescribableList> builders =
new DescribableList>(this);
/**
* List of active {@link Publisher}s configured for this project.
*
* @deprecated as of 2.2.0
* don't use this field directly, logic was moved to {@link org.hudsonci.api.model.IProjectProperty}.
* Use getter/setter for accessing to this field.
*/
@Deprecated
private DescribableList> publishers =
new DescribableList>(this);
/**
* List of active {@link BuildWrapper}s configured for this project.
*
* @deprecated as of 2.2.0
* don't use this field directly, logic was moved to {@link org.hudsonci.api.model.IProjectProperty}.
* Use getter/setter for accessing to this field.
*/
@Deprecated
private DescribableList> buildWrappers =
new DescribableList>(this);
/**
* Creates a new project.
* @param parent parent {@link ItemGroup}.
* @param name the name of the project.
*/
public BaseBuildableProject(ItemGroup parent, String name) {
super(parent, name);
}
@Override
public void onLoad(ItemGroup extends Item> parent, String name) throws IOException {
super.onLoad(parent, name);
getBuildersList().setOwner(this);
getPublishersList().setOwner(this);
getBuildWrappersList().setOwner(this);
}
@Override
protected void buildProjectProperties() throws IOException {
super.buildProjectProperties();
convertBuildersProjectProperty();
convertBuildWrappersProjectProperties();
convertPublishersProperties();
}
protected void buildDependencyGraph(DependencyGraph graph) {
getPublishersList().buildDependencyGraph(this,graph);
getBuildersList().buildDependencyGraph(this,graph);
getBuildWrappersList().buildDependencyGraph(this,graph);
}
@Override
protected void submit( StaplerRequest req, StaplerResponse rsp ) throws IOException, ServletException, FormException {
super.submit(req,rsp);
JSONObject json = req.getSubmittedForm();
buildBuildWrappers(req, json, BuildWrappers.getFor(this));
setBuilders(DescribableListUtil.buildFromHetero(this, req, json, "builder", Builder.all()));
buildPublishers(req, json, BuildStepDescriptor.filter(Publisher.all(), this.getClass()));
}
@Override
@SuppressWarnings("unchecked")
protected List createTransientActions() {
List r = super.createTransientActions();
for (BuildStep step : getBuildersList())
r.addAll(step.getProjectActions(this));
for (BuildStep step : getPublishersList())
r.addAll(step.getProjectActions(this));
for (BuildWrapper step : getBuildWrappersList())
r.addAll(step.getProjectActions(this));
for (Trigger trigger : getTriggersList())
r.addAll(trigger.getProjectActions());
return r;
}
/**
* @inheritDoc
*/
public List getBuilders() {
return getBuildersList().toList();
}
/**
* @inheritDoc
*/
@SuppressWarnings("unchecked")
public DescribableList> getBuildersList() {
return CascadingUtil.getDescribableListProjectProperty(this, BUILDERS_PROPERTY_NAME).getValue();
}
/**
* @inheritDoc
*/
public void setBuilders(DescribableList> builders) {
CascadingUtil.getDescribableListProjectProperty(this, BUILDERS_PROPERTY_NAME).setValue(builders);
}
/**
* @inheritDoc
*/
public Map,Publisher> getPublishers() {
return getPublishersList().toMap();
}
public Publisher getPublisher(Descriptor descriptor) {
return (Publisher) CascadingUtil.getExternalProjectProperty(this, descriptor.getJsonSafeClassName()).getValue();
}
/**
* Returns the list of the publishers available in the hudson.
*
* @return the list of the publishers available in the hudson.
*/
public DescribableList> getPublishersList() {
return DescribableListUtil.convertToDescribableList(Functions.getPublisherDescriptors(this), this);
}
/**
* Adds a new {@link BuildStep} to this {@link Project} and saves the configuration.
*
* @param publisher publisher.
* @throws java.io.IOException exception.
*/
@SuppressWarnings("unchecked")
public void addPublisher(Publisher publisher) throws IOException {
CascadingUtil.getExternalProjectProperty(this,
publisher.getDescriptor().getJsonSafeClassName()).setValue(publisher);
save();
}
/**
* Removes a publisher from this project, if it's active.
*
* @param publisher publisher.
* @throws java.io.IOException exception.
*/
public void removePublisher(Descriptor publisher) throws IOException {
removeProjectProperty(publisher.getJsonSafeClassName());
save();
}
/**
* @inheritDoc
*/
public Map,BuildWrapper> getBuildWrappers() {
return getBuildWrappersList().toMap();
}
/**
* @inheritDoc
*/
public DescribableList> getBuildWrappersList() {
return DescribableListUtil.convertToDescribableList(Functions.getBuildWrapperDescriptors(this), this);
}
/**
* Builds publishers.
*
* @param req {@link StaplerRequest}
* @param json {@link JSONObject}
* @param descriptors list of descriptors.
* @throws hudson.model.Descriptor.FormException if any.
*/
protected void buildPublishers(StaplerRequest req, JSONObject json, List> descriptors)
throws FormException {
CascadingUtil.buildExternalProperties(req, json, descriptors, this);
}
/**
* Builds BuildWrappers.
*
* @param req {@link StaplerRequest}
* @param json {@link JSONObject}
* @param descriptors list of descriptors.
* @throws hudson.model.Descriptor.FormException if any.
*/
protected void buildBuildWrappers(StaplerRequest req, JSONObject json, List> descriptors)
throws FormException {
CascadingUtil.buildExternalProperties(req, json, descriptors, this);
}
protected void convertPublishersProperties() {
if (null != publishers) {
putAllProjectProperties(DescribableListUtil.convertToProjectProperties(publishers, this), false);
publishers = null;
}
}
protected void convertBuildWrappersProjectProperties() {
if (null != buildWrappers) {
putAllProjectProperties(DescribableListUtil.convertToProjectProperties(buildWrappers, this), false);
buildWrappers = null;
}
}
protected void convertBuildersProjectProperty() {
if (null != builders && null == getProperty(BUILDERS_PROPERTY_NAME)) {
setBuilders(builders);
builders = null;
}
}
}
----- Classpath: ---------------------------------------------
bootPath: /space/jdk1.7.0_03/jre/lib/resources.jar:/space/jdk1.7.0_03/jre/lib/rt.jar:/space/jdk1.7.0_03/jre/lib/sunrsasign.jar:/space/jdk1.7.0_03/jre/lib/jsse.jar:/space/jdk1.7.0_03/jre/lib/jce.jar:/space/jdk1.7.0_03/jre/lib/charsets.jar:/space/jdk1.7.0_03/jre/classes:/space/jdk1.7.0_03/jre/lib/ext/sunjce_provider.jar:/space/jdk1.7.0_03/jre/lib/ext/localedata.jar:/space/jdk1.7.0_03/jre/lib/ext/zipfs.jar:/space/jdk1.7.0_03/jre/lib/ext/sunec.jar:/space/jdk1.7.0_03/jre/lib/ext/sunpkcs11.jar:/space/jdk1.7.0_03/jre/lib/ext/dnsns.jar
classPath: /space/tmp/m2repo/org/jvnet/hudson/main/hudson-remoting/2.2.1-SNAPSHOT/hudson-remoting-2.2.1-SNAPSHOT.jar:/space/tmp/m2repo/org/jvnet/hudson/main/hudson-cli/2.2.1-SNAPSHOT/hudson-cli-2.2.1-SNAPSHOT.jar:/space/tmp/m2repo/org/jvnet/hudson/crypto-util/1.0/crypto-util-1.0.jar:/space/tmp/m2repo/net/sf/jtidy/jtidy/r938/jtidy-r938.jar:/space/tmp/m2repo/org/jruby/ext/posix/jna-posix/1.0.3/jna-posix-1.0.3.jar:/space/tmp/m2repo/org/kohsuke/trilead-putty-extension/1.0/trilead-putty-extension-1.0.jar:/space/tmp/m2repo/org/jvnet/hudson/trilead-ssh2/build212-hudson-1/trilead-ssh2-build212-hudson-1.jar:/space/tmp/m2repo/org/kohsuke/stapler/stapler-groovy/1.176/stapler-groovy-1.176.jar:/space/tmp/m2repo/org/kohsuke/stapler/stapler-jelly/1.176/stapler-jelly-1.176.jar:/space/tmp/m2repo/org/kohsuke/stapler/stapler/1.176/stapler-1.176.jar:/space/tmp/m2repo/commons-discovery/commons-discovery/0.4/commons-discovery-0.4.jar:/space/tmp/m2repo/com/google/guava/guava/10.0.1/guava-10.0.1.jar:/space/tmp/m2repo/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar:/space/tmp/m2repo/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar:/space/tmp/m2repo/org/jenkins-ci/commons-jelly/1.1-jenkins-20110627/commons-jelly-1.1-jenkins-20110627.jar:/space/tmp/m2repo/org/jvnet/hudson/commons-jexl/1.1-hudson-20090508/commons-jexl-1.1-hudson-20090508.jar:/space/tmp/m2repo/org/jvnet/hudson/dom4j/dom4j/1.6.1-hudson-3/dom4j-1.6.1-hudson-3.jar:/space/tmp/m2repo/com/infradna/tool/bridge-method-annotation/1.4/bridge-method-annotation-1.4.jar:/space/tmp/m2repo/net/sf/json-lib/json-lib/2.4/json-lib-2.4-jdk15.jar:/space/tmp/m2repo/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6.jar:/space/tmp/m2repo/args4j/args4j/2.0.16/args4j-2.0.16.jar:/space/tmp/m2repo/org/jvnet/hudson/annotation-indexer/1.2/annotation-indexer-1.2.jar:/space/tmp/m2repo/org/jvnet/hudson/task-reactor/1.2/task-reactor-1.2.jar:/space/tmp/m2repo/org/jvnet/localizer/localizer/1.10/localizer-1.10.jar:/space/tmp/m2repo/org/kohsuke/graph-layouter/1.0/graph-layouter-1.0.jar:/space/tmp/m2repo/antlr/antlr/2.7.6/antlr-2.7.6.jar:/space/tmp/m2repo/org/hudsonci/tools/xstream/1.4.1-hudson-2/xstream-1.4.1-hudson-2.jar:/space/tmp/m2repo/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar:/space/tmp/m2repo/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar:/space/tmp/m2repo/jfree/jfreechart/1.0.9/jfreechart-1.0.9.jar:/space/tmp/m2repo/jfree/jcommon/1.0.12/jcommon-1.0.12.jar:/space/tmp/m2repo/org/apache/ant/ant/1.8.2/ant-1.8.2.jar:/space/tmp/m2repo/org/apache/ant/ant-launcher/1.8.2/ant-launcher-1.8.2.jar:/space/tmp/m2repo/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar:/space/tmp/m2repo/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar:/space/tmp/m2repo/org/apache/commons/commons-lang3/3.0.1/commons-lang3-3.0.1.jar:/space/tmp/m2repo/commons-lang/commons-lang/2.5/commons-lang-2.5.jar:/space/tmp/m2repo/commons-digester/commons-digester/1.7/commons-digester-1.7.jar:/space/tmp/m2repo/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar:/space/tmp/m2repo/org/apache/commons/commons-digester3/3.0/commons-digester3-3.0.jar:/space/tmp/m2repo/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0.jar:/space/tmp/m2repo/javax/mail/mail/1.4/mail-1.4.jar:/space/tmp/m2repo/org/jvnet/hudson/activation/1.1.1-hudson-1/activation-1.1.1-hudson-1.jar:/space/tmp/m2repo/jaxen/jaxen/1.1-beta-11/jaxen-1.1-beta-11.jar:/space/tmp/m2repo/commons-jelly/commons-jelly-tags-fmt/1.0/commons-jelly-tags-fmt-1.0.jar:/space/tmp/m2repo/commons-jelly/commons-jelly-tags-xml/1.1/commons-jelly-tags-xml-1.1.jar:/space/tmp/m2repo/org/jvnet/hudson/commons-jelly-tags-define/1.0.1-hudson-20071021/commons-jelly-tags-define-1.0.1-hudson-20071021.jar:/space/tmp/m2repo/org/apache/commons/commons-jexl/2.0.1/commons-jexl-2.0.1.jar:/space/tmp/m2repo/org/acegisecurity/acegi-security/1.0.5/acegi-security-1.0.5.jar:/space/tmp/m2repo/oro/oro/2.0.8/oro-2.0.8.jar:/space/tmp/m2repo/org/codehaus/groovy/groovy-all/1.8.1/groovy-all-1.8.1.jar:/space/tmp/m2repo/org/springframework/spring-web/2.5/spring-web-2.5.jar:/space/tmp/m2repo/org/springframework/spring-beans/2.5/spring-beans-2.5.jar:/space/tmp/m2repo/org/springframework/spring-context/2.5/spring-context-2.5.jar:/space/tmp/m2repo/org/springframework/spring-core/2.5/spring-core-2.5.jar:/space/tmp/m2repo/org/springframework/spring-aop/2.5/spring-aop-2.5.jar:/space/tmp/m2repo/aopalliance/aopalliance/1.0/aopalliance-1.0.jar:/space/tmp/m2repo/org/springframework/spring-dao/2.0.8/spring-dao-2.0.8.jar:/space/tmp/m2repo/org/springframework/spring-jdbc/2.5/spring-jdbc-2.5.jar:/space/tmp/m2repo/org/springframework/spring-tx/2.5/spring-tx-2.5.jar:/space/tmp/m2repo/xpp3/xpp3/1.1.4c/xpp3-1.1.4c.jar:/space/tmp/m2repo/javax/servlet/jstl/1.1.0/jstl-1.1.0.jar:/space/tmp/m2repo/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar:/space/tmp/m2repo/log4j/log4j/1.2.12/log4j-1.2.12.jar:/space/tmp/m2repo/logkit/logkit/2.0/logkit-2.0.jar:/space/tmp/m2repo/avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar:/space/tmp/m2repo/com/sun/xml/txw2/txw2/20070624/txw2-20070624.jar:/space/tmp/m2repo/commons-collections/commons-collections/3.2/commons-collections-3.2.jar:/space/tmp/m2repo/org/jvnet/winp/winp/1.14/winp-1.14.jar:/space/tmp/m2repo/org/jvnet/hudson/memory-monitor/1.3/memory-monitor-1.3.jar:/space/tmp/m2repo/com/octo/captcha/jcaptcha-all/1.0-RC6/jcaptcha-all-1.0-RC6.jar:/space/tmp/m2repo/commons-pool/commons-pool/1.3/commons-pool-1.3.jar:/space/tmp/m2repo/org/codehaus/woodstox/wstx-asl/3.2.7/wstx-asl-3.2.7.jar:/space/tmp/m2repo/stax/stax-api/1.0.1/stax-api-1.0.1.jar:/space/tmp/m2repo/javax/jmdns/jmdns/3.4.0/jmdns-3.4.0.jar:/space/tmp/m2repo/net/java/dev/jna/jna/3.3.0/jna-3.3.0.jar:/space/tmp/m2repo/org/kohsuke/akuma/1.6/akuma-1.6.jar:/space/tmp/m2repo/org/jvnet/libpam4j/libpam4j/1.4/libpam4j-1.4.jar:/space/tmp/m2repo/org/jvnet/libzfs/libzfs/0.5/libzfs-0.5.jar:/space/tmp/m2repo/com/sun/solaris/embedded_su4j/1.1/embedded_su4j-1.1.jar:/space/tmp/m2repo/net/java/sezpoz/sezpoz/1.9/sezpoz-1.9.jar:/space/tmp/m2repo/org/jvnet/hudson/jinterop-wmi/1.0/jinterop-wmi-1.0.jar:/space/tmp/m2repo/org/kohsuke/jinterop/jinterop-proxy/1.1/jinterop-proxy-1.1.jar:/space/tmp/m2repo/org/kohsuke/jinterop/j-interop/2.0.5/j-interop-2.0.5.jar:/space/tmp/m2repo/org/kohsuke/jinterop/j-interopdeps/2.0.5/j-interopdeps-2.0.5.jar:/space/tmp/m2repo/org/jvnet/tiger-types/1.1/tiger-types-1.1.jar:/space/tmp/m2repo/org/jvnet/hudson/windows-remote-command/1.0/windows-remote-command-1.0.jar:/space/tmp/m2repo/org/samba/jcifs/jcifs/1.3.14-kohsuke-1/jcifs-1.3.14-kohsuke-1.jar:/space/tmp/m2repo/org/kohsuke/metainf-services/metainf-services/1.1/metainf-services-1.1.jar:/space/tmp/m2repo/commons-codec/commons-codec/1.4/commons-codec-1.4.jar:/space/tmp/m2repo/asm/asm-commons/2.2.3/asm-commons-2.2.3.jar:/space/tmp/m2repo/asm/asm-tree/2.2.3/asm-tree-2.2.3.jar:/space/tmp/m2repo/asm/asm/2.2.3/asm-2.2.3.jar:/space/tmp/m2repo/org/kohsuke/access-modifier-annotation/1.0/access-modifier-annotation-1.0.jar:/space/tmp/m2repo/jline/jline/0.9.94/jline-0.9.94.jar:/space/tmp/m2repo/org/jvnet/animal-sniffer-annotation/1.0/animal-sniffer-annotation-1.0.jar
sourcePath: /space/src/hudson/main-orig/hudson-core/src/main/java:/space/src/hudson/main-orig/hudson-core/target/generated-sources/localizer:/space/src/hudson/main-orig/hudson-core/target/generated-sources/antlr:/space/src/hudson/main-orig/hudson-core/src/main/resources:/space/src/hudson/main-orig/hudson-core/src/main/resources-filtered
----- Original exception ---------------------------------------------
java.lang.AssertionError: c = hudson.model.AbstractProject tree.sym = hudson.model.AbstractProject tree =
public abstract class AbstractProject, R extends AbstractBuild
> extends Job
implements BuildableItem, IAbstractProject {
public static final String CONCURRENT_BUILD_PROPERTY_NAME;
public static final String CLEAN_WORKSPACE_REQUIRED_PROPERTY_NAME;
public static final String BLOCK_BUILD_WHEN_DOWNSTREAM_BUILDING_PROPERTY_NAME;
public static final String BLOCK_BUILD_WHEN_UPSTREAM_BUILDING_PROPERTY_NAME;
public static final String QUIET_PERIOD_PROPERTY_NAME;
public static final String SCM_CHECKOUT_RETRY_COUNT_PROPERTY_NAME;
public static final String CUSTOM_WORKSPACE_PROPERTY_NAME;
public static final String JDK_PROPERTY_NAME;
public static final String SCM_PROPERTY_NAME;
public static final String HAS_QUIET_PERIOD_PROPERTY_NAME;
public static final String HAS_SCM_CHECKOUT_RETRY_COUNT_PROPERTY_NAME;
public static final String BUILD_TRIGGER_PROPERTY_NAME;
public static final String APPOINTED_NODE_PROPERTY_NAME;
public static final String BASIC_KEY;
public static final String AFFINITY_CHO0SER_KEY;
public static final String SLAVE_KEY;
public static final String ASSIGNED_LABEL_KEY;
@Deprecated()
private volatile SCM scm;
private volatile transient SCMRevisionState pollingBaseline;
protected transient RunMap builds;
@Deprecated()
private volatile Integer quietPeriod;
@Deprecated()
private volatile Integer scmCheckoutRetryCount;
@Deprecated()
private String assignedNode;
@Deprecated()
private Boolean advancedAffinityChooser;
@Deprecated()
private volatile boolean canRoam;
protected volatile boolean disabled;
@Deprecated()
protected volatile boolean blockBuildWhenDownstreamBuilding;
@Deprecated()
protected volatile boolean blockBuildWhenUpstreamBuilding;
@Deprecated()
private volatile String jdk;
@Deprecated()
private transient boolean enableRemoteTrigger;
private volatile BuildAuthorizationToken authToken;
protected List> triggers;
@CopyOnWrite()
protected volatile transient List transientActions;
@Deprecated()
private boolean concurrentBuild;
@Deprecated()
private volatile boolean cleanWorkspaceRequired;
protected AbstractProject(ItemGroup parent, String name);
@Override()
public void onCreatedFromScratch();
@Override()
public void onLoad(ItemGroup extends Item> parent, String name) throws IOException;
@Override()
protected void buildProjectProperties() throws IOException;
void convertBlockBuildWhenUpstreamBuildingProperty() throws IOException;
void convertBlockBuildWhenDownstreamBuildingProperty() throws IOException;
void convertConcurrentBuildProperty() throws IOException;
void convertCleanWorkspaceRequiredProperty() throws IOException;
void convertQuietPeriodProperty() throws IOException;
void convertScmCheckoutRetryCountProperty() throws IOException;
void convertJDKProperty() throws IOException;
void convertScmProperty() throws IOException;
void convertTriggerProperties();
void convertAppointedNode();
@Override()
protected void performDelete() throws IOException, InterruptedException;
@Exported()
public boolean isConcurrentBuild();
public void setConcurrentBuild(boolean b) throws IOException;
public boolean isCleanWorkspaceRequired();
public void setCleanWorkspaceRequired(boolean cleanWorkspaceRequired);
public Label getAssignedLabel();
public String getAssignedLabelString();
public void setAssignedLabel(Label label) throws IOException;
public void setAssignedNode(Node node) throws IOException;
public boolean isAdvancedAffinityChooser();
public void setAdvancedAffinityChooser(boolean b) throws IOException;
@SuppressWarnings(value = "unchecked")
public void setAppointedNode(AppointedNode appointedNode);
public AppointedNode getAppointedNode();
@Override()
public String getPronoun();
public AbstractProject getRootProject();
public final FilePath getWorkspace();
private AbstractBuild getBuildForDeprecatedMethods();
public final FilePath getSomeWorkspace();
public final R getSomeBuildWithWorkspace();
public FilePath getModuleRoot();
public FilePath[] getModuleRoots();
public int getQuietPeriod();
public void setQuietPeriod(Integer seconds) throws IOException;
public int getScmCheckoutRetryCount();
public void setScmCheckoutRetryCount(Integer retryCount);
protected void setScmCheckoutRetryCount(String scmCheckoutRetryCount) throws IOException;
public boolean getHasCustomQuietPeriod();
protected void setQuietPeriod(String seconds) throws IOException;
public boolean hasCustomScmCheckoutRetryCount();
@Override()
public boolean isBuildable();
public boolean isConfigurable();
public boolean blockBuildWhenDownstreamBuilding();
public void setBlockBuildWhenDownstreamBuilding(boolean b) throws IOException;
public boolean blockBuildWhenUpstreamBuilding();
public void setBlockBuildWhenUpstreamBuilding(boolean b) throws IOException;
public boolean isDisabled();
public FormValidation doCheckRetryCount(@QueryParameter()
String value) throws IOException, ServletException;
public void makeDisabled(boolean b) throws IOException;
public void disable() throws IOException;
public void enable() throws IOException;
@Override()
public BallColor getIconColor();
protected void updateTransientActions();
protected List createTransientActions();
public abstract DescribableList> getPublishersList();
@Override()
public void addProperty(JobProperty super P> jobProp) throws IOException;
public List getProminentActions();
@Override()
public void doConfigSubmit(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException, FormException;
public boolean scheduleBuild();
public boolean scheduleBuild(int quietPeriod);
public boolean scheduleBuild(Cause c);
public boolean scheduleBuild(int quietPeriod, Cause c);
public boolean scheduleBuild(int quietPeriod, Cause c, Action... actions);
public Future scheduleBuild2(int quietPeriod, Cause c, Action... actions);
public Future scheduleBuild2(int quietPeriod, Cause c, Collection extends Action> actions);
private List getDefaultParametersValues();
public Future scheduleBuild2(int quietPeriod);
public Future scheduleBuild2(int quietPeriod, Cause c);
public boolean schedulePolling();
@Override()
public boolean isInQueue();
@Override()
public Queue.Item getQueueItem();
public String getJDKName();
public JDK getJDK();
public void setJDK(JDK jdk) throws IOException;
public void setJDK(String jdk);
public BuildAuthorizationToken getAuthToken();
@Override()
public SortedMap _getRuns();
@Override()
public void removeRun(R run);
protected abstract Class getBuildClass();
private transient long lastBuildStartTime;
protected synchronized R newBuild() throws IOException;
private IOException handleInvocationTargetException(InvocationTargetException e);
protected R loadBuild(File dir) throws IOException;
@Override()
public synchronized List getActions();
public Node getLastBuiltOn();
public Object getSameNodeConstraint();
public final Task getOwnerTask();
public boolean isBuildBlocked();
public String getWhyBlocked();
public static class BecauseOfBuildInProgress extends CauseOfBlockage {
private final AbstractBuild, ?> build;
public BecauseOfBuildInProgress(AbstractBuild, ?> build);
@Override()
public String getShortDescription();
}
public static class BecauseOfDownstreamBuildInProgress extends CauseOfBlockage {
public final AbstractProject, ?> up;
public AbstractProject getUp();
public BecauseOfDownstreamBuildInProgress(AbstractProject, ?> up);
@Override()
public String getShortDescription();
}
public static class BecauseOfUpstreamBuildInProgress extends CauseOfBlockage {
public final AbstractProject, ?> up;
public BecauseOfUpstreamBuildInProgress(AbstractProject, ?> up);
public AbstractProject getUp();
@Override()
public String getShortDescription();
}
public CauseOfBlockage getCauseOfBlockage();
protected AbstractProject getBuildingDownstream();
protected AbstractProject getBuildingUpstream();
private boolean isInUnblockedQueue();
public List getSubTasks();
public R createExecutable() throws IOException;
public void checkAbortPermission();
public boolean hasAbortPermission();
public Resource getWorkspaceResource();
public ResourceList getResourceList();
protected Set getResourceActivities();
public boolean checkout(AbstractBuild build, Launcher launcher, BuildListener listener, File changelogFile) throws IOException, InterruptedException;
private void calcPollingBaseline(AbstractBuild build, Launcher launcher, TaskListener listener) throws IOException, InterruptedException;
private SCMRevisionState safeCalcRevisionsFromBuild(AbstractBuild build, Launcher launcher, TaskListener listener) throws IOException, InterruptedException;
public boolean pollSCMChanges(TaskListener listener);
public PollingResult poll(TaskListener listener);
public boolean hasParticipant(User user);
@Exported()
public SCM getScm();
@SuppressWarnings(value = "unchecked")
public void setScm(SCM scm) throws IOException;
@SuppressWarnings(value = "unchecked")
public void addTrigger(Trigger> trigger) throws IOException;
@SuppressWarnings(value = "unchecked")
public void removeTrigger(TriggerDescriptor trigger) throws IOException;
protected final synchronized >void addToList(T item, List collection) throws IOException;
protected final synchronized >void removeFromList(Descriptor item, List collection) throws IOException;
@SuppressWarnings(value = "unchecked")
public synchronized Map getTriggers();
public List> getTriggersList();
public DescribableList, TriggerDescriptor> getTriggerDescribableList();
public T getTrigger(Class clazz);
@SuppressWarnings(value = "unchecked")
public void setTriggers(List> triggerList);
public abstract boolean isFingerprintConfigured();
@Exported()
public final List getDownstreamProjects();
@Exported()
public final List getUpstreamProjects();
public final List getBuildTriggerUpstreamProjects();
public final Set getTransitiveUpstreamProjects();
public final Set getTransitiveDownstreamProjects();
public SortedMap getRelationship(AbstractProject that);
private void checkAndRecord(AbstractProject that, TreeMap r, Collection builds);
protected abstract void buildDependencyGraph(DependencyGraph graph);
@Override()
protected SearchIndexBuilder makeSearchIndex();
@Override()
protected HistoryWidget createHistoryWidget();
public boolean isParameterized();
public void doBuild(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException;
CauseAction getBuildCause(StaplerRequest req);
public int getDelay(StaplerRequest req) throws ServletException;
public void doBuildWithParameters(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException;
public void doPolling(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException;
public void doCancelQueue(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException;
@Override()
protected void submit(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException, FormException;
protected final >List buildDescribable(StaplerRequest req, List extends Descriptor> descriptors, String prefix) throws FormException, ServletException;
protected final >List buildDescribable(StaplerRequest req, List extends Descriptor> descriptors) throws FormException, ServletException;
protected void buildTriggers(StaplerRequest req, JSONObject json, List descriptors) throws FormException;
public DirectoryBrowserSupport doWs(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException, InterruptedException;
public HttpResponse doDoWipeOutWorkspace() throws IOException, ServletException, InterruptedException;
public boolean cleanWorkspace() throws IOException, InterruptedException;
@CLIMethod(name = "disable-job")
public HttpResponse doDisable() throws IOException, ServletException;
@CLIMethod(name = "enable-job")
public HttpResponse doEnable() throws IOException, ServletException;
public void doRssChangelog(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException;
public static abstract class AbstractProjectDescriptor extends TopLevelItemDescriptor {
public AbstractProjectDescriptor();
@Override()
public boolean isApplicable(Descriptor descriptor);
public FormValidation doCheckAssignedLabelString(@QueryParameter()
String value);
public AutoCompletionCandidates doAutoCompleteAssignedLabelString(@QueryParameter()
String value);
}
public static AbstractProject findNearest(String name);
private static final Comparator REVERSE_INTEGER_COMPARATOR;
private static final Logger LOGGER;
public static final Permission ABORT;
@CLIResolver()
public static AbstractProject resolveForCLI(@Argument(required = true, metaVar = "NAME", usage = "Job name")
String name) throws CmdLineException;
}
at com.sun.tools.javac.util.Assert.error(Assert.java:133)
at com.sun.tools.javac.comp.Attr.attribClassBody(Attr.java:3267)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:3246)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:3195)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:3177)
at com.sun.tools.javac.comp.Attr.attrib(Attr.java:3151)
at com.sun.tools.javac.main.JavaCompiler.attribute(JavaCompiler.java:1220)
at com.sun.tools.javac.main.JavaCompiler.attribute(JavaCompiler.java:1195)
at com.sun.tools.javac.api.JavacTaskImpl.analyze(JavacTaskImpl.java:466)
at com.sun.tools.javac.api.JavacTaskImpl.analyze(JavacTaskImpl.java:445)
at org.netbeans.modules.java.source.parsing.JavacParser.moveToPhase(JavacParser.java:592)
at org.netbeans.modules.java.source.parsing.CompilationInfoImpl.toPhase(CompilationInfoImpl.java:385)
at org.netbeans.api.java.source.CompilationController.toPhase(CompilationController.java:109)
at org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin$FindTask.run(JavaWhereUsedQueryPlugin.java:476)
at org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin$FindTask.run(JavaWhereUsedQueryPlugin.java:457)
at org.netbeans.api.java.source.JavaSource$MultiTask.run(JavaSource.java:482)
at org.netbeans.modules.parsing.impl.TaskProcessor.callUserTask(TaskProcessor.java:583)
at org.netbeans.modules.parsing.api.ParserManager$MultiUserTaskAction.run(ParserManager.java:185)
at org.netbeans.modules.parsing.api.ParserManager$MultiUserTaskAction.run(ParserManager.java:158)
at org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:200)
at org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:197)
at org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:168)
at org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:360)
at org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:72)
at org.netbeans.modules.parsing.impl.TaskProcessor.runUserTask(TaskProcessor.java:197)
at org.netbeans.modules.parsing.api.ParserManager.parse(ParserManager.java:104)
at org.netbeans.api.java.source.JavaSource.runUserActionTaskImpl(JavaSource.java:432)
at org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:403)
at org.netbeans.modules.refactoring.java.spi.JavaRefactoringPlugin.processFiles(JavaRefactoringPlugin.java:267)
at org.netbeans.modules.refactoring.java.spi.JavaRefactoringPlugin.queryFiles(JavaRefactoringPlugin.java:251)
at org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.prepare(JavaWhereUsedQueryPlugin.java:362)
at org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare2(AbstractRefactoring.java:426)
at org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare(AbstractRefactoring.java:410)
at org.netbeans.modules.refactoring.api.AbstractRefactoring.prepare(AbstractRefactoring.java:221)
at org.netbeans.modules.refactoring.spi.impl.ParametersPanel$Prepare$2.run(ParametersPanel.java:1044)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1411)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1991)