View Javadoc
1   package org.kuali.common.devops.jenkins.monitor.model;
2   
3   import org.kuali.common.core.build.ValidatingBuilder;
4   import org.kuali.common.core.validate.annotation.IdiotProofImmutable;
5   
6   import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
7   
8   @IdiotProofImmutable
9   @JsonDeserialize(builder = JenkinsCredentials.Builder.class)
10  public final class JenkinsCredentials {
11  
12  	private final String username;
13  	private final String apiToken;
14  
15  	private JenkinsCredentials(Builder builder) {
16  		this.username = builder.username;
17  		this.apiToken = builder.apiToken;
18  	}
19  
20  	public static Builder builder() {
21  		return new Builder();
22  	}
23  
24  	public static class Builder extends ValidatingBuilder<JenkinsCredentials> {
25  
26  		private String username;
27  		private String apiToken;
28  
29  		public Builder withUsername(String username) {
30  			this.username = username;
31  			return this;
32  		}
33  
34  		public Builder withApiToken(String apiToken) {
35  			this.apiToken = apiToken;
36  			return this;
37  		}
38  
39  		@Override
40  		public JenkinsCredentials build() {
41  			return validate(new JenkinsCredentials(this));
42  		}
43  	}
44  
45  	public String getUsername() {
46  		return username;
47  	}
48  
49  	public String getApiToken() {
50  		return apiToken;
51  	}
52  }