package org.fanhongtao.db; import java.net.URL; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import org.fanhongtao.log.LogUtils; import org.fanhongtao.xml.DigesterUtils; /** * @author Dharma * @created 2009-6-3 */ public class TableMgr { private Map<String, Table> tableMap = new HashMap<String, Table>(); public void addTable(Table table) { tableMap.put(table.getName(), table); } public void adjust() { for (Iterator<Map.Entry<String, Table>> iter = tableMap.entrySet().iterator(); iter.hasNext();) { Map.Entry<String, Table> entry = iter.next(); Table table = entry.getValue(); table.adjust(); } } @Override public String toString() { StringBuffer buf = new StringBuffer(1024); for (Iterator<Map.Entry<String, Table>> iter = tableMap.entrySet().iterator(); iter.hasNext();) { Map.Entry<String, Table> entry = iter.next(); Table table = entry.getValue(); buf.append(table.toString()); buf.append("\r\n"); } return buf.toString(); } public static void main(String[] args) { LogUtils.initBasicLog(); TableMgr tableMgr = new TableMgr(); URL inputUrl = tableMgr.getClass().getResource("tables.xml"); URL ruleUrl = tableMgr.getClass().getResource("tables_rule.xml"); tableMgr = (TableMgr) DigesterUtils.parse(tableMgr, inputUrl, ruleUrl); tableMgr.adjust(); System.out.println(tableMgr.toString()); } }