diff --git a/core/src/main/java/hudson/DescriptorExtensionList.java b/core/src/main/java/hudson/DescriptorExtensionList.java index dc8ed356c6..bd5f6c698d 100644 --- a/core/src/main/java/hudson/DescriptorExtensionList.java +++ b/core/src/main/java/hudson/DescriptorExtensionList.java @@ -29,7 +29,6 @@ import hudson.model.Hudson; import hudson.model.ViewDescriptor; import hudson.model.Descriptor.FormException; import hudson.util.AdaptedIterator; -import hudson.util.CopyOnWriteList; import hudson.util.Memoizer; import hudson.util.Iterators.FlattenIterator; import hudson.slaves.NodeDescriptor; @@ -68,11 +67,13 @@ public class DescriptorExtensionList, D extends Descrip /** * Creates a new instance. */ - public static ,D extends Descriptor> - DescriptorExtensionList create(Hudson hudson, Class describableType) { - if(describableType==(Class)Publisher.class) // javac or IntelliJ compiler complains if I don't have this cast - return (DescriptorExtensionList)new DescriptorExtensionListImpl(hudson); - return new DescriptorExtensionList(hudson,describableType); + @SuppressWarnings({"unchecked", "rawtypes"}) // cannot use generic signature because it "overrides" method from ExtensionList + public static /*,D extends Descriptor>*/ + DescriptorExtensionList/**/ create(Hudson hudson, Class/**/ describableType) { + if (describableType == Publisher.class) { + return new DescriptorExtensionListImpl(hudson); + } + return new DescriptorExtensionList/**/(hudson,describableType); } /** diff --git a/core/src/main/java/hudson/FileSystemProvisioner.java b/core/src/main/java/hudson/FileSystemProvisioner.java index 3a88861316..40b28d9c54 100644 --- a/core/src/main/java/hudson/FileSystemProvisioner.java +++ b/core/src/main/java/hudson/FileSystemProvisioner.java @@ -186,7 +186,7 @@ public abstract class FileSystemProvisioner implements ExtensionPoint, Describab * Returns all the registered {@link FileSystemProvisioner} descriptors. */ public static DescriptorExtensionList all() { - return Hudson.getInstance().getDescriptorList(FileSystemProvisioner.class); + return Hudson.getInstance().getDescriptorList(FileSystemProvisioner.class); } /** diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java index 895348c45f..3bae0de743 100644 --- a/core/src/main/java/hudson/Functions.java +++ b/core/src/main/java/hudson/Functions.java @@ -657,7 +657,7 @@ public class Functions { } public static List> getComputerLauncherDescriptors() { - return Hudson.getInstance().getDescriptorList(ComputerLauncher.class); + return Hudson.getInstance().>getDescriptorList(ComputerLauncher.class); } public static List>> getRetentionStrategyDescriptors() { diff --git a/core/src/main/java/hudson/model/Hudson.java b/core/src/main/java/hudson/model/Hudson.java index 5b34cdbffc..b37dc9d230 100644 --- a/core/src/main/java/hudson/model/Hudson.java +++ b/core/src/main/java/hudson/model/Hudson.java @@ -348,7 +348,7 @@ public final class Hudson extends Node implements ItemGroup, Stapl */ private transient final Memoizer descriptorLists = new Memoizer() { public DescriptorExtensionList compute(Class key) { - return DescriptorExtensionList.create(Hudson.this,key); + return (DescriptorExtensionList) DescriptorExtensionList.create(Hudson.this,key); } }; diff --git a/core/src/main/java/hudson/model/Items.java b/core/src/main/java/hudson/model/Items.java index e5ce11e20a..d34d43d63f 100644 --- a/core/src/main/java/hudson/model/Items.java +++ b/core/src/main/java/hudson/model/Items.java @@ -59,7 +59,7 @@ public class Items { * Returns all the registered {@link TopLevelItemDescriptor}s. */ public static DescriptorExtensionList all() { - return Hudson.getInstance().getDescriptorList(TopLevelItem.class); + return Hudson.getInstance().getDescriptorList(TopLevelItem.class); } public static TopLevelItemDescriptor getDescriptor(String fqcn) { diff --git a/core/src/main/java/hudson/model/ListView.java b/core/src/main/java/hudson/model/ListView.java index 687e3c5929..1767ce7c72 100644 --- a/core/src/main/java/hudson/model/ListView.java +++ b/core/src/main/java/hudson/model/ListView.java @@ -52,7 +52,6 @@ import java.util.List; import java.util.TreeSet; import java.util.ArrayList; import java.util.Collections; -import java.util.Iterator; import java.util.SortedSet; import java.util.logging.Level; import java.util.logging.Logger; @@ -240,7 +239,7 @@ public class ListView extends View implements Saveable { if (columns == null) { columns = new DescribableList>(Saveable.NOOP); } - columns.rebuildHetero(req, req.getSubmittedForm(), Hudson.getInstance().getDescriptorList(ListViewColumn.class), "columns"); + columns.rebuildHetero(req, req.getSubmittedForm(), ListViewColumn.all(), "columns"); } @Extension diff --git a/core/src/main/java/hudson/model/ParameterDefinition.java b/core/src/main/java/hudson/model/ParameterDefinition.java index 75d4fb0108..55260ab081 100644 --- a/core/src/main/java/hudson/model/ParameterDefinition.java +++ b/core/src/main/java/hudson/model/ParameterDefinition.java @@ -27,7 +27,6 @@ import hudson.DescriptorExtensionList; import hudson.Extension; import hudson.ExtensionPoint; import hudson.AbortException; -import hudson.cli.BuildCommand; import hudson.cli.CLICommand; import hudson.util.DescriptorList; @@ -178,7 +177,7 @@ public abstract class ParameterDefinition implements * Returns all the registered {@link ParameterDefinition} descriptors. */ public static DescriptorExtensionList all() { - return Hudson.getInstance().getDescriptorList(ParameterDefinition.class); + return Hudson.getInstance().getDescriptorList(ParameterDefinition.class); } /** diff --git a/core/src/main/java/hudson/model/UserProperty.java b/core/src/main/java/hudson/model/UserProperty.java index 2f3f1e4cb5..8b7ddea46d 100644 --- a/core/src/main/java/hudson/model/UserProperty.java +++ b/core/src/main/java/hudson/model/UserProperty.java @@ -71,7 +71,7 @@ public abstract class UserProperty implements Describable, Extensi * Returns all the registered {@link UserPropertyDescriptor}s. */ public static DescriptorExtensionList all() { - return Hudson.getInstance().getDescriptorList(UserProperty.class); + return Hudson.getInstance().getDescriptorList(UserProperty.class); } public UserProperty reconfigure(StaplerRequest req, JSONObject form) throws FormException { diff --git a/core/src/main/java/hudson/model/View.java b/core/src/main/java/hudson/model/View.java index b2e5764c4e..b4400d2dcc 100644 --- a/core/src/main/java/hudson/model/View.java +++ b/core/src/main/java/hudson/model/View.java @@ -649,7 +649,7 @@ public abstract class View extends AbstractModelObject implements AccessControll * Returns all the registered {@link ViewDescriptor}s. */ public static DescriptorExtensionList all() { - return Hudson.getInstance().getDescriptorList(View.class); + return Hudson.getInstance().getDescriptorList(View.class); } public static final Comparator SORTER = new Comparator() { diff --git a/core/src/main/java/hudson/node_monitors/NodeMonitor.java b/core/src/main/java/hudson/node_monitors/NodeMonitor.java index bf6edbc4f9..733d5ee236 100644 --- a/core/src/main/java/hudson/node_monitors/NodeMonitor.java +++ b/core/src/main/java/hudson/node_monitors/NodeMonitor.java @@ -24,11 +24,9 @@ package hudson.node_monitors; import hudson.ExtensionPoint; -import hudson.Functions; import hudson.DescriptorExtensionList; import hudson.Extension; import hudson.tasks.Publisher; -import hudson.scm.RepositoryBrowser; import hudson.model.Computer; import hudson.model.ComputerSet; import hudson.model.Describable; @@ -37,10 +35,7 @@ import hudson.model.Hudson; import hudson.model.Descriptor; import hudson.util.DescriptorList; -import java.util.logging.Level; -import java.util.logging.Logger; import java.util.List; -import java.io.Serializable; import org.kohsuke.stapler.export.Exported; import org.kohsuke.stapler.export.ExportedBean; @@ -146,6 +141,6 @@ public abstract class NodeMonitor implements ExtensionPoint, Describable> all() { - return Hudson.getInstance().getDescriptorList(NodeMonitor.class); + return Hudson.getInstance().>getDescriptorList(NodeMonitor.class); } } diff --git a/core/src/main/java/hudson/scm/SCM.java b/core/src/main/java/hudson/scm/SCM.java index ab98c2cda9..1246036094 100644 --- a/core/src/main/java/hudson/scm/SCM.java +++ b/core/src/main/java/hudson/scm/SCM.java @@ -546,7 +546,7 @@ public abstract class SCM implements Describable, ExtensionPoint { * Returns all the registered {@link SCMDescriptor}s. */ public static DescriptorExtensionList> all() { - return Hudson.getInstance().getDescriptorList(SCM.class); + return Hudson.getInstance().>getDescriptorList(SCM.class); } /** diff --git a/core/src/main/java/hudson/security/AuthorizationStrategy.java b/core/src/main/java/hudson/security/AuthorizationStrategy.java index ea9cab0cce..2a54be5a2f 100644 --- a/core/src/main/java/hudson/security/AuthorizationStrategy.java +++ b/core/src/main/java/hudson/security/AuthorizationStrategy.java @@ -170,7 +170,7 @@ public abstract class AuthorizationStrategy extends AbstractDescribableImpl> all() { - return Hudson.getInstance().getDescriptorList(AuthorizationStrategy.class); + return Hudson.getInstance().>getDescriptorList(AuthorizationStrategy.class); } /** diff --git a/core/src/main/java/hudson/security/SecurityRealm.java b/core/src/main/java/hudson/security/SecurityRealm.java index 3a56a64a8a..a985bad00d 100644 --- a/core/src/main/java/hudson/security/SecurityRealm.java +++ b/core/src/main/java/hudson/security/SecurityRealm.java @@ -498,7 +498,7 @@ public abstract class SecurityRealm extends AbstractDescribableImpl> all() { - return Hudson.getInstance().getDescriptorList(SecurityRealm.class); + return Hudson.getInstance().>getDescriptorList(SecurityRealm.class); } diff --git a/core/src/main/java/hudson/security/csrf/CrumbIssuer.java b/core/src/main/java/hudson/security/csrf/CrumbIssuer.java index 9d936a26f3..fce5b3ce74 100644 --- a/core/src/main/java/hudson/security/csrf/CrumbIssuer.java +++ b/core/src/main/java/hudson/security/csrf/CrumbIssuer.java @@ -146,7 +146,7 @@ public abstract class CrumbIssuer implements Describable, Extension * Returns all the registered {@link CrumbIssuer} descriptors. */ public static DescriptorExtensionList> all() { - return Hudson.getInstance().getDescriptorList(CrumbIssuer.class); + return Hudson.getInstance().>getDescriptorList(CrumbIssuer.class); } public Api getApi() { diff --git a/core/src/main/java/hudson/slaves/Cloud.java b/core/src/main/java/hudson/slaves/Cloud.java index 6d4a8e1476..7d7d1cd7e6 100644 --- a/core/src/main/java/hudson/slaves/Cloud.java +++ b/core/src/main/java/hudson/slaves/Cloud.java @@ -137,7 +137,7 @@ public abstract class Cloud extends AbstractModelObject implements ExtensionPoin * Returns all the registered {@link Cloud} descriptors. */ public static DescriptorExtensionList> all() { - return Hudson.getInstance().getDescriptorList(Cloud.class); + return Hudson.getInstance().>getDescriptorList(Cloud.class); } /** diff --git a/core/src/main/java/hudson/slaves/NodeDescriptor.java b/core/src/main/java/hudson/slaves/NodeDescriptor.java index 2489a32a9c..f044bfedc1 100644 --- a/core/src/main/java/hudson/slaves/NodeDescriptor.java +++ b/core/src/main/java/hudson/slaves/NodeDescriptor.java @@ -29,7 +29,6 @@ import hudson.model.Node; import hudson.model.Hudson; import hudson.util.DescriptorList; import hudson.util.FormValidation; -import hudson.Extension; import hudson.DescriptorExtensionList; import hudson.Util; @@ -87,7 +86,7 @@ public abstract class NodeDescriptor extends Descriptor { * Returns all the registered {@link NodeDescriptor} descriptors. */ public static DescriptorExtensionList all() { - return Hudson.getInstance().getDescriptorList(Node.class); + return Hudson.getInstance().getDescriptorList(Node.class); } /** diff --git a/core/src/main/java/hudson/tasks/BuildWrapper.java b/core/src/main/java/hudson/tasks/BuildWrapper.java index 2220491ecf..75820e8ff8 100644 --- a/core/src/main/java/hudson/tasks/BuildWrapper.java +++ b/core/src/main/java/hudson/tasks/BuildWrapper.java @@ -209,6 +209,6 @@ public abstract class BuildWrapper extends AbstractDescribableImpl // for compatibility we can't use BuildWrapperDescriptor public static DescriptorExtensionList> all() { // use getDescriptorList and not getExtensionList to pick up legacy instances - return Hudson.getInstance().getDescriptorList(BuildWrapper.class); + return Hudson.getInstance().>getDescriptorList(BuildWrapper.class); } } diff --git a/core/src/main/java/hudson/tasks/Builder.java b/core/src/main/java/hudson/tasks/Builder.java index 0d479180a3..323c8b2f42 100644 --- a/core/src/main/java/hudson/tasks/Builder.java +++ b/core/src/main/java/hudson/tasks/Builder.java @@ -26,15 +26,12 @@ package hudson.tasks; import hudson.ExtensionPoint; import hudson.Extension; import hudson.DescriptorExtensionList; -import hudson.model.Action; import hudson.model.Build; import hudson.model.BuildListener; import hudson.model.Describable; -import hudson.model.Project; import hudson.model.Descriptor; import hudson.model.Hudson; -import java.util.Collection; /** * {@link BuildStep}s that perform the actual build. @@ -75,6 +72,6 @@ public abstract class Builder extends BuildStepCompatibilityLayer implements Bui */ // for backward compatibility, the signature is not BuildStepDescriptor public static DescriptorExtensionList> all() { - return Hudson.getInstance().getDescriptorList(Builder.class); + return Hudson.getInstance().>getDescriptorList(Builder.class); } } diff --git a/core/src/main/java/hudson/tasks/Publisher.java b/core/src/main/java/hudson/tasks/Publisher.java index 7714671b59..4df8ebea20 100644 --- a/core/src/main/java/hudson/tasks/Publisher.java +++ b/core/src/main/java/hudson/tasks/Publisher.java @@ -26,7 +26,6 @@ package hudson.tasks; import hudson.DescriptorExtensionList; import hudson.Extension; import hudson.ExtensionComponent; -import hudson.Launcher; import hudson.model.Action; import hudson.model.Build; import hudson.model.BuildListener; @@ -34,7 +33,6 @@ import hudson.model.Describable; import hudson.model.Project; import hudson.model.Descriptor; import hudson.model.Hudson; -import hudson.model.AbstractBuild; import java.util.List; import java.util.ArrayList; @@ -171,6 +169,6 @@ public abstract class Publisher extends BuildStepCompatibilityLayer implements B */ // for backward compatibility, the signature is not BuildStepDescriptor public static DescriptorExtensionList> all() { - return Hudson.getInstance().getDescriptorList(Publisher.class); + return Hudson.getInstance().>getDescriptorList(Publisher.class); } } diff --git a/core/src/main/java/hudson/tasks/junit/TestDataPublisher.java b/core/src/main/java/hudson/tasks/junit/TestDataPublisher.java index 117d1ca363..1e39111944 100644 --- a/core/src/main/java/hudson/tasks/junit/TestDataPublisher.java +++ b/core/src/main/java/hudson/tasks/junit/TestDataPublisher.java @@ -55,7 +55,7 @@ public abstract class TestDataPublisher extends AbstractDescribableImpl> all() { - return Hudson.getInstance().getDescriptorList(TestDataPublisher.class); + return Hudson.getInstance().>getDescriptorList(TestDataPublisher.class); } } diff --git a/core/src/main/java/hudson/tools/ToolInstallation.java b/core/src/main/java/hudson/tools/ToolInstallation.java index dbfccd9e6d..3f49d9af46 100644 --- a/core/src/main/java/hudson/tools/ToolInstallation.java +++ b/core/src/main/java/hudson/tools/ToolInstallation.java @@ -180,7 +180,7 @@ public abstract class ToolInstallation extends AbstractDescribableImpl> all() { // use getDescriptorList and not getExtensionList to pick up legacy instances - return Hudson.getInstance().getDescriptorList(ToolInstallation.class); + return Hudson.getInstance().>getDescriptorList(ToolInstallation.class); } private static final long serialVersionUID = 1L; diff --git a/core/src/main/java/hudson/tools/ToolInstallerDescriptor.java b/core/src/main/java/hudson/tools/ToolInstallerDescriptor.java index 99448c7fcc..3b3e2f16d4 100644 --- a/core/src/main/java/hudson/tools/ToolInstallerDescriptor.java +++ b/core/src/main/java/hudson/tools/ToolInstallerDescriptor.java @@ -48,7 +48,7 @@ public abstract class ToolInstallerDescriptor extends D } public static DescriptorExtensionList> all() { - return Hudson.getInstance().getDescriptorList(ToolInstaller.class); + return Hudson.getInstance().>getDescriptorList(ToolInstaller.class); } /** diff --git a/core/src/main/java/hudson/util/DescriptorList.java b/core/src/main/java/hudson/util/DescriptorList.java index e0a94d1970..91eb217877 100644 --- a/core/src/main/java/hudson/util/DescriptorList.java +++ b/core/src/main/java/hudson/util/DescriptorList.java @@ -142,7 +142,7 @@ public final class DescriptorList> extends AbstractList if(type==null) return legacy; else - return Hudson.getInstance().getDescriptorList(type); + return Hudson.getInstance().>getDescriptorList(type); } /** diff --git a/core/src/main/java/hudson/views/ListViewColumn.java b/core/src/main/java/hudson/views/ListViewColumn.java index df4aa28c49..40a425abe8 100644 --- a/core/src/main/java/hudson/views/ListViewColumn.java +++ b/core/src/main/java/hudson/views/ListViewColumn.java @@ -24,7 +24,6 @@ package hudson.views; import hudson.DescriptorExtensionList; -import hudson.Extension; import hudson.ExtensionPoint; import hudson.model.Describable; import hudson.model.Descriptor; @@ -71,7 +70,7 @@ public abstract class ListViewColumn implements ExtensionPoint, Describable> all() { - return Hudson.getInstance().getDescriptorList(ListViewColumn.class); + return Hudson.getInstance().>getDescriptorList(ListViewColumn.class); } /**