This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.
{@link Descriptor} is an object that has metadata about a {@link Describable}object, and also serves as a factory (in a way this relationship is similar to {@link Object}/ {@link Class} relationship.A {@link Descriptor}/ {@link Describable}combination is used throughout in Hudson to implement a configuration/extensibility mechanism.
Take the list view support as an example, which is implemented in {@link ListView} class. Whenever a new view is created, a new{@link ListView} instance is created with the configurationinformation. This instance gets serialized to XML, and this instance will be called to render the view page. This is the job of {@link Describable} — each instance represents a specificconfiguration of a view (what projects are in it, regular expression, etc.)
For Hudson to create such configured {@link ListView} instance, Hudsonneeds another object that captures the metadata of {@link ListView}, and that is what a {@link Descriptor} is for. {@link ListView} classhas a singleton descriptor, and this descriptor helps render the configuration form, remember system-wide configuration, and works as a factory.
{@link Descriptor} also usually have its associated views.
{@link Descriptor} can persist data just by storing them in fields.However, it is the responsibility of the derived type to properly invoke {@link #save()} and {@link #load()}.
The {@link DescriptorAccess} interface defines how to get and setDescriptors for a ModelMBean's metadata classes.
The implementation must implement the following constructors.
Descriptor() returns an empty descriptor.
Descriptor(Descriptor) returns a copy of the decriptor.
Descriptor(String[], Object[]) a constructor that verifies the field names include a descriptorType and that predefined fields contain valid values.
@see javax.management.DescriptorAccess @see javax.management.modelmbean.ModelMBean @author Adrian Brock. @version $Revision: 1.2 $
Describes a content node mapping.
Common superclass for types ofDescriptor
@author Robert Burrell Donkin
@since 0.5
<jbi:jbi>
element.
Services have a number of optional attributes such as name and scope. A service is required to minimally have a type name representing the concrete (i.e., byType) definition.
@see {@link ActiveDescriptor}, {@link Metadata} @author Jerome Dochez, Jeff Trent, Mason Taube
A {@link WireDefinition} contains a map of {@link Descriptor}s. They are used by the {@link WireContext} that will build and cache the objects.
@author Tom Baeyens @author Guillaume Porcher (documentation)A {@link WireDefinition} contains a map of {@link Descriptor}s. They are used by the {@link WireContext} that will build and cache the objects.
@author Tom Baeyens @author Guillaume Porcher (documentation)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|