package eu.dnetlib.conf;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class DnetGenericApplicationProperties {

	@Value("${server.host}")
	private String host;
	@Value("${server.port}")
	private int port;

	@Value("${is.host}")
	private String informationServiceHost;
	@Value("${is.port}")
	private int informationServicePort;

	@Value("${dnet.baseDir}")
	private String baseDir;

	public String getHost() {
		return host;
	}

	public void setHost(final String host) {
		this.host = host;
	}

	public int getPort() {
		return port;
	}

	public void setPort(final int port) {
		this.port = port;
	}

	public String getInformationServiceHost() {
		return informationServiceHost;
	}

	public void setInformationServiceHost(final String informationServiceHost) {
		this.informationServiceHost = informationServiceHost;
	}

	public int getInformationServicePort() {
		return informationServicePort;
	}

	public void setInformationServicePort(final int informationServicePort) {
		this.informationServicePort = informationServicePort;
	}

	public String getUrl() {
		return String.format("http://%s:%s", host.trim(), port);
	}

	public String getInformationServiceUrl() {
		return String.format("http://%s:%s/is", informationServiceHost.trim(), informationServicePort);
	}

	public String getDatasourceManagerUrl() {
		return String.format("http://%s:%s/dsManager", informationServiceHost.trim(), informationServicePort);
	}

	public String getBaseDir() {
		return baseDir;
	}

	public void setBaseDir(final String baseDir) {
		this.baseDir = baseDir;
	}

}
