From 4c5e7fc0526443dd6e2c74c678fd03a3380d612a Mon Sep 17 00:00:00 2001 From: kohsuke Date: Fri, 13 Apr 2007 16:37:19 +0000 Subject: [PATCH] remote API exposed. git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@3088 71c3de6d-444a-0410-be80-ed276b4c234a --- core/src/main/java/hudson/model/User.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/core/src/main/java/hudson/model/User.java b/core/src/main/java/hudson/model/User.java index 07a0aae386..fe6f51b49d 100644 --- a/core/src/main/java/hudson/model/User.java +++ b/core/src/main/java/hudson/model/User.java @@ -4,12 +4,15 @@ import com.thoughtworks.xstream.XStream; import hudson.CopyOnWrite; import hudson.FeedAdapter; import hudson.XmlFile; +import hudson.api.ExposedBean; +import hudson.api.Exposed; import hudson.model.Descriptor.FormException; import hudson.scm.ChangeLogSet; import hudson.util.RunList; import hudson.util.XStream2; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.StaplerResponse; +import org.kohsuke.stapler.Stapler; import javax.servlet.ServletException; import java.io.File; @@ -28,6 +31,7 @@ import java.util.logging.Logger; * * @author Kohsuke Kawaguchi */ +@ExposedBean public class User extends AbstractModelObject { private transient final String id; @@ -70,6 +74,7 @@ public class User extends AbstractModelObject { p.setUser(this); } + @Exposed public String getId() { return id; } @@ -78,6 +83,14 @@ public class User extends AbstractModelObject { return "user/"+ id; } + /** + * The URL of the user page. + */ + @Exposed + public String getAbsoluteUrl() { + return Stapler.getCurrentRequest().getRootPath()+'/'+getUrl(); + } + /** * Gets the human readable name of this user. * This is configurable by the user. @@ -85,10 +98,12 @@ public class User extends AbstractModelObject { * @return * never null. */ + @Exposed(visibility=999) public String getFullName() { return fullName; } + @Exposed public String getDescription() { return description; } @@ -189,6 +204,13 @@ public class User extends AbstractModelObject { config.write(this); } + /** + * Exposed remote API. + */ + public Api getApi() { + return new Api(this); + } + /** * Accepts submission from the configuration page. */ -- GitLab