# Settings for starting Matlab in stay-alive mode
matlab_path=C:/Users/Me/Desktop/backend
matlab_exe_filename=lev_lis_interface_main.exe
matlab_exe_params=standard log.txt logs
-------------
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/** * Created by Me on 8/22/2017. */public class MatlabPropertyValues {
private static final Logger LOGGER = LoggerFactory.getLogger(MatlabPropertyValues.class);
private String executablePath;
private String executableName;
private String executableParams;
InputStream inputStream = null;
private static MatlabPropertyValues instance = null;
public static MatlabPropertyValues getInstance() {
if (instance == null) {
instance = new MatlabPropertyValues();
instance.loadPropValues();
}
return instance;
}
private void loadPropValues() {
try {
Properties prop = new Properties();
String propFileName = "config.properties";
inputStream = getClass().getClassLoader().getResourceAsStream(propFileName); // may be different
if (inputStream != null) {
prop.load(inputStream);
} else {
throw new FileNotFoundException("Property file '" + propFileName + "' not found in the classpath");
}
executablePath = prop.getProperty("matlab_path");
executableName = prop.getProperty("matlab_exe_filename");
executableParams = prop.getProperty("matlab_exe_params");
} catch (Exception e) {
e.printStackTrace();
LOGGER.error(e.getMessage());
} finally {
try {
inputStream.close();
}
catch (IOException e) {
e.printStackTrace();
LOGGER.error(e.getMessage());
}
}
}
public String getExecutablePath() {
return executablePath;
}
public String getExecutableName() {
return executableName;
}
public String getExecutableParams() {
return executableParams;
}
public static List<String> getPropertyValuesAsList() {
List<String> args = new ArrayList<>();
MatlabPropertyValues instance = getInstance();
args.add(instance.getExecutablePath());
args.add(instance.getExecutablePath() + "\\" + instance.getExecutableName());
String params [] = instance.getExecutableParams().split(" ");
args.add(params[0] + " " + (instance.getExecutablePath() + "\\" + params[1]) + " " +
(instance.getExecutablePath() + "\\" + params[2]));
return args;
}
}
Niciun comentariu:
Trimiteți un comentariu