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>
[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.
Add logging to PeepholePermalink's RunListener
Minor improvements in Jenkins Node-related classes.
The change adds some missing null checks

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
Added missing null checks for Computer::getNode(), SlaveComputer::getNode() and AbstractBuild::getCurrentNode()

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>

Conflicts:
	core/src/main/java/hudson/model/AbstractBuild.java
[nodes handling] - Fixed code according to comments from @jglick

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>

Conflicts:
	core/src/main/java/hudson/model/Job.java
[node null checks] - Throw the HTTP "Not found exception"

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
Annotated hudson.model.Build and hudson.model.Run, minor fixes in Javadoc

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
Merge pull request #1264 from synopsys-arc-oss/build_classes_refactoring

Annotated hudson.model.Build and hudson.model.Run, minor fixes in Javadoc
Merge pull request #1246 from daniel-beck/Peephole-RunListener-Logging

Add logging to PeepholePermalink's RunListener
Merge pull request #1223 from synopsys-arc-oss/hudson_util_annotations

Annotate hudson.Util methods by @CheckForNull and @Nonnull
getTransientActions should defend against null members even when assertions are disabled.
Cf.: https://github.com/jenkinsci/remote-terminal-access-plugin/commit/db24e2126b649689652ac8ddb100f3ef6680a422
Fixed node handling methods in order to comply with https://github.com/jenkinsci/jenkins/commit/3f8fc4e2ec5b1b421e1551a2a2fc2a284be330d1

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
Merge pull request #1213 from synopsys-arc-oss/node_classes_improvements

[READY] Additional null checks for node access methods.
Merge pull request #1259 from daniel-beck/JENKINS-16827

[FIX JENKINS-16827] Don't try to guess the build number
Merge pull request #1266 from synopsys-arc-oss/refactoring_security_classes

Added annotations to kernel security classes.
Integrating a new version that supports multiple issue trackers
[FIXED JENKINS-23339] - Introduce the validated Jenkins::getActiveInstance() method

Currently, the jenkins.model.Jenkins::getInstance() method is marked as @CheckForNull, but the most of Jenkins code does not actually check the return value. It leads to tons of static analysis errors, hence it is hard to analyze the code.

This change:
* Introduces new @Nonnull jenkins.model.Jenkins::getActiveInstance() method
* Converts all unchecked calls within the core to the new method call

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>

Conflicts:
	core/src/main/java/hudson/model/Run.java
	core/src/main/java/hudson/tasks/BuildTrigger.java