/** * Դ�������ƣ�ParameterRefPropertyHandler.java * �������Ȩ���������ӹɷ����޹�˾ ��Ȩ���� * ϵͳ���ƣ�JRES Studio * ģ�����ƣ�com.hundsun.ares.studio.biz.core * ����˵����$desc * ����ĵ��� * ���ߣ�sundl */ package com.hundsun.ares.studio.biz.excel.handlers; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature; import com.hundsun.ares.studio.biz.BizPackage; import com.hundsun.ares.studio.biz.Parameter; import com.hundsun.ares.studio.biz.constants.IBizRefType; import com.hundsun.ares.studio.core.model.CorePackage; import com.hundsun.ares.studio.jres.metadata.constant.IMetadataRefType; import com.hundsun.ares.studio.jres.model.metadata.MetadataPackage; import com.hundsun.ares.studio.reference.RefEMFPropertyHandler; /** * ��������������˵����������Ϣ��RefEMFPropertyHandler�� * ����ʵ������Ϊ��ʵ�����ֱ�׼�ֶ����͵IJ����ͷDZ�׼�ֶ����͵IJ������������Ҫ���ֿ���ֱ��ʹ�� * RefEMFPropertyHandler * @author sundl * */ public class ParameterRefPropertyHandler extends RefEMFPropertyHandler { public ParameterRefPropertyHandler(EStructuralFeature targetFeature, EStructuralFeature feature) { super(BizPackage.Literals.PARAMETER__ID, null, targetFeature, feature); } protected String getRefType(EObject object) { if (object instanceof Parameter) { Parameter p = (Parameter) object; switch (p.getParamType()) { case STD_FIELD: return IMetadataRefType.StdField; // ���ñ�׼�ֶ� case OBJECT: return IBizRefType.Object; // ���ö��� case NON_STD_FIELD: case COMPONENT: return null; default: break; } } return null; } @Override protected EStructuralFeature getFeature(EObject object) { if (object instanceof Parameter) { Parameter p = (Parameter) object; switch (p.getParamType()) { case OBJECT: EStructuralFeature feature = super.getFeature(object); if (feature == MetadataPackage.Literals.NAMED_ELEMENT__CHINESE_NAME) { feature = CorePackage.Literals.BASIC_RESOURCE_INFO__CHINESE_NAME; } else if (feature == MetadataPackage.Literals.NAMED_ELEMENT__DESCRIPTION) { feature = CorePackage.Literals.BASIC_RESOURCE_INFO__DESCRIPTION; } return feature; default: return super.getFeature(object); } } return super.getFeature(object); } }