001    package org.kuali.common.deploy.appserver.tomcat;
002    
003    import org.kuali.common.util.Assert;
004    
005    import com.google.common.base.Optional;
006    
007    public class SetEnvContent {
008    
009            private final Optional<String> kuali;
010            private final Optional<String> group;
011            private final Optional<String> app;
012            private final Optional<String> version;
013            private final Optional<String> env;
014    
015            public static class Builder {
016    
017                    private Optional<String> kuali = Optional.absent();
018                    private Optional<String> group = Optional.absent();
019                    private Optional<String> app = Optional.absent();
020                    private Optional<String> version = Optional.absent();
021                    private Optional<String> env = Optional.absent();
022    
023                    public Builder() {
024                    }
025    
026                    public Builder kuali(String kuali) {
027                            this.kuali = Optional.fromNullable(kuali);
028                            return this;
029                    }
030    
031                    public Builder group(String group) {
032                            this.group = Optional.fromNullable(group);
033                            return this;
034                    }
035    
036                    public Builder app(String app) {
037                            this.app = Optional.fromNullable(app);
038                            return this;
039                    }
040    
041                    public Builder version(String version) {
042                            this.version = Optional.fromNullable(version);
043                            return this;
044                    }
045    
046                    public Builder env(String env) {
047                            this.env = Optional.fromNullable(env);
048                            return this;
049                    }
050    
051                    public SetEnvContent build() {
052                            Assert.noNulls(kuali, group, app, version, env);
053                            return new SetEnvContent(this);
054                    }
055    
056            }
057    
058            private SetEnvContent(Builder builder) {
059                    this.kuali = builder.kuali;
060                    this.group = builder.group;
061                    this.app = builder.app;
062                    this.version = builder.version;
063                    this.env = builder.env;
064            }
065    
066            public Optional<String> getKuali() {
067                    return kuali;
068            }
069    
070            public Optional<String> getGroup() {
071                    return group;
072            }
073    
074            public Optional<String> getApp() {
075                    return app;
076            }
077    
078            public Optional<String> getVersion() {
079                    return version;
080            }
081    
082            public Optional<String> getEnv() {
083                    return env;
084            }
085    }