/*************************************************************************
* *
* This file is part of the 20n/act project. *
* 20n/act enables DNA prediction for synthetic biology/bioengineering. *
* Copyright (C) 2017 20n Labs, Inc. *
* *
* Please direct all queries to act@20n.com. *
* *
* This program is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation, either version 3 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
* *
*************************************************************************/
package com.twentyn.search.substructure;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* A simple container class for writing static configuration parameters. Easier than having to update the /etc/init.d
* script every time you want to make a config change.
*/
public class ServiceConfig {
// The port on which to listen.
@JsonProperty(value = "port", required = true)
Integer port;
// A path to a TSV file containing the reachables. This will be loaded at startup time.
@JsonProperty(value = "reachables_file", required = true)
String reachablesFile;
// A path to a Chemaxon license file to load at startup. A valid license is required for substructure search.
@JsonProperty(value = "license_file", required = true)
String licenseFile;
// A URL prefix to use for wiki page links. Probably just https://wiki.20n.com/ or similar.
@JsonProperty(value = "wiki_url_prefix", required = true)
String wikiUrlPrefix;
// A URL prefix to use for molecule images. Probably https://wiki.20n.com/assets/img or similar.
@JsonProperty(value = "image_url_prefix", required = true)
String imageUrlPrefix;
public ServiceConfig() {
}
public ServiceConfig(Integer port, String reachablesFile, String licenseFile,
String wikiUrlPrefix, String imageUrlPrefix) {
this.port = port;
this.reachablesFile = reachablesFile;
this.licenseFile = licenseFile;
this.wikiUrlPrefix = wikiUrlPrefix;
this.imageUrlPrefix = imageUrlPrefix;
}
public Integer getPort() {
return port;
}
public void setPort(Integer port) {
this.port = port;
}
public String getReachablesFile() {
return reachablesFile;
}
public void setReachablesFile(String reachablesFile) {
this.reachablesFile = reachablesFile;
}
public String getLicenseFile() {
return licenseFile;
}
public void setLicenseFile(String licenseFile) {
this.licenseFile = licenseFile;
}
public String getWikiUrlPrefix() {
return wikiUrlPrefix;
}
public void setWikiUrlPrefix(String wikiUrlPrefix) {
this.wikiUrlPrefix = wikiUrlPrefix;
}
public String getImageUrlPrefix() {
return imageUrlPrefix;
}
public void setImageUrlPrefix(String imageUrlPrefix) {
this.imageUrlPrefix = imageUrlPrefix;
}
}