From 86e14ddffc5e306a62514caca023732f4e62d824 Mon Sep 17 00:00:00 2001 From: Stephen Connolly Date: Fri, 29 Jul 2016 13:18:20 +0100 Subject: [PATCH] Noting merge of JENKINS-37032, also fixing @since FIXME tags --- changelog.html | 5 ++++- core/src/main/java/hudson/PluginManager.java | 2 +- .../main/java/hudson/TcpSlaveAgentListener.java | 8 ++------ .../hudson/model/DescriptorVisibilityFilter.java | 2 +- core/src/main/java/hudson/model/Fingerprint.java | 2 +- core/src/main/java/jenkins/AgentProtocol.java | 6 +++--- core/src/main/java/jenkins/model/Jenkins.java | 15 +++++++++------ .../jenkins/slaves/JnlpSlaveAgentProtocol3.java | 5 +---- .../main/java/jenkins/util/SystemProperties.java | 2 +- 9 files changed, 23 insertions(+), 24 deletions(-) diff --git a/changelog.html b/changelog.html index 802d6d1345..61efd81fec 100644 --- a/changelog.html +++ b/changelog.html @@ -67,7 +67,10 @@ Upcoming changes (issue 36996)
  • If an older version of a detached plugin is already installed it does not get upgraded - (issue 37041) + (issue 37041) +
  • + Allow admins to control the enabled agent protocols on their instance from the global security settings screen. + (issue 37032)
  • diff --git a/core/src/main/java/hudson/PluginManager.java b/core/src/main/java/hudson/PluginManager.java index de0cb06b2a..92416858e7 100644 --- a/core/src/main/java/hudson/PluginManager.java +++ b/core/src/main/java/hudson/PluginManager.java @@ -1298,7 +1298,7 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas * the plugin will only take effect after the reboot. * See {@link UpdateCenter#isRestartRequiredForCompletion()} * @return The install job list. - * @since FIXME + * @since 2.0 */ @Restricted(NoExternalUse.class) public List> install(@Nonnull Collection plugins, boolean dynamicLoad) { diff --git a/core/src/main/java/hudson/TcpSlaveAgentListener.java b/core/src/main/java/hudson/TcpSlaveAgentListener.java index 238dd51296..c01f711406 100644 --- a/core/src/main/java/hudson/TcpSlaveAgentListener.java +++ b/core/src/main/java/hudson/TcpSlaveAgentListener.java @@ -126,7 +126,7 @@ public final class TcpSlaveAgentListener extends Thread { * clients can avoid creating additional work for the server attempting to connect with unsupported protocols. * * @return a comma separated list of the enabled {@link AgentProtocol#getName()} implementations - * @since FIXME + * @since 2.16 */ public String getAgentProtocolNames() { return StringUtils.join(Jenkins.getInstance().getAgentProtocols(), ", "); @@ -262,11 +262,7 @@ public final class TcpSlaveAgentListener extends Thread { } /** - * Allow essential {@link AgentProtocol} implementations (basically {@link PingAgentProtocol}) - * to be always enabled. - * - * @return {@code true} if the protocol can never be disabled. - * @since FIXME + * {@inheritDoc} */ @Override public boolean isRequired() { diff --git a/core/src/main/java/hudson/model/DescriptorVisibilityFilter.java b/core/src/main/java/hudson/model/DescriptorVisibilityFilter.java index 838e3a0caf..f092a8bb10 100644 --- a/core/src/main/java/hudson/model/DescriptorVisibilityFilter.java +++ b/core/src/main/java/hudson/model/DescriptorVisibilityFilter.java @@ -35,7 +35,7 @@ public abstract class DescriptorVisibilityFilter implements ExtensionPoint { * @return true to allow the descriptor to be visible. false to hide it. * If any of the installed {@link DescriptorVisibilityFilter} returns false, * the descriptor is not shown. - * @since FIXME + * @since 2.12 */ public boolean filterType(@Nonnull Class contextClass, @Nonnull Descriptor descriptor) { return true; diff --git a/core/src/main/java/hudson/model/Fingerprint.java b/core/src/main/java/hudson/model/Fingerprint.java index c2ab05a678..2e33bdf2d0 100644 --- a/core/src/main/java/hudson/model/Fingerprint.java +++ b/core/src/main/java/hudson/model/Fingerprint.java @@ -1468,7 +1468,7 @@ public class Fingerprint implements ModelObject, Saveable { * Provides the XStream instance this class is using for serialization. * * @return the XStream instance - * @since FIXME + * @since 1.655 */ @Nonnull public static XStream2 getXStream() { diff --git a/core/src/main/java/jenkins/AgentProtocol.java b/core/src/main/java/jenkins/AgentProtocol.java index a9eca520d7..93140b71c1 100644 --- a/core/src/main/java/jenkins/AgentProtocol.java +++ b/core/src/main/java/jenkins/AgentProtocol.java @@ -37,7 +37,7 @@ public abstract class AgentProtocol implements ExtensionPoint { * adding new protocols and retiring old ones. * * @return {@code true} if the protocol requires explicit opt-in. - * @since FIXME + * @since 2.16 * @see Jenkins#setAgentProtocols(Set) */ public boolean isOptIn() { @@ -48,7 +48,7 @@ public abstract class AgentProtocol implements ExtensionPoint { * to be always enabled. * * @return {@code true} if the protocol can never be disabled. - * @since FIXME + * @since 2.16 */ public boolean isRequired() { return false; @@ -68,7 +68,7 @@ public abstract class AgentProtocol implements ExtensionPoint { * Returns the human readable protocol display name. * * @return the human readable protocol display name. - * @since FIXME + * @since 2.16 */ public String getDisplayName() { return getName(); diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index 22492d89eb..83e3184894 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -602,7 +602,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * The TCP agent protocols that are explicitly disabled (we store the disabled ones so that newer protocols * are enabled by default). Will be {@code null} instead of empty to simplify XML format. * - * @since FIXME + * @since 2.16 */ @CheckForNull private List disabledAgentProtocols; @@ -611,15 +611,18 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * The TCP agent protocols that are {@link AgentProtocol#isOptIn()} and explicitly enabled. * Will be {@code null} instead of empty to simplify XML format. * - * @since FIXME + * @since 2.16 */ @CheckForNull private List enabledAgentProtocols; /** - * The TCP agent protocols that are enabled. Built from {@link #disabledAgentProtocols}. + * The TCP agent protocols that are enabled. Built from {@link #disabledAgentProtocols} and + * {@link #enabledAgentProtocols}. * - * @since FIXME + * @since 2.16 + * @see #setAgentProtocols(Set) + * @see #getAgentProtocols() */ private transient Set agentProtocols; @@ -1089,7 +1092,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * Returns the enabled agent protocols. * * @return the enabled agent protocols. - * @since FIXME + * @since 2.16 */ public Set getAgentProtocols() { if (agentProtocols == null) { @@ -1120,7 +1123,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * Sets the enabled agent protocols. * * @param protocols the enabled agent protocols. - * @since FIXME + * @since 2.16 */ public void setAgentProtocols(Set protocols) { Set disabled = new TreeSet<>(); diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java index 5086d9191a..e1618aa719 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java @@ -39,10 +39,7 @@ public class JnlpSlaveAgentProtocol3 extends AgentProtocol { NioChannelSelector hub; /** - * Allow experimental {@link AgentProtocol} implementations to declare being opt-in. - * - * @return {@code true} if the protocol requires explicit opt-in. - * @since FIXME + * {@inheritDoc} */ @Override public boolean isOptIn() { diff --git a/core/src/main/java/jenkins/util/SystemProperties.java b/core/src/main/java/jenkins/util/SystemProperties.java index afdda622b4..b90f23781c 100644 --- a/core/src/main/java/jenkins/util/SystemProperties.java +++ b/core/src/main/java/jenkins/util/SystemProperties.java @@ -212,7 +212,7 @@ public class SystemProperties implements ServletContextListener { * * @param name the system property name. * @return {@link Boolean#TRUE}, {@link Boolean#FALSE} or {@code null} - * @since FIXME + * @since 2.16 */ @CheckForNull public static Boolean optBoolean(String name) {