当前位置: 首页>>代码示例>>Java>>正文


Java UnsupportedModelException类代码示例

本文整理汇总了Java中de.ovgu.featureide.fm.core.io.UnsupportedModelException的典型用法代码示例。如果您正苦于以下问题:Java UnsupportedModelException类的具体用法?Java UnsupportedModelException怎么用?Java UnsupportedModelException使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


UnsupportedModelException类属于de.ovgu.featureide.fm.core.io包,在下文中一共展示了UnsupportedModelException类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: buildFModelStep

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
/**
  * Processes a single Xml-Tag.
  * @param n
  * @throws UnsupportedModelException
  */
 private void buildFModelStep(Node n) throws UnsupportedModelException {
 	if (n.getNodeType() != Node.ELEMENT_NODE) return;
 	String tag = n.getNodeName();
 	if (tag.equals("feature_tree")) {
handleFeatureTree(n);
 	} else if (tag.equals("feature_model")) {
 		line++;
 		return;
 	} else if (tag.equals("constraints")) {
 		line++;
 		handleConstraints(n);
 	} else {
 		throw new UnsupportedModelException("Unknown Xml-Tag", line);
 	}
 }
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:21,代码来源:WaterlooReader.java

示例2: handleArbitrayCardinality

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
/**
 * If there are groups with a cardinality other then [1,*] or [1,1], this
 * function makes the necessary adjustments to the model 
 * @param featList List of features with arbitrary cardinalities
 * @throws UnsupportedModelException
 */
private void handleArbitrayCardinality(LinkedList<FeatCardinality> featList) 
		throws UnsupportedModelException {
	org.prop4j.Node node;
	for (FeatCardinality featCard : featList) {   		
		Feature feat = featCard.feat;
		node = new And();    		
		LinkedList<Feature> children = feat.getChildren();
		for (Feature child : children) child.setMandatory(false);
		int start = featCard.start;
		int end = featCard.end;
		if ((start < 0) || (start > end) || (end > children.size())) 
			throw new UnsupportedModelException("Group cardinality " +
	"invalid", line);
		int f = children.size();
		node = buildMinConstr(children, f - start + 1, feat.getName());
		featureModel.addPropositionalNode(node);
		if ((start > 0) && (end < f)) {
			node = buildMaxConstr(children, end + 1);
			featureModel.addPropositionalNode(node);
		}
	}
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:29,代码来源:WaterlooReader.java

示例3: handleSingleConstraint

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
/**
   * Handles a single constraints.
   * @param lineText Text description of a Constraint
   * @throws UnsupportedModelException 
   */
  private void handleSingleConstraint(String lineText) 
  		throws UnsupportedModelException {
String newLine = lineText.replace("(", " ( ");
newLine = newLine.replace(")", " ) ");
newLine = newLine.replace("~", " ~ ");
  	Scanner scan = new Scanner(newLine);
scan.skip(".*:");
LinkedList<String> elements = new LinkedList<String>();
while (scan.hasNext()) {
	elements.add(scan.next());
}
scan .close();
org.prop4j.Node propNode = buildPropNode(elements);
featureModel.addPropositionalNode(propNode);
  }
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:21,代码来源:WaterlooReader.java

示例4: buildLeafNodes

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
private org.prop4j.Node buildLeafNodes(LinkedList<String> list) 
	throws UnsupportedModelException {
String element;
if (list.isEmpty()) 
	throw new UnsupportedModelException("Fehlendes Element", line);
element = list.removeFirst();
if ((element.equals("(")) && (!list.isEmpty())) 
	element = list.removeFirst();
if (element.equals("~")) {
	return new Not(buildPropNode(list));
} else {
	Feature feat = idTable.get(element);
	if (feat == null)
		throw new UnsupportedModelException("The feature '" + element + 
				"' does not occur in the grammar!", 0);			
	return new Literal(feat.getName());
}
  }
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:19,代码来源:WaterlooReader.java

示例5: parseInputStream

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Override
public void parseInputStream(InputStream inputStream)
throws UnsupportedModelException {

	warnings.clear();
	try {
		synchronized (lock) {
			Parser myParser = Parser.getInstance(inputStream);
			Model root = (Model) myParser.parseAll();
			readModelData(root);
		}
		featureModel.handleModelDataLoaded();
	}
	catch (ParseException e) {
		int line = e.currentToken.next.beginLine;
		throw new UnsupportedModelException(e.getMessage(), line);
	}
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:19,代码来源:GuidslReader.java

示例6: readGProduction

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
private void readGProduction(GProduction gProduction) throws UnsupportedModelException {
	String name = gProduction.getIDENTIFIER().name;
	Feature feature = featureModel.getFeature(name);
	if (feature == null) 
		throw new UnsupportedModelException("The compound feature '" + name + "' have to occur on a right side of a rule before using it on a left side!", gProduction.getIDENTIFIER().lineNum());
	feature.setAND(false);
	Pats pats = gProduction.getPats();
	AstListNode astListNode = (AstListNode) pats.arg[0];
	do {
		Feature child = readPat((Pat) astListNode.arg[0]);
		feature.addChild(child);
		feature.setAbstract(!noAbstractFeatures);
		astListNode = (AstListNode) astListNode.right;
	} while (astListNode != null);
	simplify(feature);
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:17,代码来源:GuidslReader.java

示例7: readConsStmt

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
private void readConsStmt(ConsStmt consStmt) throws UnsupportedModelException {
	ESList eSList = consStmt.getESList();
	AstListNode astListNode = (AstListNode) eSList.arg[0];
	do {
		line = 0;
		Node node = exprToNode(((EStmt) astListNode.arg[0]).getExpr());
		try {
			if (!new SatSolver(new Not(node.clone()), 250).isSatisfiable())
				warnings.add(new ModelWarning("Constraint is a tautology.", line));
			if (!new SatSolver(node.clone(), 250).isSatisfiable())
				warnings.add(new ModelWarning("Constraint is not satisfiable.", line));
		} catch (Exception e) {
		}
		featureModel.addPropositionalNode(node);
		astListNode = (AstListNode) astListNode.right;
	} while (astListNode != null);
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:18,代码来源:GuidslReader.java

示例8: getGUIDSL

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
public GUIDSL getGUIDSL() throws UnsupportedModelException{
	// bug: Have to redirect out
	PrintStream out = System.out;
	ByteArrayOutputStream fos = new ByteArrayOutputStream();
   	PrintStream ps = new PrintStream(fos);
   	System.setOut(ps);
	fm.dumpXML();
	System.setOut(out);
	String xml = new String(fos.toByteArray());
	try {
		fos.close();
	} catch (IOException e) {
	}
	ps.close();
	
	de.ovgu.featureide.fm.core.FeatureModel m = new de.ovgu.featureide.fm.core.FeatureModel();
	WaterlooReader wr = new WaterlooReader(m);
	xml = xml.substring(0, xml.indexOf("<meta>")) + xml.substring(xml.indexOf("<feature_tree>"));
	//System.out.println(xml);
	wr.readFromString(xml);
	
	return new GUIDSL(m);
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:24,代码来源:SXFM.java

示例9: sat_time

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
long sat_time(Map<String, String> argsMap)
		throws UnsupportedModelException, IOException,
		FeatureModelException, ContradictionException, TimeoutException {
	loadFM(argsMap.get("fm"));
	System.out.println("Satisfying the feature model");
	
	long start, end;
	
	SAT4JSolver s = null;
	s = cnf.getSAT4JSolver();
	//start = System.currentTimeMillis();
	start = System.nanoTime();
	boolean issat = s.isSatisfiable();
	//end = System.currentTimeMillis();
	end = System.nanoTime();
	System.out.println("SAT done: " + (end-start)/1000 + " microseconds, sat: " + issat);
	
	return (end-start)/1000;
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:20,代码来源:SPLCATool.java

示例10: testConvertToCNF

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Test
public void testConvertToCNF() throws UnsupportedModelException, IOException, FeatureModelException{
	for(String file : new FileUtility().traverseDirCollectFiles("TestData/Realistic")){
		SXFM fm = null;
		if(file.endsWith(".m")){
			System.out.println("Testing conversion GUIDSL file to CNF: " + file);
			GUIDSL m1 = new GUIDSL(new File(file));
			fm = m1.getSXFM();
		}else if(file.endsWith(".xml")){
			System.out.println("Testing conversion SXFM file to CNF: " + file);
			fm = new SXFM(file);
		}else continue;
		
		CNF cnf = fm.getCNF();
		
		assertNotNull(cnf);
	}
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:19,代码来源:ToCNFTest.java

示例11: testLimitCoverage

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Test
public void testLimitCoverage() throws IOException, UnsupportedModelException, FeatureModelException, TimeoutException, CoveringArrayGenerationException{
	GUIDSL m1 = new GUIDSL(new File("TestData/Realistic/Apl.m"));
	SXFM fm = m1.getSXFM();
	CNF cnf = fm.getCNF();
	CoveringArray ca = cnf.getCoveringArrayGenerator("ICPL", 2);
	ca.generate(75, Integer.MAX_VALUE);
	
	// Calculate the valid pairs
	List<Pair2> uncovered = cnf.getAllValidPairs(1);
	System.out.println("Valid pairs: " + uncovered.size());
	
	// Calculate the covered pairs
	List<List<Integer>> sols = ca.getSolutionsAsList();
	Set<Pair2> coveredPairs = ca.getCovInv(sols, uncovered);
	System.out.println("Covered pairs: " + coveredPairs.size());
	
	// Coverage
	System.out.println("Coverage: " + coveredPairs.size() + "/" + uncovered.size() + " = " + (float)coveredPairs.size()*100/uncovered.size() + "%");
	
	assertTrue(ca.getCoverage() >= (int)((float)coveredPairs.size()*100/uncovered.size()));
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:23,代码来源:TestLimitAndExpandCoverage.java

示例12: testCNFModelLoad2

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Test
public void testCNFModelLoad2() throws UnsupportedModelException, IOException, FeatureModelException, ContradictionException, TimeoutException, BDDExceededBuildingTimeException, java.util.concurrent.TimeoutException, CSVException{
	File testFile = new File("TestData/Realistic/Berkeley.cnf.ca1.csv");
	if(testFile.exists()){
		testFile.delete();
	}
	
	SPLCATool.main(new String [] {
			"-t", "t_wise",
			"-s", "1",
			"-fm", new File("TestData/Realistic/Berkeley.cnf").getAbsoluteFile().toString()
		}
	);
	
	assertTrue(testFile.exists());
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:17,代码来源:TestCmdLineInteraction.java

示例13: testDIMACSModelLoad2

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Test
public void testDIMACSModelLoad2() throws UnsupportedModelException, IOException, FeatureModelException, ContradictionException, TimeoutException, BDDExceededBuildingTimeException, java.util.concurrent.TimeoutException, CSVException{
	File testFile = new File("TestData/Realistic/Eshop-fm.dimacs.ca1.csv");
	if(testFile.exists()){
		testFile.delete();
	}
	
	SPLCATool.main(new String [] {
			"-t", "t_wise",
			"-s", "1",
			"-fm", new File("TestData/Realistic/Eshop-fm.dimacs").getAbsoluteFile().toString()
		}
	);
	
	assertTrue(testFile.exists());
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:17,代码来源:TestCmdLineInteraction.java

示例14: testSXFMModelLoad2

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Test
public void testSXFMModelLoad2() throws UnsupportedModelException, IOException, FeatureModelException, ContradictionException, TimeoutException, BDDExceededBuildingTimeException, java.util.concurrent.TimeoutException, CSVException{
	File testFile = new File("TestData/Realistic/smart_home_fm.xml.ca1.csv");
	if(testFile.exists()){
		testFile.delete();
	}
	
	SPLCATool.main(new String [] {
			"-t", "t_wise",
			"-s", "1",
			"-fm", new File("TestData/Realistic/smart_home_fm.xml").getAbsoluteFile().toString()
		}
	);
	
	assertTrue(testFile.exists());
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:17,代码来源:TestCmdLineInteraction.java

示例15: testGUIDSLModelLoad2

import de.ovgu.featureide.fm.core.io.UnsupportedModelException; //导入依赖的package包/类
@Test
public void testGUIDSLModelLoad2() throws UnsupportedModelException, IOException, FeatureModelException, ContradictionException, TimeoutException, BDDExceededBuildingTimeException, java.util.concurrent.TimeoutException, CSVException{
	File testFile = new File("TestData/Realistic/Violet.m.ca1.csv");
	if(testFile.exists()){
		testFile.delete();
	}
	
	SPLCATool.main(new String [] {
			"-t", "t_wise",
			"-s", "1",
			"-fm", new File("TestData/Realistic/Violet.m").getAbsoluteFile().toString()
		}
	);
	
	assertTrue(testFile.exists());
}
 
开发者ID:axel-halin,项目名称:Thesis-JHipster,代码行数:17,代码来源:TestCmdLineInteraction.java


注:本文中的de.ovgu.featureide.fm.core.io.UnsupportedModelException类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。