Package cn.org.rapid_framework.generator.ext.ant

Source Code of cn.org.rapid_framework.generator.ext.ant.TableGenTask

package cn.org.rapid_framework.generator.ext.ant;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import cn.org.rapid_framework.generator.provider.db.table.TableFactory;
import cn.org.rapid_framework.generator.provider.db.table.model.Table;
import cn.org.rapid_framework.generator.util.BeanHelper;

public class TableGenTask extends BaseGeneratorTask {
    private String tableSqlName;
   
    @Override
    protected List<Map> getGeneratorContexts() {
        if("*".equals(tableSqlName)) {
            List result = new ArrayList();
            List<Table> tables = TableFactory.getInstance().getAllTables();
            for(Table t : tables) {
                Map map = toMap(t);
                result.add(map);
            }
            return result;
        }else {
            Table table = TableFactory.getInstance().getTable(tableSqlName);
            if(table == null) {
                log("没有找到该表:"+tableSqlName);
                return null;
            }
            Map map = toMap(table);
            return Arrays.asList(map);          
        }
    }

    private Map toMap(Table table) {
        Map map = new HashMap();
        map.putAll(BeanHelper.describe(table));
        map.put("table", table);
        return map;
    }

    public String getTableSqlName() {
        return tableSqlName;
    }

    public void setTableSqlName(String tableSqlName) {
        this.tableSqlName = tableSqlName;
    }

}
TOP

Related Classes of cn.org.rapid_framework.generator.ext.ant.TableGenTask

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.