java中expand用法,Java DataProperties.expand方法代码示例

import org.cpsolver.ifs.util.DataProperties; //导入方法依赖的package包/类

@Override

public DataProperties createConfig(Long settingsId, Map options) {

DataProperties properties = new DataProperties();

try {

InputStream is = getClass().getClassLoader().getResourceAsStream("org/cpsolver/instructor/default.properties");

if (is != null) properties.load(is);

} catch (IOException e) {

sLog.warn("Failed to load configuration defaults:" + e.getMessage());

}

// Load properties

for (SolverParameterDef def: (List)SolverPredefinedSettingDAO.getInstance().getSession().createQuery(

"from SolverParameterDef where group.type = :type").setInteger("type", SolverParameterGroup.SolverType.INSTRUCTOR.ordinal()).list()) {

if (def.getDefault() != null) properties.put(def.getName(), def.getDefault());

if (options != null && options.containsKey(def.getUniqueId()))

properties.put(def.getName(), options.get(def.getUniqueId()));

}

SolverPredefinedSetting settings = SolverPredefinedSettingDAO.getInstance().get(settingsId);

for (SolverParameter param: settings.getParameters()) {

if (!param.getDefinition().isVisible() || param.getDefinition().getGroup().getSolverType() != SolverParameterGroup.SolverType.INSTRUCTOR) continue;

properties.put(param.getDefinition().getName(),param.getValue());

if (options != null && options.containsKey(param.getDefinition().getUniqueId()))

properties.put(param.getDefinition().getName(), options.get(param.getDefinition().getUniqueId()));

}

properties.setProperty("General.SettingsId", settings.getUniqueId().toString());

// Generate extensions

String ext = properties.getProperty("Extensions.Classes", "");

if (properties.getPropertyBoolean("General.CBS", true)) {

if (!ext.isEmpty()) ext += ";";

ext += ConflictStatistics.class.getName();

properties.setProperty("ConflictStatistics.Print","true");

}

String mode = properties.getProperty("Basic.Mode","Initial");

if ("MPP".equals(mode))

properties.setProperty("General.MPP","true");

properties.setProperty("Extensions.Classes", ext);

// Interactive mode?

if (properties.getPropertyBoolean("Basic.DisobeyHard", false))

properties.setProperty("General.InteractiveMode", "true");

// When finished?

if ("No Action".equals(properties.getProperty("Basic.WhenFinished"))) {

properties.setProperty("General.Save","false");

properties.setProperty("General.CreateNewSolution","false");

properties.setProperty("General.Unload","false");

} else if ("Save".equals(properties.getProperty("Basic.WhenFinished"))) {

properties.setProperty("General.Save","true");

properties.setProperty("General.CreateNewSolution","false");

properties.setProperty("General.Unload","false");

} else if ("Save and Unload".equals(properties.getProperty("Basic.WhenFinished"))) {

properties.setProperty("General.Save","true");

properties.setProperty("General.CreateNewSolution","false");

properties.setProperty("General.Unload","true");

}

// XML save/load properties

properties.setProperty("Xml.ShowNames", "true");

properties.setProperty("Search.GreatDeluge", ("Great Deluge".equals(properties.getProperty("General.Algorithm","Great Deluge"))?"true":"false"));

// Distances Matrics

if (properties.getProperty("Distances.Ellipsoid") == null || properties.getProperty("Distances.Ellipsoid").equals("DEFAULT"))

properties.setProperty("Distances.Ellipsoid", ApplicationProperties.getProperty(ApplicationProperty.DistanceEllipsoid));

if (properties.getProperty("Parallel.NrSolvers") == null) {

properties.setProperty("Parallel.NrSolvers", "1"); // String.valueOf(Math.max(1, Runtime.getRuntime().availableProcessors() / 2))

}

properties.setProperty("General.UseAmPm", CONSTANTS.useAmPm() ? "true" : "false");

properties.expand();

return properties;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值