diff --git a/core/src/main/java/hudson/ExtensionFinder.java b/core/src/main/java/hudson/ExtensionFinder.java index 5c2efcb1c8..f4c0266753 100644 --- a/core/src/main/java/hudson/ExtensionFinder.java +++ b/core/src/main/java/hudson/ExtensionFinder.java @@ -179,8 +179,8 @@ public abstract class ExtensionFinder implements ExtensionPoint { * from here. * *

- * See https://bugs.openjdk.java.net/browse/JDK-4993813 for how to force a class initialization. - * Also see http://kohsuke.org/2010/09/01/deadlock-that-you-cant-avoid/ for how class initialization + * See JDK-4993813 for how to force a class initialization. + * Also see this blog post for how class initialization * can results in a dead lock. */ public void scout(Class extensionType, Hudson hudson) { diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java index 66d67248fc..67e8617eb8 100644 --- a/core/src/main/java/hudson/Functions.java +++ b/core/src/main/java/hudson/Functions.java @@ -1845,7 +1845,7 @@ public class Functions { /** * Escapes the character unsafe for e-mail address. - * See http://en.wikipedia.org/wiki/E-mail_address for the details, + * See the Wikipedia page for the details, * but here the vocabulary is even more restricted. */ public static String toEmailSafeString(String projectName) { diff --git a/core/src/main/java/hudson/StructuredForm.java b/core/src/main/java/hudson/StructuredForm.java index 600da990ae..286e799976 100644 --- a/core/src/main/java/hudson/StructuredForm.java +++ b/core/src/main/java/hudson/StructuredForm.java @@ -33,7 +33,7 @@ import org.kohsuke.stapler.StaplerRequest; /** * Obtains the structured form data from {@link StaplerRequest}. - * See https://www.jenkins.io/doc/developer/forms/structured-form-submission/ + * See the developer documentation. * * @author Kohsuke Kawaguchi */ diff --git a/core/src/main/java/hudson/model/DependencyGraph.java b/core/src/main/java/hudson/model/DependencyGraph.java index 0f0c4110a9..aa9810792a 100644 --- a/core/src/main/java/hudson/model/DependencyGraph.java +++ b/core/src/main/java/hudson/model/DependencyGraph.java @@ -100,7 +100,7 @@ public class DependencyGraph implements Comparator { /** * * - * See https://en.wikipedia.org/wiki/Tarjan's_strongly_connected_components_algorithm + * See Tarjan's strongly connected components algorithm */ private void topologicalDagSort() { DirectedGraph g = new DirectedGraph<>() { diff --git a/core/src/main/java/hudson/model/Descriptor.java b/core/src/main/java/hudson/model/Descriptor.java index f4f16466b5..716b730315 100644 --- a/core/src/main/java/hudson/model/Descriptor.java +++ b/core/src/main/java/hudson/model/Descriptor.java @@ -568,7 +568,7 @@ public abstract class Descriptor> implements Saveable, * Always non-null (see note above.) This object includes represents the entire submission. * @param formData * The JSON object that captures the configuration data for this {@link Descriptor}. - * See https://www.jenkins.io/doc/developer/forms/structured-form-submission/ + * See the developer documentation. * Always non-null. * * @throws FormException @@ -820,7 +820,7 @@ public abstract class Descriptor> implements Saveable, * * @param json * The JSON object that captures the configuration data for this {@link Descriptor}. - * See https://www.jenkins.io/doc/developer/forms/structured-form-submission/ + * See the developer documentation. * @return false * to keep the client in the same config page. */ diff --git a/core/src/main/java/hudson/os/WindowsUtil.java b/core/src/main/java/hudson/os/WindowsUtil.java index 291d87a085..1299024285 100644 --- a/core/src/main/java/hudson/os/WindowsUtil.java +++ b/core/src/main/java/hudson/os/WindowsUtil.java @@ -36,7 +36,7 @@ import org.apache.commons.io.IOUtils; /** * Utilities for the Windows Platform. * Adapted from: - * https://blogs.msdn.microsoft.com/twistylittlepassagesallalike/2011/04/23/everyone-quotes-command-line-arguments-the-wrong-way/ + * Everyone quotes command line arguments the wrong way * * @since 2.183 */ diff --git a/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java b/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java index 72d578cce6..d25b01c020 100644 --- a/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java +++ b/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java @@ -908,7 +908,7 @@ public class HudsonPrivateSecurityRealm extends AbstractPasswordBasedSecurityRea /** * Returns true if the supplied hash looks like a bcrypt encoded hash value, based off of the - * implementation defined in jBCrypt and: https://en.wikipedia.org/wiki/Bcrypt. + * implementation defined in jBCrypt and the Wikipedia page. * */ public boolean isHashValid(String hash) { diff --git a/core/src/main/java/hudson/tools/DownloadFromUrlInstaller.java b/core/src/main/java/hudson/tools/DownloadFromUrlInstaller.java index 8df8f6c491..5d7f4c0c02 100644 --- a/core/src/main/java/hudson/tools/DownloadFromUrlInstaller.java +++ b/core/src/main/java/hudson/tools/DownloadFromUrlInstaller.java @@ -103,7 +103,7 @@ public abstract class DownloadFromUrlInstaller extends ToolInstaller { * @param root * The directory that contains the extracted archive. This directory contains nothing but the * extracted archive. For example, if the user installed - * https://archive.apache.org/dist/ant/binaries/jakarta-ant-1.1.zip , this directory would contain + * jakarta-ant-1.1.zip , this directory would contain * a single directory "jakarta-ant". * * @return diff --git a/core/src/main/java/hudson/util/ConsistentHash.java b/core/src/main/java/hudson/util/ConsistentHash.java index 0cc9533f6e..25ddc3b751 100644 --- a/core/src/main/java/hudson/util/ConsistentHash.java +++ b/core/src/main/java/hudson/util/ConsistentHash.java @@ -54,8 +54,8 @@ import java.util.NoSuchElementException; * as increase/decrease of the replicas. * *

- * See http://en.wikipedia.org/wiki/Consistent_hashing for references, and - * http://tom-e-white.com/2007/11/consistent-hashing.html is probably a reasonable depiction. + * See the Wikipedia page for references, and + * this blog post is probably a reasonable depiction. * If we trust his experiments, creating 100 replicas will reduce the stddev to 10% of the mean for 10 nodes. * * @author Kohsuke Kawaguchi diff --git a/core/src/main/java/hudson/util/HeapSpaceStringConverter.java b/core/src/main/java/hudson/util/HeapSpaceStringConverter.java index 535d9bd535..31fe944bd9 100644 --- a/core/src/main/java/hudson/util/HeapSpaceStringConverter.java +++ b/core/src/main/java/hudson/util/HeapSpaceStringConverter.java @@ -34,7 +34,7 @@ import com.thoughtworks.xstream.converters.basic.StringConverter; * * Since XStream 1.3 it use a WeakHashMap cache to always use the same String instances, but * this has also major problems with a single long living XStream instance (as we have in Jenkins) - * See https://x-stream.github.io/jira/604/ + * See XSTR-604. * *

* Use this to avoid that (instead those strings will diff --git a/core/src/main/java/hudson/util/Secret.java b/core/src/main/java/hudson/util/Secret.java index 67fb87b5cf..d1e2d362e2 100644 --- a/core/src/main/java/hudson/util/Secret.java +++ b/core/src/main/java/hudson/util/Secret.java @@ -229,7 +229,7 @@ public final class Secret implements Serializable { } /** - * Workaround for JENKINS-6459 / http://java.net/jira/browse/GLASSFISH-11862 + * Workaround for JENKINS-6459 / GLASSFISH-11862 * This method uses specific provider selected via hudson.util.Secret.provider system property * to provide a workaround for the above bug where default provide gives an unusable instance. * (Glassfish Enterprise users should set value of this property to "SunJCE") @@ -286,7 +286,7 @@ public final class Secret implements Serializable { } /** - * Workaround for JENKINS-6459 / http://java.net/jira/browse/GLASSFISH-11862 + * Workaround for JENKINS-6459 / GLASSFISH-11862 * @see #getCipher(String) */ private static final String PROVIDER = SystemProperties.getString(Secret.class.getName() + ".provider"); diff --git a/core/src/main/java/hudson/util/TagCloud.java b/core/src/main/java/hudson/util/TagCloud.java index 07d237ef89..c97e4cf49e 100644 --- a/core/src/main/java/hudson/util/TagCloud.java +++ b/core/src/main/java/hudson/util/TagCloud.java @@ -29,7 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * Represents an order-preserving tag cloud (http://en.wikipedia.org/wiki/Tag_cloud) + * Represents an order-preserving tag cloud * where each keyword gets a weight and displayed according to their weight. * * TODO: define a view on its own. diff --git a/core/src/main/java/hudson/util/TextFile.java b/core/src/main/java/hudson/util/TextFile.java index 7baad2f748..89ab731c6a 100644 --- a/core/src/main/java/hudson/util/TextFile.java +++ b/core/src/main/java/hudson/util/TextFile.java @@ -135,7 +135,7 @@ public class TextFile { * necessary chunk. * *

- * Some multi-byte encoding, such as Shift-JIS (http://en.wikipedia.org/wiki/Shift_JIS) doesn't + * Some multi-byte encoding, such as Shift-JIS, doesn't * allow the first byte and the second byte of a single char to be unambiguously identified, * so it is possible that we end up decoding incorrectly if we start reading in the middle of a multi-byte * character. All the CJK multi-byte encodings that I know of are self-correcting; as they are ASCII-compatible, diff --git a/core/src/main/java/hudson/util/XStream2.java b/core/src/main/java/hudson/util/XStream2.java index d44ac8a8af..4e6a9f035d 100644 --- a/core/src/main/java/hudson/util/XStream2.java +++ b/core/src/main/java/hudson/util/XStream2.java @@ -96,7 +96,7 @@ public class XStream2 extends XStream { private static final Logger LOGGER = Logger.getLogger(XStream2.class.getName()); /** * Determine what is the value (in seconds) of the "collectionUpdateLimit" added by XStream - * to protect against http://x-stream.github.io/CVE-2021-43859.html. + * to protect against CVE-2021-43859. * It corresponds to the accumulated timeout when adding an item to a collection. * * Default: 5 seconds (in contrary to XStream default to 20 which is a bit too tolerant) diff --git a/core/src/main/java/hudson/util/jna/Advapi32.java b/core/src/main/java/hudson/util/jna/Advapi32.java index a32afeb732..22433e0e91 100644 --- a/core/src/main/java/hudson/util/jna/Advapi32.java +++ b/core/src/main/java/hudson/util/jna/Advapi32.java @@ -41,7 +41,7 @@ public interface Advapi32 extends StdCallLibrary { * Retrieves the name of the user associated with the current thread. * *

- * See http://msdn.microsoft.com/en-us/library/ms724432(VS.85).aspx + * See GetUserNameA function (winbase.h) */ boolean GetUserName(char[] buffer, IntByReference lpnSize); diff --git a/core/src/main/java/hudson/util/jna/GNUCLibrary.java b/core/src/main/java/hudson/util/jna/GNUCLibrary.java index afa2729d6e..d9348e4f2a 100644 --- a/core/src/main/java/hudson/util/jna/GNUCLibrary.java +++ b/core/src/main/java/hudson/util/jna/GNUCLibrary.java @@ -128,7 +128,7 @@ public interface GNUCLibrary extends Library { /** * Creates a symlink. * - * See http://linux.die.net/man/3/symlink + * See symlink(3) */ int symlink(String oldname, String newname); diff --git a/core/src/main/java/hudson/util/jna/Kernel32.java b/core/src/main/java/hudson/util/jna/Kernel32.java index 97473873a2..f1b8595a8d 100644 --- a/core/src/main/java/hudson/util/jna/Kernel32.java +++ b/core/src/main/java/hudson/util/jna/Kernel32.java @@ -38,7 +38,7 @@ public interface Kernel32 extends StdCallLibrary { Kernel32 INSTANCE = Kernel32Utils.load(); /** - * See http://msdn.microsoft.com/en-us/library/aa365240(VS.85).aspx + * See MoveFileExA function (winbase.h) */ boolean MoveFileExA(String existingFileName, String newFileName, int flags); diff --git a/core/src/main/java/hudson/util/jna/Kernel32Utils.java b/core/src/main/java/hudson/util/jna/Kernel32Utils.java index c6df382d41..f8ed39bf92 100644 --- a/core/src/main/java/hudson/util/jna/Kernel32Utils.java +++ b/core/src/main/java/hudson/util/jna/Kernel32Utils.java @@ -91,7 +91,7 @@ public class Kernel32Utils { * If absolute, it's absolute. * @throws UnsatisfiedLinkError * If the function is not exported by kernel32. - * See http://msdn.microsoft.com/en-us/library/windows/desktop/aa363866(v=vs.85).aspx + * See CreateSymbolicLinkA function (winbase.h) * for compatibility info. * @deprecated Use {@link Util#createSymlink} instead. */ diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index 25239fcd16..bbbcf7fe25 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -1487,7 +1487,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * *

* This form of identifier is weak in that it can be impersonated by others. See - * https://github.com/jenkinsci/instance-identity-plugin for more modern form of instance ID + * the Instance Identity plugin for more modern form of instance ID * that can be challenged and verified. * * @since 1.498 @@ -5544,7 +5544,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * * The default value is true. * - * For detailed documentation: https://docs.microsoft.com/en-us/troubleshoot/windows-client/shell-experience/file-folder-name-whitespace-characters + * For detailed documentation: Support for Whitespace characters in File and Folder names for Windows * @see #checkGoodName(String) */ @Restricted(NoExternalUse.class) diff --git a/core/src/main/java/jenkins/security/HMACConfidentialKey.java b/core/src/main/java/jenkins/security/HMACConfidentialKey.java index de9d0fe7f6..9faf2f629f 100644 --- a/core/src/main/java/jenkins/security/HMACConfidentialKey.java +++ b/core/src/main/java/jenkins/security/HMACConfidentialKey.java @@ -17,7 +17,7 @@ import javax.crypto.spec.SecretKeySpec; * *

* This provides more secure version of it by using HMAC. - * See http://rdist.root.org/2009/10/29/stop-using-unsafe-keyed-hashes-use-hmac/ for background. + * See this blog post for background. * This implementation also never leaks the secret value to outside, so it makes it impossible * for the careless caller to misuse the key (thus protecting ourselves from our own stupidity!) * diff --git a/core/src/main/java/jenkins/telemetry/Telemetry.java b/core/src/main/java/jenkins/telemetry/Telemetry.java index a7165df977..7780b5642f 100644 --- a/core/src/main/java/jenkins/telemetry/Telemetry.java +++ b/core/src/main/java/jenkins/telemetry/Telemetry.java @@ -81,7 +81,7 @@ public abstract class Telemetry implements ExtensionPoint { * * Good IDs are globally unique and human readable (i.e. no UUIDs). * - * For a periodically updated list of all public implementations, see https://www.jenkins.io/doc/developer/extensions/jenkins-core/#telemetry + * For a periodically updated list of all public implementations, see the developer documentation. * * @return ID of the collector, never null or empty */ diff --git a/core/src/main/java/jenkins/util/DirectedGraph.java b/core/src/main/java/jenkins/util/DirectedGraph.java index ab1ada4422..8e836d8837 100644 --- a/core/src/main/java/jenkins/util/DirectedGraph.java +++ b/core/src/main/java/jenkins/util/DirectedGraph.java @@ -93,7 +93,7 @@ public abstract class DirectedGraph { * Performs the Tarjan's algorithm and computes strongly-connected components from the * sink to source order. * - * See https://en.wikipedia.org/wiki/Tarjan's_strongly_connected_components_algorithm + * See the Wikipedia page. */ public List> getStronglyConnectedComponents() { final Map nodes = new HashMap<>(); diff --git a/core/src/main/java/jenkins/util/java/JavaUtils.java b/core/src/main/java/jenkins/util/java/JavaUtils.java index ef0618671a..55ce4a1f7f 100644 --- a/core/src/main/java/jenkins/util/java/JavaUtils.java +++ b/core/src/main/java/jenkins/util/java/JavaUtils.java @@ -67,7 +67,7 @@ public class JavaUtils { /** * Returns the JVM's current version as a {@link String}. - * See https://openjdk.java.net/jeps/223 for the expected format. + * See JEP 223 for the expected format. *