package hudson.plugins.kagemai; import hudson.Util; import hudson.model.AbstractProject; import java.net.URL; import org.apache.commons.lang.StringUtils; import org.kohsuke.stapler.DataBoundConstructor; /** * Kagemai Site. * * @author yamkazu * */ public class KagemaiSite { private static final String DEFAULT_ENCODE = "EUC_JP"; private URL baseUrl; private String basicUserName; private String basicPassword; private String encode; @DataBoundConstructor public KagemaiSite(String regex, URL baseUrl, String basicUserName, String basicPassword, String encode) { this.baseUrl = baseUrl; this.basicUserName = Util.fixEmptyAndTrim(basicUserName); this.basicPassword = Util.fixEmptyAndTrim(basicPassword); this.encode = encode; } public URL getBaseUrl() { return baseUrl; } public String getBasicUserName() { return basicUserName; } public String getBasicPassword() { return basicPassword; } public String getName() { return baseUrl.toExternalForm(); } public String getEncode() { return StringUtils.isEmpty(encode) ? DEFAULT_ENCODE : encode; } public static KagemaiSite get(final AbstractProject<?, ?> project) { KagemaiProjectProperty mpp = project .getProperty(KagemaiProjectProperty.class); if (mpp != null) { KagemaiSite site = mpp.getSite(); if (site != null) { return site; } } KagemaiSite[] sites = KagemaiProjectProperty.DESCRIPTOR.getSites(); if (sites.length == 1) { return sites[0]; } return null; } }