hudson
Class ExtensionListView

java.lang.Object
  extended by hudson.ExtensionListView

public class ExtensionListView
extends Object

Compatibility layer for legacy manual registration of extension points.

Instances of this class can be created statically as a singleton, but it provides the view to ExtensionList of the current Jenkins. Write operations to this list will update the legacy instances on ExtensionList.

Whereas we used to use some simple data structure to keep track of static singletons, we can now use this instances, so that ExtensionList sees all the auto-registered and manually registered instances.

Similarly, the old list (such as UserNameResolver.LIST continues to show all auto and manually registered instances, thus providing necessary bi-directional interoperability.

Author:
Kohsuke Kawaguchi

Constructor Summary
ExtensionListView()
           
 
Method Summary
static
<T> CopyOnWriteList<T>
createCopyOnWriteList(Class<T> type)
          Creates a seriously hacked up CopyOnWriteList that acts as a view to the current ExtensionList.
static
<T> List<T>
createList(Class<T> type)
          Creates a plain List backed by the current ExtensionList.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtensionListView

public ExtensionListView()
Method Detail

createList

public static <T> List<T> createList(Class<T> type)
Creates a plain List backed by the current ExtensionList.


createCopyOnWriteList

public static <T> CopyOnWriteList<T> createCopyOnWriteList(Class<T> type)
Creates a seriously hacked up CopyOnWriteList that acts as a view to the current ExtensionList.



Copyright © 2004-2013. All Rights Reserved.