public class DescribableList<T extends Describable<T>,D extends Descriptor<T>> extends PersistedList<T>
Describables with some operations specific
to Descriptors.
This class allows multiple instances of the same descriptor. Some clients
use this semantics, while other clients use it as "up to one instance per
one descriptor" model.
Some of the methods defined in this class only makes sense in the latter model,
such as remove(Descriptor).
| Modifier and Type | Class and Description |
|---|---|
static class |
DescribableList.ConverterImpl
Converter implementation for XStream. |
static interface |
DescribableList.Owner
Deprecated.
since 2008-08-15.
Just implement
Saveable. |
data, ownermodCount| Modifier | Constructor and Description |
|---|---|
protected |
DescribableList() |
|
DescribableList(DescribableList.Owner owner)
Deprecated.
since 2008-08-15.
Use
DescribableList(Saveable) |
|
DescribableList(Saveable owner) |
|
DescribableList(Saveable owner,
Collection<? extends T> initialList) |
| Modifier and Type | Method and Description |
|---|---|
void |
buildDependencyGraph(AbstractProject owner,
DependencyGraph graph)
Picks up
DependencyDeclarers and allow it to build dependencies. |
boolean |
contains(D d) |
<U extends T> |
get(Class<U> type) |
T |
get(D descriptor) |
T |
getDynamic(String id)
Binds items in the collection to URL.
|
void |
rebuild(org.kohsuke.stapler.StaplerRequest req,
net.sf.json.JSONObject json,
List<? extends Descriptor<T>> descriptors)
Rebuilds the list by creating a fresh instances from the submitted form.
|
void |
rebuild(org.kohsuke.stapler.StaplerRequest req,
net.sf.json.JSONObject json,
List<? extends Descriptor<T>> descriptors,
String prefix)
Deprecated.
as of 1.271
Use
rebuild(StaplerRequest, JSONObject, List) instead. |
void |
rebuildHetero(org.kohsuke.stapler.StaplerRequest req,
net.sf.json.JSONObject formData,
Collection<? extends Descriptor<T>> descriptors,
String key)
Rebuilds the list by creating a fresh instances from the submitted form.
|
void |
remove(D descriptor) |
void |
replace(T item)
Removes all instances of the same type, then add the new one.
|
void |
setOwner(DescribableList.Owner owner)
Deprecated.
since 2008-08-15.
Use
PersistedList.setOwner(Saveable) |
T[] |
toArray(T[] array) |
Map<D,T> |
toMap()
Creates a detached map from the current snapshot of the data, keyed from a descriptor to an instance.
|
add, addAll, addAllTo, clear, contains, get, getAll, isEmpty, iterator, onModified, remove, remove, removeAll, replace, replaceBy, setOwner, size, toArray, toList, toStringadd, addAll, equals, hashCode, indexOf, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subListcontainsAll, removeAll, retainAll, toArrayclone, finalize, getClass, notify, notifyAll, wait, wait, waitcontainsAll, removeAll, replaceAll, retainAll, sort, spliterator, toArrayparallelStream, removeIf, streamprotected DescribableList()
@Deprecated public DescribableList(DescribableList.Owner owner)
DescribableList(Saveable)public DescribableList(Saveable owner)
public DescribableList(Saveable owner, Collection<? extends T> initialList)
@Deprecated public void setOwner(DescribableList.Owner owner)
PersistedList.setOwner(Saveable)public void replace(T item) throws IOException
IOExceptionpublic boolean contains(D d)
public void remove(D descriptor) throws IOException
IOExceptionpublic Map<D,T> toMap()
public void rebuild(org.kohsuke.stapler.StaplerRequest req,
net.sf.json.JSONObject json,
List<? extends Descriptor<T>> descriptors)
throws Descriptor.FormException,
IOException
This method is almost always used by the owner. This method does not invoke the save method.
json - Structured form data that includes the data for nested descriptor list.Descriptor.FormExceptionIOException@Deprecated public void rebuild(org.kohsuke.stapler.StaplerRequest req, net.sf.json.JSONObject json, List<? extends Descriptor<T>> descriptors, String prefix) throws Descriptor.FormException, IOException
rebuild(StaplerRequest, JSONObject, List) instead.Descriptor.FormExceptionIOExceptionpublic void rebuildHetero(org.kohsuke.stapler.StaplerRequest req,
net.sf.json.JSONObject formData,
Collection<? extends Descriptor<T>> descriptors,
String key)
throws Descriptor.FormException,
IOException
This version works with the the <f:hetero-list> UI tag, where the user is allowed to create multiple instances of the same descriptor. Order is also significant.
Descriptor.FormExceptionIOExceptionpublic void buildDependencyGraph(AbstractProject owner, DependencyGraph graph)
DependencyDeclarers and allow it to build dependencies.public <U extends T> U get(Class<U> type)
get in class PersistedList<T extends Describable<T>>Copyright © 2019. All rights reserved.