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

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

?? attributetypes.java

?? .mif .mid file read and write
?? JAVA
字號:
/*
 *    GeoTools - OpenSource mapping toolkit
 *    http://geotools.org
 *    (C) 2005-2006, GeoTools Project Managment Committee (PMC)
 * 
 *    This library is free software; you can redistribute it and/or
 *    modify it under the terms of the GNU Lesser General Public
 *    License as published by the Free Software Foundation;
 *    version 2.1 of the License.
 *
 *    This library is distributed in the hope that it will be useful,
 *    but WITHOUT ANY WARRANTY; without even the implied warranty of
 *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *    Lesser General Public License for more details.
 */
package org.geotools.feature;

import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

import org.geotools.filter.CompareFilter;
import org.geotools.filter.FilterType;
import org.geotools.filter.Filters;
import org.geotools.filter.LengthFunction;
import org.geotools.filter.LiteralExpression;
import org.geotools.filter.LogicFilter;
import org.opengis.feature.type.AttributeDescriptor;
import org.opengis.filter.Filter;


/**
 * <p>
 * Proposal: AttributeType utilities class.
 * </p>
 * @author Luca S. Percich, AMA-MI
 * @source $URL: http://svn.geotools.org/trunk/modules/unsupported/mif/src/main/java/org/geotools/feature/AttributeTypes.java $
 */
public class AttributeTypes {
    // Returned by getFieldLength() functions when field length is undefined
    public static final int FIELD_LENGTH_UNDEFINED = 0;

    /**
     * <p>
     * Returns the field length defined via a restrinction for an attribute
     * type
     * </p>
     * 
     * <p>
     * This should be considered the maximum allowed length for the given
     * attribute, which means:
     * 
     * <ul>
     * <li>
     * the max number of chars in a <b>string</b>
     * </li>
     * <li>
     * the maximum precision for a <b>float</b>
     * </li>
     * <li>
     * no meaning for <b>Integer</b>, <b>Boolean</b>, <b>Date</b>?
     * </li>
     * </ul>
     * </p>
     *
     * @param attr The attribute type
     * @param defaultLength The default field length
     *
     * @return The defined field length, or defaultLength if no maximum length
     *         has been defined.
     */
    public static int getFieldLength(AttributeDescriptor attr, int defaultLength) {
        int length = getFieldLengthFromFilter(attr.getType().getRestrictions());

        if (length == FIELD_LENGTH_UNDEFINED) {
            length = defaultLength;
        }

        return length;
    }

    /**
     * <p>
     * Returns the field length defined via a restrinction for an attribute
     * type
     * </p>
     *
     * @param attr
     *
     * @return the defined field length, or FIELD_LENGTH_UNDEFINED if no
     *         maximum length has been defined.
     */
    public static int getFieldLength(AttributeDescriptor attr) {
        return getFieldLength(attr, FIELD_LENGTH_UNDEFINED);
    }

    /**
     * <p>
     * Obtains a field length from a filter possibly containing a
     * LengthFunction expression
     * </p>
     *
     * @param filter the given filter
     *
     * @return The maximum field length found in the filter, or
     *         FIELD_LENGTH_UNDEFINED if none was found;
     */
    public static int getFieldLengthFromFilter(List<Filter> filterList) {
		int length = FIELD_LENGTH_UNDEFINED;

		for (Filter filter : filterList) {
			if ((filter != null) && (filter != Filter.EXCLUDE)
					&& (filter != Filter.INCLUDE)) {
				short filterType = Filters.getFilterType(filter);

				if ((filterType == FilterType.COMPARE_LESS_THAN)
						|| (filterType == FilterType.COMPARE_LESS_THAN_EQUAL)
						|| (filterType == FilterType.COMPARE_EQUALS)) {
					try {
						CompareFilter cf = (CompareFilter) filter;

						if (cf.getLeftValue() instanceof LengthFunction) {
							length = Integer.parseInt(((LiteralExpression) cf
									.getRightValue()).getLiteral().toString());
						} else {
							if (cf.getRightValue() instanceof LengthFunction) {
								length = Integer
										.parseInt(((LiteralExpression) cf
												.getLeftValue()).getLiteral()
												.toString());
							}
						}

						if (filterType == FilterType.COMPARE_LESS_THAN) {
							length--;
						}
					} catch (NumberFormatException e) {
						continue; // try the next thing
					}

					// In case of a complex filter, looks for the maximum defined length in filter
				} else if ((filterType == FilterType.LOGIC_AND)
						|| (filterType == FilterType.LOGIC_OR)) {
					for (Iterator it = ((LogicFilter) filter)
							.getFilterIterator(); it.hasNext();) {
						Filter subFilter = (Filter) it.next();
						int subLength = getFieldLengthFromFilter(Arrays.asList(new Filter[]{subFilter}));

						if (subLength > length) {
							length = subLength;
						}
					}
				}
			}
		}
		return length;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久天堂av| 久久综合五月天婷婷伊人| 九色综合狠狠综合久久| 亚洲色图在线看| 精品国产麻豆免费人成网站| 在线国产亚洲欧美| 国产不卡视频在线播放| 首页亚洲欧美制服丝腿| 中文字幕在线一区| 欧美va亚洲va| 欧美日韩国产三级| 色综合一区二区| 国产一区欧美日韩| 奇米精品一区二区三区四区| 亚洲综合一二区| 国产精品不卡在线观看| 日韩精品一区二区在线观看| 欧美久久久久免费| 欧美天天综合网| 91在线一区二区| 成人午夜看片网址| 国产精品中文有码| 极品美女销魂一区二区三区 | 免费成人美女在线观看| 亚洲人123区| 自拍偷拍国产精品| 国产精品短视频| 国产精品嫩草99a| 久久久精品中文字幕麻豆发布| 欧美一级理论性理论a| 欧美高清激情brazzers| 在线观看日韩国产| 色88888久久久久久影院按摩 | 在线免费一区三区| 91论坛在线播放| 99精品久久99久久久久| 91在线你懂得| 91在线观看视频| 色婷婷综合激情| 在线中文字幕一区| 欧美性欧美巨大黑白大战| 欧美在线free| 欧美日韩国产色站一区二区三区| 欧美女孩性生活视频| 欧美精品欧美精品系列| 日韩欧美一区在线观看| 欧美成人精品高清在线播放 | 亚洲一级片在线观看| 夜夜嗨av一区二区三区中文字幕 | 欧美精品一区二区三区蜜桃视频| 日韩视频在线一区二区| 精品成a人在线观看| 久久久久久免费网| 国产精品久久久久久久久果冻传媒| 国产精品家庭影院| 亚洲在线观看免费| 青青草成人在线观看| 国内精品国产成人国产三级粉色| 国产一区二区视频在线| 本田岬高潮一区二区三区| 99精品黄色片免费大全| 欧美日韩综合色| 久久综合久久久久88| 一区在线观看视频| 肉色丝袜一区二区| 国产精品一区二区黑丝| www.日本不卡| 欧美日韩视频在线观看一区二区三区| 91麻豆精品国产91久久久使用方法| 日韩免费性生活视频播放| 国产精品视频一二三| 一区二区高清视频在线观看| 免费视频一区二区| 99国内精品久久| 91麻豆精品国产91久久久久久久久 | 国产一区二区不卡在线| 91亚洲精华国产精华精华液| 欧美美女激情18p| 久久久久久久久久看片| 亚洲一区在线看| 国产精品1024| 欧美色男人天堂| 国产偷国产偷亚洲高清人白洁| 亚洲精品视频一区| 国产福利一区二区三区在线视频| 94-欧美-setu| 欧美草草影院在线视频| 亚洲精品久久7777| 国产一区二区在线电影| 欧美日韩aaa| 国产精品少妇自拍| 日韩成人午夜精品| 91网址在线看| 久久久久久久综合日本| 香蕉影视欧美成人| 91在线小视频| 久久精品亚洲麻豆av一区二区 | 在线精品视频免费播放| 久久久久国产精品免费免费搜索| 亚洲黄色尤物视频| 福利视频网站一区二区三区| 欧美一区二区在线免费播放| 亚洲视频一区二区在线观看| 国产乱国产乱300精品| 在线播放国产精品二区一二区四区| 国产精品乱人伦一区二区| 日本免费新一区视频| 欧美网站一区二区| 亚洲精品免费播放| 成人小视频在线观看| 久久日韩精品一区二区五区| 日韩精品一卡二卡三卡四卡无卡| 色婷婷一区二区| 亚洲欧美激情视频在线观看一区二区三区| 精品亚洲成av人在线观看| 欧美一区二区私人影院日本| 亚洲午夜成aⅴ人片| 一道本成人在线| 亚洲欧洲日产国码二区| 国产精品一品二品| 久久综合九色综合久久久精品综合 | 宅男噜噜噜66一区二区66| 亚洲一级二级三级| 欧美自拍丝袜亚洲| 亚洲一区av在线| 在线观看免费亚洲| 亚洲午夜激情网站| 欧美午夜影院一区| 亚洲成人自拍偷拍| 欧美又粗又大又爽| 亚洲一区在线观看免费观看电影高清| 色婷婷久久一区二区三区麻豆| 国产精品夫妻自拍| 91热门视频在线观看| 亚洲日本va午夜在线电影| 99久久久国产精品| 综合激情网...| av一二三不卡影片| 国产精品乱码人人做人人爱| 国产91精品精华液一区二区三区| 日本一区二区成人| www.成人网.com| 一区二区三区资源| 欧美日韩dvd在线观看| 日本不卡一区二区三区 | 国产喂奶挤奶一区二区三区| 国产电影一区在线| ●精品国产综合乱码久久久久| 99视频在线观看一区三区| 亚洲人妖av一区二区| 日本道精品一区二区三区| 一区二区三区四区五区视频在线观看| 91视频免费播放| 国产资源精品在线观看| 欧美精品一区男女天堂| 国产高清精品久久久久| 一区二区中文视频| 欧美性受xxxx黑人xyx| 麻豆91在线观看| 中文字幕av资源一区| 972aa.com艺术欧美| 丝袜美腿亚洲综合| 国产视频视频一区| 在线亚洲免费视频| 蜜桃精品视频在线观看| 欧美激情在线看| 欧美日韩成人综合天天影院| 国产乱色国产精品免费视频| 一区二区三区在线免费| 日韩欧美中文字幕公布| 不卡的av电影| 丝袜美腿亚洲一区| 国产精品午夜电影| 欧美精品亚洲二区| 粉嫩绯色av一区二区在线观看| 一区二区三区中文在线观看| 日韩欧美一二三四区| av不卡免费电影| 久久 天天综合| 一区二区三区在线播放| 日韩三级电影网址| 91美女在线视频| 精品一区中文字幕| 一区二区激情小说| 欧美国产精品一区二区| 91麻豆精品国产无毒不卡在线观看| 成人丝袜高跟foot| 理论片日本一区| 亚洲综合网站在线观看| 国产日产欧美一区| 欧美一区二区三区免费在线看| 成人在线一区二区三区| 亚洲不卡一区二区三区| 1区2区3区欧美| 精品1区2区在线观看| 欧美日本一道本| 色女孩综合影院| 成人免费视频免费观看| 精品一区二区在线免费观看| 亚洲成在人线在线播放|