亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? detailrowmaker.java

?? openmap java寫的開源數字地圖程序. 用applet實現,可以像google map 那樣放大縮小地圖.
?? JAVA
字號:
// **********************************************************************// <copyright>//  BBN Technologies//  10 Moulton Street//  Cambridge, MA 02138//  (617) 873-8000// //  Copyright (C) BBNT Solutions LLC. All rights reserved.// </copyright>// **********************************************************************// $Source: /cvs/distapps/openmap/src/vpfservlet/WEB-INF/src/com/bbn/openmap/vpfservlet/DetailRowMaker.java,v $// $Revision: 1.2.2.2 $ $Date: 2005/08/11 21:03:10 $ $Author: dietrick $// **********************************************************************package com.bbn.openmap.vpfservlet;import java.io.File;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import com.bbn.openmap.io.FormatException;import com.bbn.openmap.layer.util.html.TableRowElement;import com.bbn.openmap.layer.vpf.Constants;import com.bbn.openmap.layer.vpf.CoverageTable;import com.bbn.openmap.layer.vpf.DcwColumnInfo;import com.bbn.openmap.layer.vpf.DcwRecordFile;/** * A RowMaker class that will perform VDT (value description table) * lookups on selected columns in the table. */public class DetailRowMaker extends PlainRowMaker {    final HashMap intvdt;    final HashMap charvdt;    final DcwColumnInfo dcia[];    /**     * Constructor     *      * @param drf the table being parsed     * @param markupCols the column names of the columns to attempt     *        lookups for     */    public DetailRowMaker(DcwRecordFile drf, String[] markupCols) {        File pfile = new File(drf.getTableFile()).getParentFile();        String tableName = drf.getTableName();        intvdt = loadIntVDT(pfile, tableName);        charvdt = loadCharVDT(pfile, tableName);        DcwColumnInfo dc[] = drf.getColumnInfo();        if (markupCols == null) {            dcia = dc;        } else {            dcia = new DcwColumnInfo[dc.length];            for (int i = 0; i < markupCols.length; i++) {                int col = drf.whatColumn(markupCols[i]);                if (col != -1) {                    dcia[col] = dc[col];                }            }        }    }    public void addToRow(TableRowElement row, List l) {        int i = 0;        for (Iterator vals = l.listIterator(); vals.hasNext();) {            Object rval = vals.next();            String vdt = (dcia[i] != null) ? dcia[i].getVDT() : null;            if (vdt == null) {                row.addElement(rval.toString());            } else if (Constants.intVDTTableName.equals(vdt)                    && (rval instanceof Number)) {                int val = ((Number) rval).intValue();                CoverageIntVdt civ = new CoverageIntVdt(dcia[i].getColumnName(), val);                String lval = (String) intvdt.get(civ);                row.addElement((lval == null) ? ("[" + val + "]") : lval);            } else if (Constants.charVDTTableName.equals(vdt)                    && (rval instanceof String)) {                String val = (String) rval;                CoverageCharVdt civ = new CoverageCharVdt(dcia[i].getColumnName(), val);                String lval = (String) charvdt.get(civ);                row.addElement((lval == null) ? ("[" + val + "]") : lval);            } else {                row.addElement("Table Data Error!");            }            i++;        }    }    private HashMap loadIntVDT(File path, String tableName) {        HashMap hm = new HashMap();        try {            File vdt = new File(path, Constants.intVDTTableName);            if (vdt.canRead()) {                DcwRecordFile intvdt = new DcwRecordFile(vdt.toString());                int intcols[] = intvdt.lookupSchema(CoverageTable.VDTColumnNames,                        true,                        CoverageTable.intVDTschematype,                        CoverageTable.intVDTschemalength,                        false);                List al = new ArrayList(intvdt.getColumnCount());                while (intvdt.parseRow(al)) {                    String tab = (String) al.get(intcols[0]);                    if (!tableName.equalsIgnoreCase(tab)) {                        continue;                    }                    String attr = (String) al.get(intcols[1]);                    int val = ((Number) al.get(intcols[2])).intValue();                    String desc = ((String) al.get(intcols[3])).intern();                    hm.put(new CoverageIntVdt(attr, val), desc);                }                intvdt.close();            }        } catch (FormatException f) {        }        return hm;    }    private HashMap loadCharVDT(File path, String tableName) {        HashMap hm = new HashMap();        try {            File vdt = new File(path, Constants.charVDTTableName);            if (vdt.canRead()) {                DcwRecordFile charvdt = new DcwRecordFile(vdt.toString());                int charcols[] = charvdt.lookupSchema(CoverageTable.VDTColumnNames,                        true,                        CoverageTable.charVDTschematype,                        CoverageTable.charVDTschemalength,                        false);                ArrayList al = new ArrayList(charvdt.getColumnCount());                while (charvdt.parseRow(al)) {                    String tab = (String) al.get(charcols[0]);                    if (!tableName.equalsIgnoreCase(tab)) {                        continue;                    }                    String attr = (String) al.get(charcols[1]);                    String val = (String) al.get(charcols[2]);                    String desc = ((String) al.get(charcols[3])).intern();                    hm.put(new CoverageCharVdt(attr, val), desc);                }                charvdt.close();            }        } catch (FormatException f) {        }        return hm;    }}/** * A utility class used to map information from a VPF feature table to * its associated value in an int.vdt file. */class CoverageIntVdt {    /**     * the name of the attribute we are looking up (attribute is     * interned)     */    final String attribute;    /** the integer value we are looking up */    final int value;    /**     * Construct a new object     *      * @param a the value for the attribute member     * @param v the value for the value member     */    public CoverageIntVdt(String a, int v) {        attribute = a.toLowerCase().intern();        value = v;    }    /**     * Override the equals method. Two CoverageIntVdts are equal if     * and only iff their respective attribute and value members are     * equal.     */    public boolean equals(Object o) {        if (o instanceof CoverageIntVdt) {            CoverageIntVdt civ = (CoverageIntVdt) o;            // we can use == rather than String.equals(String) since            // attribute is interned.            return ((attribute == civ.attribute) && (value == civ.value));        } else {            return false;        }    }    /**     * Override hashcode. Compute a hashcode based on our member     * values, rather than our (base class) object identity.     */    public int hashCode() {        return (attribute.hashCode() ^ value);    }}/** * A utility class used to map information from a VPF feature table to * its associated value in an char.vdt file. */class CoverageCharVdt {    /**     * the name of the attribute we are looking up (attribute is     * interned)     */    final String attribute;    /** the character value we are looking up (value is interned) */    final String value;    /**     * Construct a new object     *      * @param a the value for the attribute member     * @param v the value for the value member     */    public CoverageCharVdt(String a, String v) {        attribute = a.toLowerCase().intern();        value = v.intern();    }    /**     * Override the equals method. Two CoverageIntVdts are equal if     * and only iff their respective attribute and value members are     * equal.     */    public boolean equals(Object o) {        if (o instanceof CoverageCharVdt) {            CoverageCharVdt civ = (CoverageCharVdt) o;            // we can use == rather than String.equals(String) since            // attribute, and value are interned.            return ((attribute == civ.attribute) && (value == civ.value));        } else {            return false;        }    }    /**     * Override hashcode. Compute a hashcode based on our member     * values, rather than our (base class) object identity.     */    public int hashCode() {        return (attribute.hashCode() ^ value.hashCode());    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产乱码最新视频 | 精品成人私密视频| 中文一区二区完整视频在线观看| 亚洲天堂网中文字| 免费观看日韩电影| 色88888久久久久久影院按摩 | 欧美在线制服丝袜| 国产亚洲精品bt天堂精选| 日日欢夜夜爽一区| 91精品福利在线| 国产精品护士白丝一区av| 久久国产精品一区二区| 欧美日韩国产综合草草| 18成人在线视频| 国产v日产∨综合v精品视频| 欧美大胆一级视频| 午夜电影网亚洲视频| 91免费小视频| 中文字幕亚洲一区二区va在线| 国产一区二区福利视频| 日韩精品一区二区三区蜜臀| 五月天丁香久久| 欧美日韩一区不卡| 亚洲观看高清完整版在线观看| www.日韩av| 综合久久国产九一剧情麻豆| 成人av电影在线网| 亚洲少妇屁股交4| 成人高清免费在线播放| 国产精品狼人久久影院观看方式| 国产99久久精品| 1024成人网| 色综合色综合色综合色综合色综合| 欧美极品xxx| 在线看一区二区| 一区二区中文视频| 在线观看91精品国产入口| 亚洲精品乱码久久久久久久久| 91一区一区三区| 亚洲国产成人91porn| 制服丝袜中文字幕一区| 蜜桃久久精品一区二区| 久久老女人爱爱| 99久久精品国产一区二区三区| 日韩理论在线观看| 欧美日韩国产一级二级| 蜜臀av一区二区在线免费观看 | 国产精品久久综合| 色哟哟欧美精品| 亚洲高清久久久| 欧美一区二视频| 国产一区视频网站| 中文字幕一区二区三区在线播放| 色综合久久88色综合天天免费| 亚洲午夜精品久久久久久久久| 日韩一区二区精品在线观看| 蜜桃免费网站一区二区三区| 欧美国产国产综合| 欧美亚洲一区二区在线观看| 麻豆国产精品一区二区三区| 久久精品一二三| 色综合久久综合中文综合网| 日本不卡在线视频| 国产精品美日韩| 欧美精品精品一区| 成人精品高清在线| 日本一不卡视频| 国产精品色眯眯| 欧美理论片在线| 成人激情小说乱人伦| 日本成人在线一区| 亚洲视频综合在线| 精品成人在线观看| 欧美色综合网站| 成人av在线一区二区三区| 午夜精品免费在线| 国产精品高潮呻吟| 91精品啪在线观看国产60岁| 99久久er热在这里只有精品66| 日韩av电影免费观看高清完整版在线观看| 久久久激情视频| 欧美一区二区三区免费视频| 色婷婷综合久色| 成人激情图片网| 国产一区二区主播在线| 丝袜美腿亚洲一区二区图片| 亚洲欧美激情小说另类| 国产日韩v精品一区二区| 制服.丝袜.亚洲.另类.中文| 91国产免费看| 成人免费毛片片v| 国产在线不卡视频| 久久av资源网| 日韩**一区毛片| 亚洲成av人片www| 一区av在线播放| 亚洲日本va在线观看| 亚洲电影一级片| 亚洲人成7777| 亚洲天堂成人网| 国产精品视频免费看| 国产欧美精品日韩区二区麻豆天美| 91精品在线观看入口| 欧美精品一二三| 欧美精品丝袜中出| 欧美日韩国产精品成人| 欧美日韩日本视频| 欧美精品丝袜中出| 欧美日韩国产成人在线免费| 欧美日韩国产一级二级| 欧美日韩国产综合视频在线观看| 欧美性淫爽ww久久久久无| 欧洲精品在线观看| 欧美四级电影网| 欧美视频三区在线播放| 欧美日韩国产a| 91精品免费在线观看| 欧美一级夜夜爽| 精品国产乱码久久久久久老虎| 日韩精品中文字幕在线一区| 日韩精品一区二区三区四区| 26uuu精品一区二区三区四区在线| 日韩欧美国产高清| 久久女同性恋中文字幕| 日本一区二区久久| 一区二区三区四区亚洲| 日韩成人精品视频| 国产一区二区看久久| av成人老司机| 欧美私人免费视频| 欧美一级在线免费| 日本一二三不卡| 一区二区在线观看不卡| 午夜精品在线视频一区| 国产一区二区在线免费观看| 成人国产一区二区三区精品| 91国产免费观看| 欧美sm美女调教| |精品福利一区二区三区| 亚洲大片在线观看| 国产精品一区二区免费不卡| 92国产精品观看| 日韩视频在线永久播放| 中文字幕巨乱亚洲| 一区二区三区电影在线播| 日本欧美在线看| 成人app在线观看| 国产精品久久久久久久久免费丝袜 | 亚洲一区在线观看视频| 蜜臀久久99精品久久久画质超高清 | 日韩手机在线导航| 亚洲成人免费在线| 国内精品免费**视频| 99精品欧美一区二区蜜桃免费 | 久久国产人妖系列| 99视频在线精品| 91精品国产一区二区三区蜜臀 | 久久久亚洲精华液精华液精华液 | 国产精品沙发午睡系列990531| 亚洲大片一区二区三区| 高清不卡一区二区| 日韩午夜电影av| 亚洲精品写真福利| 国产成人免费9x9x人网站视频| 欧美日本一区二区| 国产精品的网站| 狠狠色丁香久久婷婷综| 欧美艳星brazzers| 国产精品久久久久久久久免费相片| 日韩激情视频网站| 91久久精品一区二区| 中文字幕不卡在线| 国产一区二区三区观看| 欧美一级欧美三级在线观看| 亚洲色大成网站www久久九九| 精品一区中文字幕| 777午夜精品视频在线播放| 亚洲欧美色一区| av不卡一区二区三区| 久久久亚洲国产美女国产盗摄 | 久久久久九九视频| 蜜臀久久99精品久久久画质超高清| 在线观看一区不卡| 亚洲欧美日韩国产成人精品影院| 国产一区二区在线影院| 欧美大黄免费观看| 蜜臀av性久久久久av蜜臀妖精| 在线免费观看视频一区| 亚洲欧美乱综合| 91麻豆精品在线观看| 国产精品成人网| 99精品在线免费| 国产精品国产三级国产专播品爱网| 国产成人免费在线视频| 国产亚洲欧洲997久久综合| 91在线精品一区二区| 日韩一区中文字幕| 99久久久久久| 一区二区三区免费| 欧美性猛交xxxxxxxx|