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

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

?? namespace.java

?? openlogic-jdom-1.1-all-src-1.zip 可以用于操作xml文件
?? JAVA
字號:
/*--  $Id: Namespace.java,v 1.43 2007/11/10 05:28:59 jhunter Exp $ Copyright (C) 2000-2007 Jason Hunter & Brett McLaughlin. All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  1. Redistributions of source code must retain the above copyright    notice, this list of conditions, and the following disclaimer.  2. Redistributions in binary form must reproduce the above copyright    notice, this list of conditions, and the disclaimer that follows     these conditions in the documentation and/or other materials     provided with the distribution. 3. The name "JDOM" must not be used to endorse or promote products    derived from this software without prior written permission.  For    written permission, please contact <request_AT_jdom_DOT_org>.  4. Products derived from this software may not be called "JDOM", nor    may "JDOM" appear in their name, without prior written permission    from the JDOM Project Management <request_AT_jdom_DOT_org>.  In addition, we request (but do not require) that you include in the  end-user documentation provided with the redistribution and/or in the  software itself an acknowledgement equivalent to the following:     "This product includes software developed by the      JDOM Project (http://www.jdom.org/)." Alternatively, the acknowledgment may be graphical using the logos  available at http://www.jdom.org/images/logos. THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE JDOM AUTHORS OR THE PROJECT CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. This software consists of voluntary contributions made by many  individuals on behalf of the JDOM Project and was originally  created by Jason Hunter <jhunter_AT_jdom_DOT_org> and Brett McLaughlin <brett_AT_jdom_DOT_org>.  For more information on the JDOM Project, please see <http://www.jdom.org/>.  */package org.jdom;import java.util.*;/** * An XML namespace representation, as well as a factory for creating XML * namespace objects. Namespaces are not Serializable, however objects that use * namespaces have special logic to handle serialization manually. These classes * call the getNamespace() method on deserialization to ensure there is one * unique Namespace object for any unique prefix/uri pair. * * @version $Revision: 1.43 $, $Date: 2007/11/10 05:28:59 $ * @author  Brett McLaughlin * @author  Elliotte Rusty Harold * @author  Jason Hunter * @author  Wesley Biggs */public final class Namespace {    // XXX May want to use weak references to keep the maps from growing     // large with extended use    // XXX We may need to make the namespaces HashMap synchronized with    // reader/writer locks or perhaps make Namespace no longer a flyweight.    // As written, multiple put() calls may happen from different threads     // concurrently and cause a ConcurrentModificationException. See    // http://lists.denveronline.net/lists/jdom-interest/2000-September/003009.html.    // No one has ever reported this over the many years, so don't worry yet.    private static final String CVS_ID =      "@(#) $RCSfile: Namespace.java,v $ $Revision: 1.43 $ $Date: 2007/11/10 05:28:59 $ $Name: jdom_1_1 $";    /**      * Factory list of namespaces.      * Keys are <i>prefix</i>&amp;<i>URI</i>.      * Values are Namespace objects      */    private static HashMap namespaces;    /** Define a <code>Namespace</code> for when <i>not</i> in a namespace */    public static final Namespace NO_NAMESPACE = new Namespace("", "");    /** Define a <code>Namespace</code> for the standard xml prefix. */    public static final Namespace XML_NAMESPACE =        new Namespace("xml", "http://www.w3.org/XML/1998/namespace");    /** The prefix mapped to this namespace */    private String prefix;    /** The URI for this namespace */    private String uri;    /**     * This static initializer acts as a factory contructor.     * It sets up storage and required initial values.     */    static {        namespaces = new HashMap(16);        // Add the "empty" namespace        namespaces.put(new NamespaceKey(NO_NAMESPACE), NO_NAMESPACE);        namespaces.put(new NamespaceKey(XML_NAMESPACE), XML_NAMESPACE);    }    /**     * This will retrieve (if in existence) or create (if not) a      * <code>Namespace</code> for the supplied prefix and URI.     *     * @param prefix <code>String</code> prefix to map to      *               <code>Namespace</code>.     * @param uri <code>String</code> URI of new <code>Namespace</code>.     * @return <code>Namespace</code> - ready to use namespace.     * @throws IllegalNameException if the given prefix and uri make up     *         an illegal namespace name.     */    public static Namespace getNamespace(String prefix, String uri) {        // Sanity checking        if ((prefix == null) || (prefix.trim().equals(""))) {            // Short-cut out for common case of no namespace            if ((uri == null) || (uri.trim().equals(""))) {                return NO_NAMESPACE;            }            prefix = "";        }        else if ((uri == null) || (uri.trim().equals(""))) {            uri = "";        }        // Return existing namespace if found. The preexisting namespaces        // should all be legal. In other words, an illegal namespace won't        // have been placed in this.  Thus we can do this test before        // verifying the URI and prefix.        NamespaceKey lookup = new NamespaceKey(prefix, uri);        Namespace preexisting = (Namespace) namespaces.get(lookup);        if (preexisting != null) {            return preexisting;        }        // Ensure proper naming        String reason;        if ((reason = Verifier.checkNamespacePrefix(prefix)) != null) {            throw new IllegalNameException(prefix, "Namespace prefix", reason);        }        if ((reason = Verifier.checkNamespaceURI(uri)) != null) {            throw new IllegalNameException(uri, "Namespace URI", reason);        }        // Unless the "empty" Namespace (no prefix and no URI), require a URI        if ((!prefix.equals("")) && (uri.equals(""))) {            throw new IllegalNameException("", "namespace",                "Namespace URIs must be non-null and non-empty Strings");        }        // Handle XML namespace mislabels. If the user requested the correct        // namespace and prefix -- xml, http://www.w3.org/XML/1998/namespace        // -- then it was already returned from the preexisting namespaces.        // Thus any use of the xml prefix or the        // http://www.w3.org/XML/1998/namespace URI at this point must be        // incorrect.         if (prefix.equals("xml")) {            throw new IllegalNameException(prefix, "Namespace prefix",             "The xml prefix can only be bound to " +             "http://www.w3.org/XML/1998/namespace");                }        // The erratum to Namespaces in XML 1.0 that suggests this         // next check is controversial. Not everyone accepts it.         if (uri.equals("http://www.w3.org/XML/1998/namespace")) {            throw new IllegalNameException(uri, "Namespace URI",             "The http://www.w3.org/XML/1998/namespace must be bound to " +             "the xml prefix.");                }        // Finally, store and return        Namespace ns = new Namespace(prefix, uri);        namespaces.put(lookup, ns);        return ns;    }    /**     * This will retrieve (if in existence) or create (if not) a      * <code>Namespace</code> for the supplied URI, and make it usable      * as a default namespace, as no prefix is supplied.     *     * @param uri <code>String</code> URI of new <code>Namespace</code>.     * @return <code>Namespace</code> - ready to use namespace.     */    public static Namespace getNamespace(String uri) {        return getNamespace("", uri);    }    /**     * This constructor handles creation of a <code>Namespace</code> object     * with a prefix and URI; it is intentionally left <code>private</code>     * so that it cannot be invoked by external programs/code.     *     * @param prefix <code>String</code> prefix to map to this namespace.     * @param uri <code>String</code> URI for namespace.     */    private Namespace(String prefix, String uri) {        this.prefix = prefix;        this.uri = uri;    }    /**     * This returns the prefix mapped to this <code>Namespace</code>.     *     * @return <code>String</code> - prefix for this <code>Namespace</code>.     */    public String getPrefix() {        return prefix;    }    /**     * This returns the namespace URI for this <code>Namespace</code>.     *     * @return <code>String</code> - URI for this <code>Namespace</code>.     */    public String getURI() {        return uri;    }    /**     * This tests for equality - Two <code>Namespaces</code>     * are equal if and only if their URIs are byte-for-byte equals.     *     * @param ob <code>Object</code> to compare to this <code>Namespace</code>.     * @return <code>boolean</code> - whether the supplied object is equal to     *         this <code>Namespace</code>.     */    public boolean equals(Object ob) {        if (this == ob) {            return true;        }        if (ob instanceof Namespace) {  // instanceof returns false if null            return uri.equals(((Namespace)ob).uri);        }        return false;    }    /**     * This returns a <code>String</code> representation of this      * <code>Namespace</code>, suitable for use in debugging.     *     * @return <code>String</code> - information about this instance.     */    public String toString() {        return "[Namespace: prefix \"" + prefix + "\" is mapped to URI \"" +                uri + "\"]";    }    /**     * This returns a probably unique hash code for the <code>Namespace</code>.     * If two namespaces have the same URI, they are equal and have the same     * hash code, even if they have different prefixes.     *     * @return <code>int</code> - hash code for this <code>Namespace</code>.     */    public int hashCode() {        return uri.hashCode();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91性感美女视频| 国产一区视频导航| 91精品国产一区二区人妖| 成人精品国产福利| 国产一区视频在线看| 色猫猫国产区一区二在线视频| 久久99精品久久久久久国产越南| 亚洲国产va精品久久久不卡综合| 国产精品日韩成人| 欧美精品一区二区在线播放| 欧美精品乱人伦久久久久久| 91官网在线免费观看| 久久久久久久久久久久久久久99 | 亚洲视频一区二区在线| 久久精品一区二区三区四区| 国产欧美日韩久久| 亚洲少妇中出一区| 国产精品888| 91麻豆.com| 欧美国产日韩精品免费观看| 中文字幕av一区二区三区高 | 欧美一级电影网站| 精品人伦一区二区色婷婷| 国产日韩欧美综合一区| 日本免费在线视频不卡一不卡二| 日韩av网站免费在线| 欧美亚洲日本国产| 日韩欧美综合在线| 亚洲v精品v日韩v欧美v专区| 奇米777欧美一区二区| 国产成人免费视| 91免费版在线| 中文字幕永久在线不卡| 美女一区二区视频| 91在线精品一区二区| 日韩视频免费观看高清完整版在线观看 | 亚洲国产精品二十页| 国产高清精品网站| 欧美激情一区二区三区在线| 国产精品资源站在线| 欧美激情在线观看视频免费| 国产成人欧美日韩在线电影| 亚洲国产高清aⅴ视频| 成人听书哪个软件好| 日韩三级电影网址| 久久国产精品露脸对白| 91麻豆.com| 午夜精品一区二区三区电影天堂| 国产一区二区视频在线| 国产亚洲一区二区在线观看| 北条麻妃一区二区三区| 欧美v国产在线一区二区三区| 老司机免费视频一区二区 | 欧美丝袜丝交足nylons图片| 亚洲五码中文字幕| 日韩午夜电影av| 粉嫩绯色av一区二区在线观看| 91精选在线观看| 亚洲女同一区二区| 国产精品1024| 亚洲日本一区二区| 欧美高清性hdvideosex| 久草精品在线观看| 中文字幕视频一区二区三区久| 另类小说一区二区三区| 精品国产免费人成在线观看| av亚洲精华国产精华| 亚洲黄色片在线观看| 国产精品自产自拍| 国产精品日日摸夜夜摸av| 色偷偷88欧美精品久久久| 7777精品久久久大香线蕉| 日本午夜精品视频在线观看 | 国产jizzjizz一区二区| 欧美国产成人精品| 在线观看91视频| 免费一区二区视频| 久久精品视频在线免费观看| 波多野结衣在线一区| 亚洲一区二区三区爽爽爽爽爽| 亚洲成人一区二区在线观看| 欧美一区二区美女| 免费人成黄页网站在线一区二区| 国产精品久久久久天堂| 欧美在线短视频| 精品一区二区三区香蕉蜜桃| 国产精品免费免费| 欧美日韩一区二区在线观看视频 | 蜜臀av在线播放一区二区三区| 国产亲近乱来精品视频| 在线观看区一区二| 韩日av一区二区| 色成人在线视频| 久久精品国产亚洲高清剧情介绍| 中文字幕 久热精品 视频在线| 欧美中文字幕亚洲一区二区va在线| 免费观看久久久4p| 亚洲欧美日韩一区二区| 欧美久久久久久久久| 91色视频在线| 国产美女精品在线| 日韩精品欧美精品| 亚洲色欲色欲www| 精品嫩草影院久久| 欧美日韩一区成人| av资源网一区| 免费观看成人av| 亚洲精品伦理在线| 久久精品视频网| 日韩美女在线视频| 一片黄亚洲嫩模| 欧美视频在线观看一区二区| 国产精品1区2区| 伦理电影国产精品| 亚洲高清免费视频| 亚洲私人黄色宅男| 国产亲近乱来精品视频 | 色94色欧美sute亚洲13| 国产在线麻豆精品观看| 亚洲一区影音先锋| 中文字幕一区二区三区四区| 久久影音资源网| 久久婷婷成人综合色| 欧美一区二区免费观在线| 欧美亚一区二区| 色婷婷综合中文久久一本| 成人app在线观看| 国v精品久久久网| 国产风韵犹存在线视精品| 韩国毛片一区二区三区| 日韩va欧美va亚洲va久久| 午夜国产不卡在线观看视频| 亚洲综合在线观看视频| 亚洲伊人色欲综合网| 亚洲一区自拍偷拍| 亚洲一区在线视频观看| 亚洲成人免费观看| 美女国产一区二区三区| 日本不卡在线视频| 日本不卡一区二区三区| 久久99久久精品| 国产精品综合网| jlzzjlzz亚洲女人18| 在线看日本不卡| 欧美日本在线观看| 制服丝袜激情欧洲亚洲| 欧美videos大乳护士334| 日韩美一区二区三区| 国产香蕉久久精品综合网| 国产精品欧美一级免费| 亚洲已满18点击进入久久| 日韩福利视频网| 国产自产v一区二区三区c| 成人av在线一区二区| 欧美在线制服丝袜| 日韩无一区二区| 26uuu色噜噜精品一区二区| 亚洲精品日韩一| 蜜乳av一区二区| 成人app在线观看| 欧美日韩精品欧美日韩精品一综合| 9191成人精品久久| 国产亚洲一区二区三区在线观看 | 一区二区三区日韩精品视频| 丝袜美腿亚洲一区二区图片| 久草精品在线观看| 成人毛片视频在线观看| 欧美色网站导航| 精品裸体舞一区二区三区| 亚洲韩国精品一区| 日本一二三四高清不卡| 欧美国产一区二区在线观看| 国产精品久久久久天堂| 偷拍日韩校园综合在线| 国产毛片精品视频| 欧美色精品在线视频| 久久久久一区二区三区四区| 亚洲综合自拍偷拍| 国产91精品欧美| 欧美一区二区三级| 中文字幕一区二区三| 免费成人性网站| 色综合欧美在线| 精品国产亚洲在线| 亚洲大片精品永久免费| 成人激情图片网| 精品国产露脸精彩对白| 亚洲综合区在线| www.亚洲色图.com| 欧美xfplay| 日本一不卡视频| 日本道免费精品一区二区三区| 国产亚洲精品7777| 久久激情五月激情| 日韩在线一二三区| 欧美va在线播放| 亚洲午夜视频在线| 国产福利91精品一区| 国产视频一区二区在线| 蜜臀av性久久久久av蜜臀妖精|