Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > EMFt OCL中添加自定义操作
【标  题】:EMFt OCL中添加自定义操作
【关键字】:EMFt,OCL
【来  源】:http://blog.csdn.net/wq237wq/archive/2006/08/29/1136270.aspx

EMFt OCL中添加自定义操作

Your Ad Here

EMFt OCL中对OCL标准库操作的扩展操作在package org.eclipse.emf.ocl.expressions.impl里面 

具体的方法是public Object visitOperationCallExp(OperationCallExp oc) {}

 

// if source is undefined and the operation is not
                
// undefined, then this expression is invalid
                if (isUndefined(sourceVal)
                        
&& opCode != PredefinedType.OCL_IS_UNDEFINED
                        
&& opCode != PredefinedType.OCL_IS_INVALID)
                    
return Types.OCL_INVALID;

然后处理对应的operation

 

// evaluate this operation
                switch (opCode) {
                        
                    
case PredefinedType.MINUS:
                        
// Integer::minus()
                        if (sourceVal instanceof Integer)
                            
return new Integer(-((Integer) sourceVal)
                                .intValue());

                        
// Double::minus()
                        return new Double(-((Double) sourceVal).doubleValue());

 

其中toUpper()这个方法是对OCL的扩展

 

case PredefinedType.TO_UPPER:
                        
// String::toUpper()
                        return UCharacter.toUpperCase((String) sourceVal);

 

我们可以来分析一下这其中扩展的内容

  int opCode = oc.getOperationCode();

对于toUpper这个操作来说,其对应的操作码是29

PredefinedType里面

 int TO_UPPER = 29;
 String TO_UPPER_NAME = "toUpper"; //$NON-NLS-1$

tomcat下配置数据库连接池:【上一篇】
JAVA WEB开发中的几个开源工具:【下一篇】
【相关文章】
  • Kent OCL
  • _doClick('$Refresh', this, '_self', '#_RefreshXJL'
  • XDoclet简化Struts开发
  • 体验xdoclet+struts- -
  • ANT忠诚伴侣XDoclet下生成struts配置的基本任务手册- -
  • 用 XDoclet 减少代码膨胀
  • Xdoclet是什么?
  • XDoclet 说明
  • xdoclet 与 hibernate
  • jboss's XDoclet 学习笔记
  • 【随机文章】
  • Java Map 集合类简介
  • Virtual PC安装红旗Linux花屏问题解决方案
  • 《UML实务》序言
  • 用Linux构造嵌入式实时应用系统
  • 按原顺序插入数据
  • 脸上长痘痘怎么办去痘痘的方法去痘痘的办法怎么去痘痘去痘痘方法有哪些
  • 郑州国家级经济技术开发区合同
  • 用API得到局域网中可用SqlServer服务器列表
  • Indigo Beta2要支持REST
  • 学数学也要学点偷懒的技术
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.