package hudson.plugins.skype; import net.sf.json.JSONObject; import org.kohsuke.stapler.StaplerRequest; import hudson.Extension; import hudson.Util; import hudson.model.User; import hudson.model.UserProperty; import hudson.model.UserPropertyDescriptor; /** * Descriptor for the {@link UserScoreProperty}. * * @author Erik Ramfelt */ @Extension public class SkypeUserPropertyDescriptor extends UserPropertyDescriptor { public SkypeUserPropertyDescriptor() { super(SkypeUserProperty.class); } @Override public String getDisplayName() { return "Skype"; // return Messages.User_Property_Title(); } /** * Method kept for backward compability. * Prior to 1.222 the JSONObject formdata was always null. This method * should be removed in the future. * @param req request coming from config.jelly * @return a UserScoreProperty object */ private SkypeUserProperty newInstanceIfJSONIsNull(StaplerRequest req) throws FormException { String skypeId = Util.fixEmptyAndTrim(req.getParameter("skypeId")); if (skypeId != null) { return new SkypeUserProperty(skypeId); } return new SkypeUserProperty(); } @Override public SkypeUserProperty newInstance(StaplerRequest req, JSONObject formData) throws hudson.model.Descriptor.FormException { if (formData == null) { return newInstanceIfJSONIsNull(req); } if (formData.has("skypeId")) { //$NON-NLS-1$ return req.bindJSON(SkypeUserProperty.class, formData); } return new SkypeUserProperty(); } @Override public UserProperty newInstance(User arg0) { return null; } }