本文整理汇总了Java中gov.nasa.jpf.Config.setProperty方法的典型用法代码示例。如果您正苦于以下问题:Java Config.setProperty方法的具体用法?Java Config.setProperty怎么用?Java Config.setProperty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类gov.nasa.jpf.Config
的用法示例。
在下文中一共展示了Config.setProperty方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: generateJPFConfig
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
/**
* generates a jpf config corresponding to this configuration
*
* @param conf
* @return
*/
public Config generateJPFConfig(Config conf) {
Config newConf = new Config("");
if(conf != null) {
newConf.putAll(conf);
newConf.setClassLoader(conf.getClassLoader());
}
else {
newConf.initClassLoader(JPF.class.getClassLoader());
}
StringBuilder sb = new StringBuilder();
boolean first = true;
for(ConcolicMethodConfig mc : concolicMethods.values()) {
generatePerturbConfig(mc, newConf);
if(first)
first = false;
else
sb.append(',');
sb.append(mc.getId());
}
newConf.setProperty("perturb.params", sb.toString());
return newConf;
}
示例2: summarize
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
private static MethodSummary summarize(ConcolicMethodConfig mw, Config c) {
c.setTarget("__jpf_jdart.summarizer.SummaryGenerator$Exec_" + mw.getId());
c.setProperty("concolic.method", mw.getId());
JDart jdart = new JDart(c, false);
ConcolicExplorer cex = jdart.run();
CompletedAnalysis ca = cex.getFirstCompletedAnalysis(mw.getId());
ConstraintsTree ct = ca.getConstraintsTree();
MethodSummary summary = new MethodSummary(mw.getId(), ct, ca.getInitialValuation());
c.remove("target");
c.remove("concolic.method");
return summary;
}
示例3: performAnalysis
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
private DataCollection performAnalysis(Config jpfConf) {
boolean noSolver = jpfConf.getBoolean(NO_SOLVER_HEURISTIC_CONF, false);
if (noSolver) {
jpfConf.setProperty("symbolic.dp", "no_solver");
}
int maxInput = jpfConf.getInt(MAX_INPUT_CONF);
jpfConf.setProperty("report.console.class", HeuristicResultsPublisher.class.getName());
DataCollection dataCollection = new DataCollection();
for (int inputSize = this.startAt; inputSize <= maxInput; inputSize += this.incr) {//TODO: should maxInput be included?
logger.info("Exploring with heuristic input size " + inputSize + "...");
jpfConf.setProperty("target.args", "" + inputSize);
JPF jpf = new JPF(jpfConf);
HeuristicListener heuristic = new HeuristicListener(jpfConf, jpf);
jpf.addListener(heuristic); //weird instantiation...
//explore guided by policy
long start = System.currentTimeMillis();
runJPF(jpf);
long end = System.currentTimeMillis();
logger.info("Heuristic exploration at input size " + inputSize + " done. Took " + ((end - start) / 1000) + "s");
WorstCasePath wcPath = heuristic.getWcPath();
if (wcPath == null) {
logger.severe("No worst case path found for input size " + inputSize);
} else {
State wcState = wcPath.getWCState();
dataCollection.addDatapoint(inputSize, wcState.getWC());
}
}
return dataCollection;
}
示例4: generatePerturbConfig
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
private static void generatePerturbConfig(ConcolicMethodConfig mc, Config conf) {
String perturbPrefix = "perturb." + mc.getId() + ".";
String perturbMethod = mc.toJPFPerturbString();
conf.setProperty(perturbPrefix + "method", perturbMethod);
conf.setProperty(perturbPrefix + "class", ConcolicPerturbator.class.getName());
String loc = mc.getLocation();
if(loc != null)
conf.setProperty(perturbPrefix + "location", loc);
}
示例5: createCopy
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
public static Config createCopy(Config in) {
Config conf = new Config(new String[] {});
for (String key : in.getKeysStartingWith("")) {
conf.setProperty(key, in.getProperty(key));
}
return conf;
}
示例6: setUp
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
@Before
public void setUp() {
String[] args = {};
Config conf = new Config(args);
conf.setProperty("symbolic.dp", "NativeZ3");
conf.setProperty("symbolic.dp.z3.bitvectors", "false");
conf.setProperty("log.finest", "psyco");
ConstraintSolverFactory factory = new ConstraintSolverFactory(conf);
solver = factory.createSolver();
PsycoConfig pconf = new PsycoConfig(conf, solver, null);
}
示例7: initGroupers
import gov.nasa.jpf.Config; //导入方法依赖的package包/类
private void initGroupers(Config config) {
HashMap<String, CGAccessor> accessors;
CGGrouper grouper;
int i;
if (config.getStringArray("ssa.sort_order") == null) {
config.setProperty("ssa.sort_order", "type");
config.setProperty("ssa.sort_order2", "package,class,method,instruction,type");
}
accessors = new HashMap<String, CGAccessor>(5);
accessors.put("package", new CGPackageAccessor());
accessors.put("class", new CGClassAccessor());
accessors.put("method", new CGMethodAccessor());
accessors.put("instruction", new CGInstructionAccessor());
accessors.put("type", new CGTypeAccessor());
m_groupers.add(initGrouper(config, "ssa.sort_order", accessors));
for (i = 2; true; i++) {
grouper = initGrouper(config, "ssa.sort_order" + i, accessors);
if (grouper == null) {
break;
}
m_groupers.add(grouper);
}
}