package com.vci.client.omd.inter.impl; import java.util.ArrayList; import com.vci.client.omd.attribpool.ui.APClient; import com.vci.client.omd.enumManager.toOutside.InterEM; import com.vci.client.common.ClientLog4j; import com.vci.corba.omd.atm.AttribItem; import com.vci.corba.omd.etm.EnumChild; import com.vci.corba.omd.etm.EnumItem; import com.vci.corba.common.VCIError; public class InterEMForAPImpl implements InterEM{ @Override public ArrayList getUsedNameList(String emName){ String[] apNameArray = null; try { apNameArray = APClient.getService().getAPNamesByEMName(emName); } catch (VCIError e) { //e.printStackTrace(); ClientLog4j.logger.error(e); } return convertArrayToList(apNameArray); } @Override public boolean isEnumItemUsed(String enumItemName) { ArrayList list = getUsedNameList(enumItemName); if(list != null && list.size() > 0){ return true; } return false; } @Override public boolean isEnumChildUsed(String enumItemName, String enumChildName) { // TODO Auto-generated method stub return false; } /** * * @param objArray * @return */ private ArrayList convertArrayToList(String[] objArray){ if(objArray == null){ return null; } ArrayList objList = new ArrayList(); for(int i = 0; i < objArray.length; i++){ String obj = objArray[i]; objList.add(obj); } return objList; } /** * 更改使用枚举的属性值域 */ @Override public void updateAtt(EnumItem ei) { String rage = ""; if(ei.type.equalsIgnoreCase("INTEGER")){ for(EnumChild ec : ei.children){ rage = rage + "=" + ec.value; rage = rage + ";"; } }else{ for(EnumChild ec : ei.children){ rage = rage + ec.value; rage = rage + ";"; } } rage = rage.substring(0, rage.lastIndexOf(";")); try { String[] attNames = APClient.getService().getAPNamesByEMName(ei.name); if(attNames.length > 0){ AttribItem[] atts = APClient.getService().getAttribItemsByNames(attNames); for(AttribItem att : atts){ att.rage = rage; APClient.getService().modifyAbItem(att); } } } catch (VCIError e) { //e.printStackTrace(); ClientLog4j.logger.error(e); } } }