View Javadoc
1   package org.kuali.common.devops.model;
2   
3   import org.kuali.common.core.build.ValidatingBuilder;
4   import org.kuali.common.core.validate.annotation.IdiotProofImmutable;
5   
6   @IdiotProofImmutable
7   public final class Scm {
8   
9   	private final String url;
10  	private final String revision;
11  
12  	private Scm(Builder builder) {
13  		this.url = builder.url;
14  		this.revision = builder.revision;
15  	}
16  
17  	public static Scm create(String url, String revision) {
18  		return builder().url(url).revision(revision).build();
19  	}
20  
21  	public static Builder builder() {
22  		return new Builder();
23  	}
24  
25  	public static class Builder extends ValidatingBuilder<Scm> {
26  
27  		private String url;
28  		private String revision;
29  
30  		public Builder url(String url) {
31  			this.url = url;
32  			return this;
33  		}
34  
35  		public Builder revision(String revision) {
36  			this.revision = revision;
37  			return this;
38  		}
39  
40  		@Override
41  		public Scm build() {
42  			return validate(new Scm(this));
43  		}
44  
45  		public String getUrl() {
46  			return url;
47  		}
48  
49  		public void setUrl(String url) {
50  			this.url = url;
51  		}
52  
53  		public String getRevision() {
54  			return revision;
55  		}
56  
57  		public void setRevision(String revision) {
58  			this.revision = revision;
59  		}
60  
61  	}
62  
63  	public String getUrl() {
64  		return url;
65  	}
66  
67  	public String getRevision() {
68  		return revision;
69  	}
70  }