/** * @Description: 解析注册xml * * @author [email protected] * @param @param doc * @param @return * @return VideoDisplayDevice * @throws */ public VideoDisplayDevice XMLToObject(Document doc) { VideoDisplayDevice displayRegister = new VideoDisplayDevice(); // XML文档解析 Element rootElement = doc.getRootElement(); Element DeviceNumberElement = rootElement.getChild("DeviceNumber"); Element DeviceIPElement = rootElement.getChild("DeviceIP"); Element DeviceLinkTypeElement = rootElement.getChild("DeviceLinkType"); // 得到设备编号 String DeviceNumber = DeviceNumberElement.getText(); String DeviceIP = DeviceIPElement.getText(); displayRegister.setDeviceNumber(DeviceNumber); displayRegister.setIp(DeviceIP); // 得到设备连接类型 int deviceLinkType = Integer.parseInt(DeviceLinkTypeElement.getText()); if (deviceLinkType == 1) { displayRegister.setLinkType(DeviceLinkType.LAN); } else if (deviceLinkType == 2) { displayRegister.setLinkType(DeviceLinkType.ADSL); } return displayRegister; }
@Override public Document proccess(RequestObject req) throws BusinessException { Document doc = phaseXML(req); // 获取注册信息 VideoDisplayDevice displayRegister = XMLToObject(doc); // 查询显示服务器信息 VideoDisplayDevice displayRecord = displayServerManager.getVideoDisplayByDeviceNumber(displayRegister.getDeviceNumber()); // 注册显示服务器 displayRecord.setIp(displayRegister.getIp()); displayRecord.setLinkType(displayRegister.getLinkType()); displayRecord.setNaming( displayRecord.getId() + NamingUtil.NAMING_SPLIT + req.getAccessId() + NamingUtil.NAMING_SPLIT + ResourceType.CMS_ID); displayServerManager.displayRegister(displayRecord); // 更新VOC Naming List<VideoOutputChannel> vocList = vocManager.listVocByDisplayId(displayRecord.getId()); Iterator<VideoOutputChannel> its = vocList.iterator(); while (its.hasNext()) { VideoOutputChannel voc = (VideoOutputChannel) its.next(); voc.setNaming( voc.getId() + NamingUtil.NAMING_SPLIT + displayRecord.getId() + NamingUtil.NAMING_SPLIT + req.getAccessId() + NamingUtil.NAMING_SPLIT + ResourceType.CMS_ID); vocManager.updateByPrimaryKeySelective(voc); } // 返回 Document rtn = ObjectToXML(displayRecord); return rtn; }