Package hudson
Class DescriptorExtensionList<T extends Describable<T>,D extends Descriptor<T>>
java.lang.Object
java.util.AbstractCollection<D>
java.util.AbstractList<D>
hudson.ExtensionList<D>
hudson.DescriptorExtensionList<T,D>
- Type Parameters:
D- Represents the descriptor type. This isDescriptor<T>normally but often there are subtypes of descriptors, likeViewDescriptor,NodeDescriptor, etc, and this parameter points to those for better type safety of users. The actual value of 'D' is not necessary for the operation of this code, so it's purely for convenience of the users of this class.
- All Implemented Interfaces:
Iterable<D>,Collection<D>,List<D>,OnMaster
- Direct Known Subclasses:
Publisher.DescriptorExtensionListImpl
public class DescriptorExtensionList<T extends Describable<T>,D extends Descriptor<T>>
extends ExtensionList<D>
ExtensionList for holding a set of Descriptors, which is a group of descriptors for
the same extension point.
Use Jenkins.getDescriptorList(Class) to obtain instances.- Since:
- 1.286
-
Field Summary
Fields inherited from class hudson.ExtensionList
extensionType, hudson, jenkinsFields inherited from class java.util.AbstractList
modCount -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedDescriptorExtensionList(Hudson hudson, Class<T> describableType) Deprecated.protectedDescriptorExtensionList(Jenkins jenkins, Class<T> describableType) -
Method Summary
Modifier and TypeMethodDescriptionbooleanWrite access will put the instance into a legacy store.static voidExposed just for the test harness.static <T extends Describable<T>,D extends Descriptor<T>>
DescriptorExtensionList<T, D> createDescriptorList(Hudson hudson, Class<T> describableType) Deprecated.as of 1.416 UseExtensionList.create(Jenkins, Class)static <T extends Describable<T>,D extends Descriptor<T>>
DescriptorExtensionList<T, D> createDescriptorList(Jenkins jenkins, Class<T> describableType) Creates a new instance.Finds the descriptor that describes the given type.Deprecated.Descriptor.getId()is supposed to be used for new code, not the descriptor class name.findByName(String id) Finds a descriptor by theirDescriptor.getId().protected Objectload()in the descriptor is not a real load activity, so locking against "this" is enough.static Iterable<Descriptor> List up all the legacy instances currently in use.protected List<ExtensionComponent<D>> load()Loading the descriptors in this case means filtering the descriptor from the masterExtensionList.protected Collection<ExtensionComponent<D>> load(ExtensionComponentSet delta) Picks up extensions that we care from the given list.newInstanceFromRadioList(net.sf.json.JSONObject config) Creates a new instance of aDescribablefrom the structured form submission data posted by a radio button group.newInstanceFromRadioList(net.sf.json.JSONObject parent, String name) Creates a new instance of aDescribablefrom the structured form submission data posted by a radio list.booleanMethods inherited from class hudson.ExtensionList
add, addListener, create, create, fireOnChangeListeners, get, get, getComponents, getDynamic, getInstance, iterator, lookup, lookupFirst, lookupSingleton, refresh, remove, removeAll, reverseView, size, sortMethods inherited from class java.util.AbstractList
addAll, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, listIterator, removeRange, set, subListMethods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, retainAll, toArray, toArray, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface java.util.List
addAll, contains, containsAll, isEmpty, replaceAll, retainAll, sort, spliterator, toArray, toArray
-
Constructor Details
-
DescriptorExtensionList
Deprecated.as of 1.416 UseDescriptorExtensionList(Jenkins, Class) -
DescriptorExtensionList
-
-
Method Details
-
createDescriptorList
public static <T extends Describable<T>,D extends Descriptor<T>> DescriptorExtensionList<T,D> createDescriptorList(Jenkins jenkins, Class<T> describableType) Creates a new instance. -
createDescriptorList
@Deprecated public static <T extends Describable<T>,D extends Descriptor<T>> DescriptorExtensionList<T,D> createDescriptorList(Hudson hudson, Class<T> describableType) Deprecated.as of 1.416 UseExtensionList.create(Jenkins, Class) -
find
Deprecated.Descriptor.getId()is supposed to be used for new code, not the descriptor class name.Finds the descriptor that has the matching fully-qualified class name.- Parameters:
fqcn- Fully qualified name of the descriptor, not the describable.
-
find
Finds the descriptor that describes the given type. That is, if this method returns d,d.clazz==type -
newInstanceFromRadioList
@CheckForNull public T newInstanceFromRadioList(net.sf.json.JSONObject config) throws Descriptor.FormException Creates a new instance of aDescribablefrom the structured form submission data posted by a radio button group.- Parameters:
config- Submitted configuration for Radio List- Returns:
- New instance.
nullif none was selected in the radio list or if the value is filtered by aDescriptorVisibilityFilter - Throws:
Descriptor.FormException- Data submission error- Since:
- 1.312
-
newInstanceFromRadioList
@CheckForNull public T newInstanceFromRadioList(@NonNull net.sf.json.JSONObject parent, @NonNull String name) throws Descriptor.FormException Creates a new instance of aDescribablefrom the structured form submission data posted by a radio list.- Parameters:
name- Name of the form field- Returns:
- Created instance.
nullif none was selected in the radio list or if the value is filtered by aDescriptorVisibilityFilter - Throws:
Descriptor.FormException- Data submission error- Since:
- 1.312
-
findByName
Finds a descriptor by theirDescriptor.getId(). If none is found, null is returned. -
add
Description copied from class:ExtensionListWrite access will put the instance into a legacy store.- Specified by:
addin interfaceCollection<T extends Describable<T>>- Specified by:
addin interfaceList<T extends Describable<T>>- Overrides:
addin classExtensionList<D extends Descriptor<T>>
-
remove
- Specified by:
removein interfaceCollection<T extends Describable<T>>- Specified by:
removein interfaceList<T extends Describable<T>>- Overrides:
removein classExtensionList<D extends Descriptor<T>>
-
getLoadLock
load()in the descriptor is not a real load activity, so locking against "this" is enough.- Overrides:
getLoadLockin classExtensionList<D extends Descriptor<T>>
-
load
Loading the descriptors in this case means filtering the descriptor from the masterExtensionList.- Overrides:
loadin classExtensionList<D extends Descriptor<T>>
-
load
Description copied from class:ExtensionListPicks up extensions that we care from the given list.- Overrides:
loadin classExtensionList<D extends Descriptor<T>>
-
listLegacyInstances
List up all the legacy instances currently in use. -
clearLegacyInstances
public static void clearLegacyInstances()Exposed just for the test harness. Clear legacy instances.
-
DescriptorExtensionList(Jenkins, Class)