package com.vci.client.framework.delegate; import com.vci.client.ClientSession; import com.vci.client.LogonApplication; import com.vci.client.common.objects.UserEntityObject; import com.vci.client.framework.appConfig.object.AppConfigDetailObject; import com.vci.client.framework.delegate.ClientBaseDelegate; import com.vci.client.ui.exception.VCIException; import com.vci.corba.common.VCIError; import com.vci.corba.framework.data.AppConfigDetailInfo; /** * AppConfigDetail Client Delegate * */ public class AppConfigDetailClientDelegate extends ClientBaseDelegate{ /** * */ private static final long serialVersionUID = 1L; public AppConfigDetailClientDelegate(UserEntityObject userEntityObject) { super(userEntityObject); } /** * 添加、保存 AppConfigDetail 对象 * @param info AppConfigDetailInfo 对象 */ public String saveAppConfigDetail(AppConfigDetailObject object) throws VCIException{ try{ AppConfigDetailInfo info = this.convertAppConfigDetailObjectToAppConfigDetailInfo(object); return ClientSession.getFrameworkService().saveAppConfigDetail(info, userEntityInfo); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /** * 修改、更新 AppConfigDetail 对象 * @param info AppConfigDetailInfo 对象 */ public boolean updateAppConfigDetail(AppConfigDetailObject object) throws VCIException{ try{ AppConfigDetailInfo info = this.convertAppConfigDetailObjectToAppConfigDetailInfo(object); return ClientSession.getFrameworkService().updateAppConfigDetail(info, userEntityInfo); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /** * 根据 ID 删除 AppConfigDetail 对象(批量) * @param ids AppConfigDetail 对象的 ID 列表 */ public boolean deleteAppConfigDetail(String[] ids) throws VCIException{ try{ return ClientSession.getFrameworkService().deleteAppConfigDetail(ids, userEntityInfo); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /** * 返回全部的 AppConfigDetail 对象 */ public AppConfigDetailObject[] getAppConfigDetails() throws VCIException{ try{ AppConfigDetailInfo[] infos = ClientSession.getFrameworkService().getAppConfigDetails(userEntityInfo); return this.convertAppConfigDetailInfosToAppConfigDetailObjects(infos); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /** * 根据分类ID返回全部的 AppConfigDetail 对象 */ public AppConfigDetailObject[] getAppConfigDetailsByID(String clsfId) throws VCIException{ try{ AppConfigDetailInfo[] infos = ClientSession.getFrameworkService().getAppConfigDetailsByCatId(clsfId, userEntityInfo); return this.convertAppConfigDetailInfosToAppConfigDetailObjects(infos); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /** * 根据 ID 返回 AppConfigDetail 对象 * @param info AppConfigDetailInfo 对象 */ public AppConfigDetailObject getAppConfigDetailById(String id) throws VCIException{ try{ AppConfigDetailInfo info = ClientSession.getFrameworkService().getAppConfigDetailById(id, userEntityInfo); return this.convertAppConfigDetailInfoToAppConfigDetailObject(info); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /** * 根据 Key 返回 AppConfigDetail 对象 * @param info AppConfigDetailInfo 对象 */ public AppConfigDetailObject getAppConfigDetailByKey(String key) throws VCIException{ try{ AppConfigDetailInfo info = ClientSession.getFrameworkService().getAppConfigDetailByKey(key, userEntityInfo); return this.convertAppConfigDetailInfoToAppConfigDetailObject(info); }catch(VCIError e){ throw new VCIException(String.valueOf(e.code), e.messages); } } /************************* CORBA & CLIENT CONVERT **************************/ /** * 对象转换(批量),从 Client 对象转换到 Corba 对象 * @param infos * @return */ public AppConfigDetailInfo[] convertAppConfigDetailObjectsToAppConfigDetailInfos(AppConfigDetailObject[] objects){ AppConfigDetailInfo[] infos = new AppConfigDetailInfo[objects.length]; int i = 0; for(AppConfigDetailObject obj : objects){ infos[i++] = this.convertAppConfigDetailObjectToAppConfigDetailInfo(obj); } return infos; } /** * 对象转换,从 Client 对象转换到 Corba 对象 * @param infos * @return */ public AppConfigDetailInfo convertAppConfigDetailObjectToAppConfigDetailInfo(AppConfigDetailObject object){ AppConfigDetailInfo info = new AppConfigDetailInfo(); info.id = object.getId() == null ? "" : object.getId(); info.name = object.getName() == null ? "" : object.getName(); info.desc = object.getDesc() == null ? "" : object.getDesc(); info.key = object.getKey() == null ? "" : object.getKey(); info.value = object.getValue() == null ? "" : object.getValue(); info.categoryId = object.getCategoryId() == null ? "" : object.getCategoryId(); return info; } /** * 对象转换(批量),从 Corba 对象转换到 Client 对象 * @param infos * @return */ public AppConfigDetailObject[] convertAppConfigDetailInfosToAppConfigDetailObjects(AppConfigDetailInfo[] infos){ AppConfigDetailObject[] objects = new AppConfigDetailObject[infos.length]; int i = 0; for(AppConfigDetailInfo info : infos){ objects[i++] = this.convertAppConfigDetailInfoToAppConfigDetailObject(info); } return objects; } /** * 对象转换,从 Corba 对象转换到 Client 对象 * @param infos * @return */ public AppConfigDetailObject convertAppConfigDetailInfoToAppConfigDetailObject(AppConfigDetailInfo info){ AppConfigDetailObject object = new AppConfigDetailObject(); object.setId(info.id); object.setName(info.name); object.setDesc(info.desc); object.setKey(info.key); object.setValue(info.value); object.setCategoryId(info.categoryId); return object; } /** * 对象转换,从 Client 对象 对象转换到 Client 对象 * @param infos * @return */ public AppConfigDetailObject convertAppConfigDetailObjectToAppConfigDetailObject(AppConfigDetailObject object){ AppConfigDetailObject objectRes = new AppConfigDetailObject(); objectRes.setId(object.getId()); objectRes.setName(object.getName()); objectRes.setDesc(object.getDesc()); objectRes.setKey(object.getKey()); objectRes.setValue(object.getValue()); objectRes.setCategoryId(object.getCategoryId()); return objectRes; } }