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


Java OCL.newInstance方法代码示例

本文整理汇总了Java中org.eclipse.ocl.pivot.utilities.OCL.newInstance方法的典型用法代码示例。如果您正苦于以下问题:Java OCL.newInstance方法的具体用法?Java OCL.newInstance怎么用?Java OCL.newInstance使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.eclipse.ocl.pivot.utilities.OCL的用法示例。


在下文中一共展示了OCL.newInstance方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: execute

import org.eclipse.ocl.pivot.utilities.OCL; //导入方法依赖的package包/类
public static List<Diagnostic> execute(Model model){
	OCLstdlibStandaloneSetup.doSetup();
	EssentialOCLStandaloneSetup.doSetup();
	CompleteOCLStandaloneSetup.doSetup();
	OCLstdlib.install();				
	OCL ocl = OCL.newInstance();
	List<String> oclFilePaths = new ArrayList<String>();
	oclFilePaths.add("model/ontouml.ocl");
	if(checkTypes) oclFilePaths.add("model/types.ocl");
	if(checkRelationships) oclFilePaths.add("model/relationships.ocl");
	if(checkMetaAttributes) oclFilePaths.add("model/metaattributes.ocl");
	if(checkBinaryProperties) oclFilePaths.add("model/binproperties.ocl");
	if(checkDependencies) oclFilePaths.add("model/dependency.ocl");
	if(checkCardinalities) oclFilePaths.add("model/cardinalities.ocl");				
	ComposedEValidator composed = ComposedEValidator.install(OntoumlPackage.eINSTANCE);
	for(String oclPath: oclFilePaths){
		File file = new File(oclPath);
		URI oclURI = URI.createFileURI(file.getAbsolutePath());			
		CompleteOCLEObjectValidator myValidator = new CompleteOCLEObjectValidator(OntoumlPackage.eINSTANCE, oclURI, ocl.getEnvironmentFactory());
		EValidator.Registry.INSTANCE.put(OntoumlPackage.eINSTANCE, myValidator);
		composed.addChild(myValidator);
	}						
	Diagnostic diagnostics = Diagnostician.INSTANCE.validate(model);			
	return diagnostics.getChildren();
}
 
开发者ID:MenthorTools,项目名称:menthor-xcore,代码行数:26,代码来源:OntoumlDiagnostician.java

示例2: checkConstraint

import org.eclipse.ocl.pivot.utilities.OCL; //导入方法依赖的package包/类
public boolean checkConstraint(EObject modelObj, String oclConstraint) {

		OCL ocl = OCL.newInstance();

		try {
			OCLHelper helper = ocl.createOCLHelper(modelObj.eClass());
			ExpressionInOCL expression = helper.createInvariant(oclConstraint);
			return ocl.check(modelObj, expression);
		}
		catch (Exception e) {
			MMINTException.print(IStatus.WARNING, "Error in OCL constraint \"" + oclConstraint + "\" applied to model object " + modelObj + ", evaluating to false", e);
			return false;
		}
		finally {
			ocl.dispose();
		}
	}
 
开发者ID:adisandro,项目名称:MMINT,代码行数:18,代码来源:OCLReasoningEngine.java

示例3: evaluateQuery

import org.eclipse.ocl.pivot.utilities.OCL; //导入方法依赖的package包/类
public Object evaluateQuery(EObject modelObj, String oclConstraint) {

		OCL ocl = OCL.newInstance();

		try {
			OCLHelper helper = ocl.createOCLHelper(modelObj.eClass());
			ExpressionInOCL expression = helper.createQuery(oclConstraint);
			Object evaluation = ocl.evaluate(modelObj, expression);
			if (evaluation instanceof CollectionValue.Accumulator) {
				evaluation = ((CollectionValue.Accumulator) evaluation).getElements();
			}
			if (evaluation instanceof SetValue) {
				evaluation = ((SetValue) evaluation).getElements();
			}
			if (evaluation instanceof OrderedSetValue) {
				evaluation = ((OrderedSetValue) evaluation).getElements();
			}
			return evaluation;
		}
		catch (Exception e) {
			MMINTException.print(IStatus.ERROR, "OCL derivation error: " + oclConstraint, e);
			return null;
		}
	}
 
开发者ID:adisandro,项目名称:MMINT,代码行数:25,代码来源:OCLReasoningEngine.java

示例4: getPivotResource

import org.eclipse.ocl.pivot.utilities.OCL; //导入方法依赖的package包/类
private static Resource getPivotResource(URI oclDocumentURI) {
	
	CompleteOCLStandaloneSetup.doSetup();
	OCL ocl = OCL.newInstance();
	// parse the contents as an OCL document
	return ocl.parse(oclDocumentURI);
}
 
开发者ID:adolfosbh,项目名称:cs2as,代码行数:8,代码来源:TestLetExp.java

示例5: getOCL

import org.eclipse.ocl.pivot.utilities.OCL; //导入方法依赖的package包/类
private static OCL getOCL() {
			
	OCLstdlib.install();
	CompleteOCLStandaloneSetup.doSetup();
	return OCL.newInstance();
}
 
开发者ID:adolfosbh,项目名称:cs2as,代码行数:7,代码来源:DependencyAnalysis.java


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