hudson.model
Class UserProperty

java.lang.Object
  extended by hudson.model.UserProperty
All Implemented Interfaces:
ExtensionPoint, Describable<UserProperty>, ReconfigurableDescribable<UserProperty>
Direct Known Subclasses:
ApiTokenProperty, FederatedLoginServiceUserProperty, HudsonPrivateSecurityRealm.Details, MyViewsProperty, UserSearchProperty

@ExportedBean
public abstract class UserProperty
extends Object
implements ReconfigurableDescribable<UserProperty>, ExtensionPoint

Extensible property of User.

Plugins can extend this to define custom properties for Users. UserPropertys show up in the user configuration screen, and they are persisted with the user object.

Configuration screen should be defined in config.jelly. Within this page, the UserProperty instance is available as instance variable (while it refers to User. See UserSearchProperty.UserProperty's config.jelly for an example.

Author:
Kohsuke Kawaguchi

Nested Class Summary
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Field Summary
protected  User user
          The user object that owns this property.
 
Constructor Summary
UserProperty()
           
 
Method Summary
static DescriptorExtensionList<UserProperty,UserPropertyDescriptor> all()
          Returns all the registered UserPropertyDescriptors.
 UserPropertyDescriptor getDescriptor()
          Gets the descriptor for this instance.
 UserProperty reconfigure(org.kohsuke.stapler.StaplerRequest req, net.sf.json.JSONObject form)
          When a parent/owner object of a Describable gets a config form submission and instances are recreated, this method is invoked on the existing instance (meaning the 'this' reference points to the existing instance) to create a new instance to be added to the parent/owner object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

user

protected transient User user
The user object that owns this property. This value will be set by the Hudson code. Derived classes can expect this value to be always set.

Constructor Detail

UserProperty

public UserProperty()
Method Detail

getDescriptor

public UserPropertyDescriptor getDescriptor()
Description copied from interface: Describable
Gets the descriptor for this instance.

Descriptor is a singleton for every concrete Describable implementation, so if a.getClass()==b.getClass() then a.getDescriptor()==b.getDescriptor() must hold.

Specified by:
getDescriptor in interface Describable<UserProperty>

all

public static DescriptorExtensionList<UserProperty,UserPropertyDescriptor> all()
Returns all the registered UserPropertyDescriptors.


reconfigure

public UserProperty reconfigure(org.kohsuke.stapler.StaplerRequest req,
                                net.sf.json.JSONObject form)
                         throws Descriptor.FormException
Description copied from interface: ReconfigurableDescribable
When a parent/owner object of a Describable gets a config form submission and instances are recreated, this method is invoked on the existing instance (meaning the 'this' reference points to the existing instance) to create a new instance to be added to the parent/owner object.

The default implementation of this should be the following:

 return form==null ? null : getDescriptor().newInstance(req, form);
 

Specified by:
reconfigure in interface ReconfigurableDescribable<UserProperty>
Parameters:
req - The current HTTP request being processed.
form - JSON fragment that corresponds to this describable object. If the newly submitted form doesn't include a fragment for this describable (meaning the user has de-selected your descriptor), then this argument is null.
Returns:
The new instance. To not to create an instance of a describable, return null.
Throws:
Descriptor.FormException


Copyright © 2004-2013. All Rights Reserved.