package com.aperture_software.glados_wiki.config;
import com.aperture_software.glados_wiki.entities.page_acl.DefaultAclPolicy;
import com.mongodb.MongoClient;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import java.io.Serializable;
/**
* Created by jhyun on 14. 1. 12.
*/
public class WikiConfig implements Serializable, Cloneable {
private static final long serialVersionUID = 5461351376684811891L;
private MongoClient mongoClient;
private String mongoDbName;
private String mongoDbGridFsBucketName;
private String uploadTempDir;
private String siteTitle;
private String siteTitleImgUrl;
private String defaultAclForEveryone = DefaultAclPolicy.NONE;
private String siteBaseUrl;
public WikiConfig() throws Exception {
}
public MongoClient getMongoClient() {
return mongoClient;
}
public void setMongoClient(MongoClient mongoClient) {
this.mongoClient = mongoClient;
}
public String getMongoDbName() {
return mongoDbName;
}
public void setMongoDbName(String mongoDbName) {
this.mongoDbName = mongoDbName;
}
public String getMongoDbGridFsBucketName() {
return mongoDbGridFsBucketName;
}
public void setMongoDbGridFsBucketName(String mongoDbGridFsBucketName) {
this.mongoDbGridFsBucketName = mongoDbGridFsBucketName;
}
public String getUploadTempDir() {
return uploadTempDir;
}
public void setUploadTempDir(String uploadTempDir) {
this.uploadTempDir = uploadTempDir;
}
public String getSiteTitle() {
return siteTitle;
}
public void setSiteTitle(String siteTitle) {
this.siteTitle = siteTitle;
}
public String getSiteTitleImgUrl() {
return siteTitleImgUrl;
}
public void setSiteTitleImgUrl(String siteTitleImgUrl) {
this.siteTitleImgUrl = siteTitleImgUrl;
}
public String getDefaultAclForEveryone() {
return defaultAclForEveryone;
}
public void setDefaultAclForEveryone(String defaultAclForEveryone) {
this.defaultAclForEveryone = defaultAclForEveryone;
}
public String getSiteBaseUrl() {
return siteBaseUrl;
}
public void setSiteBaseUrl(String siteBaseUrl) {
this.siteBaseUrl = siteBaseUrl;
}
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}
@Override
public boolean equals(Object obj) {
return EqualsBuilder.reflectionEquals(this, obj);
}
@Override
public Object clone() throws CloneNotSupportedException {
return super.clone();
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
}