Annotate hudson.Util methods.

The change adds annotations for all methods inside the class. The initial idea - enforce checks of symlink methods to prevent NPEs on Windows platforms.

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
Fixed annotations in hudson/Util.java according to the discussion with @jglick and @kutzi

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
Sketching SCM based on Job/Run.
Merge branch 'master' into SCM-Job
Fixing method compatibility checks.
Merge branch 'master' into SCM-Job
Need to retain original signature of _for(AbstractProject) for binary compatibility.
Trying to make it possible for a non-AbstractProject to use SCMTrigger.
Expanded SCMTriggerItem signature; trying to fix multiple-scms integration.
Use TaskListener rather than BuildListener for SCM methods.
Permit changelog generation to be skipped.
Allow changelogs to work with Run.
SCMListener should also work with Run.
A good time to get rid of deprecated return value from SCM.checkout.
Added SCMListener.onCheckout.
Also fixed compilation error from previous change.
Note.
Modernizing SCMListener registration.
[FIX JENKINS-16827] Don't try to guess the build number

The confusion resulting from a wrongly guessed build number isn't
worth the minimal use this information provides.
[FIXED JENKINS-19454] - Added DecoratedLauncher implementation to the core.
This launcher Allows subclasses to only implement methods they want to override.
Originally, this launcher has been implemented in Custom Tools Plugin, but there are many duplicates in other plugins => it would be useful to have it in Jenkins core.

Resolves https://issues.jenkins-ci.org/browse/JENKINS-19454

Signed-off-by: Oleg Nenashev <nenashev@synopsys.com>
[FIXED JENKINS-20559] - ProcStarter: Check for null before cloning of environment variables list

Resolves https://issues.jenkins-ci.org/browse/JENKINS-20559
BTW, I also need to add some tests to "Test Harness" in order to improve coverage of nested operations.
These test require a fix for https://issues.jenkins-ci.org/browse/JENKINS-19454

Signed-off-by: Oleg Nenashev <nenashev@synopsys.com>