package org.jenkinsci.plugins.p4.email; import hudson.Extension; import hudson.Util; import hudson.model.User; import hudson.model.UserProperty; import hudson.model.UserPropertyDescriptor; import net.sf.json.JSONObject; import org.jenkinsci.Symbol; import org.kohsuke.stapler.DataBoundConstructor; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.export.Exported; public class P4UserProperty extends UserProperty { private final String email; @DataBoundConstructor public P4UserProperty(String email) { this.email = Util.fixEmptyAndTrim(email); } @Extension @Symbol("user") public static class DescriptorImpl extends UserPropertyDescriptor { @Override public UserProperty newInstance(User user) { return new P4UserProperty(null); } @Override public String getDisplayName() { return "Perforce User Property"; } @Override public UserProperty newInstance(StaplerRequest req, JSONObject formData) throws FormException { return new P4UserProperty(formData.optString("email")); } } @Exported public String getEmail() { return email; } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 23650 | abraka | "Forking branch Main of p4-jenkins to mautokar-p4jenkins." | ||
//guest/perforce_software/p4jenkins/main/src/main/java/org/jenkinsci/plugins/p4/email/P4UserProperty.java | |||||
#2 | 22684 | Paul Allen | Added @Symbol to Extension classes for Pipeline Syntax. | ||
#1 | 15503 | Paul Allen |
Created P4UserProperty to store Email address. P4UserProperty extends UserProperty to store the Perforce User’s email. Then retrieves it with P4AddressResolver by extending MailAddressResolver. JENKINS-28421 |