package com.vci.server.conf; import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; /** * 服务配置信息 * @author Jason * */ public class ServiceConf { private static String _serviceConf = "properties/service.xml"; private List _lstServiceTempl = new ArrayList(); public ServiceConf() {} public ServiceTempl[] getServiceTempls() { return _lstServiceTempl.toArray(new ServiceTempl[0]); } // public ServiceTempl getServiceTempl(String service) { // if (_mapServiceTempl.containsKey(service)) // return _mapServiceTempl.get(service); // // return null; // } public void AddServiceTempl(ServiceTempl templ) { if (templ == null) return; _lstServiceTempl.add(templ); } public static ServiceConf ReadConf() { try { SAXReader reader = new SAXReader(); Document document = reader.read(new File(_serviceConf)); Element root = document.getRootElement(); ServiceConf serviceConf = new ServiceConf(); // 读取服务模板定义信息 Iterator it = root.elementIterator("ServiceTempl"); while (it.hasNext()) { ServiceTempl templ = new ServiceTempl(); Element nodeTempl = (Element) it.next(); // 获取服务名称 // Attribute attrName = nodeTempl.attribute("name"); // if (attrName != null) { // templ.setName(attrName.getValue()); // } // 获取服务描述信息 Attribute attrDesc = nodeTempl.attribute("description"); if (attrDesc != null) { templ.setDescription(attrDesc.getValue()); } // 启动类 Attribute attrEntry = nodeTempl.attribute("entry"); if (attrEntry == null) continue; templ.setEntry(attrEntry.getValue()); serviceConf.AddServiceTempl(templ); } return serviceConf; } catch (DocumentException e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } } }