Package hudson
Class DescriptorExtensionList<T extends Describable<T>,D extends Descriptor<T>>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<T>
-
- 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>
ExtensionListfor holding a set ofDescriptors, which is a group of descriptors for the same extension point. UseJenkins.getDescriptorList(Class)to obtain instances.- Since:
- 1.286
-
-
Field Summary
-
Fields inherited from class hudson.ExtensionList
extensionType, hudson, jenkins
-
Fields inherited from class java.util.AbstractList
modCount
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedDescriptorExtensionList(Hudson hudson, Class<T> describableType)Deprecated.as of 1.416 UseDescriptorExtensionList(Jenkins, Class)protectedDescriptorExtensionList(Jenkins jenkins, Class<T> describableType)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanadd(D d)Write access will put the instance into a legacy store.static voidclearLegacyInstances()Exposed 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.Dfind(Class<? extends T> type)Finds the descriptor that describes the given type.Dfind(String fqcn)Deprecated.Descriptor.getId()is supposed to be used for new code, not the descriptor class name.DfindByName(String id)Finds a descriptor by theirDescriptor.getId().protected ObjectgetLoadLock()load()in the descriptor is not a real load activity, so locking against "this" is enough.static Iterable<Descriptor>listLegacyInstances()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.TnewInstanceFromRadioList(net.sf.json.JSONObject config)Creates a new instance of aDescribablefrom the structured form submission data posted by a radio button group.TnewInstanceFromRadioList(net.sf.json.JSONObject parent, String name)Creates a new instance of aDescribablefrom the structured form submission data posted by a radio list.booleanremove(Object o)-
Methods inherited from class hudson.ExtensionList
add, addListener, create, create, get, get, getComponents, getDynamic, getInstance, iterator, lookup, lookupFirst, lookupSingleton, refresh, remove, removeAll, reverseView, size, sort
-
Methods inherited from class java.util.AbstractList
addAll, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, listIterator, removeRange, set, subList
-
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, retainAll, toArray, toArray, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
-
Methods inherited from interface java.util.List
addAll, contains, containsAll, isEmpty, replaceAll, retainAll, sort, spliterator, toArray, toArray
-
-
-
-
Constructor Detail
-
DescriptorExtensionList
@Deprecated protected DescriptorExtensionList(Hudson hudson, Class<T> describableType)
Deprecated.as of 1.416 UseDescriptorExtensionList(Jenkins, Class)
-
-
Method Detail
-
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 public D find(String fqcn)
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
public D find(Class<? extends T> type)
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
@CheckForNull public D findByName(String id)
Finds a descriptor by theirDescriptor.getId(). If none is found, null is returned.
-
add
public boolean add(D d)
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
public boolean remove(Object o)
- Specified by:
removein interfaceCollection<T extends Describable<T>>- Specified by:
removein interfaceList<T extends Describable<T>>- Overrides:
removein classExtensionList<D extends Descriptor<T>>
-
getLoadLock
protected Object 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
protected List<ExtensionComponent<D>> load()
Loading the descriptors in this case means filtering the descriptor from the masterExtensionList.- Overrides:
loadin classExtensionList<D extends Descriptor<T>>
-
load
protected Collection<ExtensionComponent<D>> load(ExtensionComponentSet delta)
Description copied from class:ExtensionListPicks up extensions that we care from the given list.- Overrides:
loadin classExtensionList<D extends Descriptor<T>>
-
listLegacyInstances
public static Iterable<Descriptor> listLegacyInstances()
List up all the legacy instances currently in use.
-
clearLegacyInstances
public static void clearLegacyInstances()
Exposed just for the test harness. Clear legacy instances.
-
-