WEB开发网      婵犻潧鍊婚弲顐︽偟椤栨稓闄勯柦妯侯槸閻庤霉濠婂骸浜剧紒杈ㄥ笚閹峰懘鎮╅崹顐ゆ殸婵炴垶鎸撮崑鎾趁归悩鐑橆棄闁搞劌瀛╃粋宥夘敃閿濆柊锕傛煙鐎涙ê鐏f繝濠冨灴閹啴宕熼鍡╀紘婵炲濮惧Λ鍕叏閳哄懎绀夋繛鎴濈-楠炪垽鎮归崶褍妲婚柛銊ュ缁傚秹鏁撻敓锟� ---闂佹寧娲╅幏锟�
开发学院软件开发Java 使用 EMF Validation 框架来验证 EMF 模型 阅读

使用 EMF Validation 框架来验证 EMF 模型

 2010-03-03 00:00:00 来源:WEB开发网 闂侀潧妫撮幏锟�闂佸憡鍨电换鎰版儍椤掑倵鍋撳☉娆嶄沪缂傚稄鎷�婵犫拃鍛粶闁靛洤娲ㄩ埀顒佺⊕閵囩偟绱為敓锟�闂侀潧妫撮幏锟�  闂佺ǹ绻楀▍鏇㈠极閻愭娑樷枎閹邦剛娉氶梺鍛婎殔濞层劌鈻撻幋婵愬殫妞ゆ梻鍘х憴锟�
核心提示: 批量验证模式的示例代码如清单 1 所示:清单 1. 批量验证模式的示例代码Listobjects=myResource.getContents();IValidatorvalidator=ModelValidationService.getInstance().newValidator(Eval

批量验证模式的示例代码如清单 1 所示:

清单 1. 批量验证模式的示例代码

 List objects = myResource.getContents(); 
 IValidator validator = ModelValidationService.getInstance().newValidator(EvaluationMode.BATCH); 
 IStatus results = validator.validate(objects); 
 if (!results.isOK()) { 
  ErrorDialog.openError(null, "Validation", "Validation Failed", results); 
 } 

实时验证模式则用来实时地对对象内的属性(值)变更进行校验。和批量验证模式不同的是,它的输入是属性(值)变更的通知消息,清单 2 就是实时验证模式的代码示例。

清单 2. 实时验证模式的代码示例

 List notifications = transaction.getChanges(); 
 IValidator validator = ModelValidationService.getInstance(). 
 newValidator(EvaluationMode.LIVE); 
 IStatus results = validator.validate(notifications); 
 
 if (!results.isOK()) { 
  ErrorDialog.openError(null, "Validation", "Validation Failed", results); 
 } 

约束绑定(Constraint Binding)

定义了这么多的约束,具体的应用又是如何选择约束来完成任务呢?约束绑定就是设计来完成这个任务的 ,通过 org.eclipse.emf.validation.constraintBindings扩展点,应用可以明确出它拥有的对象,绑定到它所需要的约束。这样验证操作就能够确保对象符合了相应的约束了。在下面的章节将会详细介绍如何进行约束绑定。

使用 EMF Validation Framework 来“保护”library 模型

上一页  1 2 3 4 5 6 7 8  下一页

Tags:使用 EMF Validation

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接