prefixmap.java

来自「该源码是一个J2ME项目」· Java 代码 · 共 73 行

JAVA
73
字号
package org.kxml;

/** Like Attribute, this class is immutable for similar reasons */

public class PrefixMap
{

  public static final PrefixMap DEFAULT = new PrefixMap(null, "", "");

  String prefix;
  String namespace;
  PrefixMap previous;

  public PrefixMap(PrefixMap previous, String prefix, String namespace)
  {
    this.previous = previous;
    this.prefix = prefix;
    this.namespace = namespace;
  }

  public String getNamespace()
  {
    return namespace;
  }

  public String getPrefix()
  {
    return prefix;
  }

  public PrefixMap getPrevious()
  {
    return previous;
  }

  /** returns the namespace associated with the given prefix,
    or null, if none is assigned */

  public String getNamespace(String prefix)
  {
    PrefixMap current = this;
    do
    {
      if (prefix.equals(current.prefix))
      {
        return current.namespace;
      }
      current = current.previous;
    }
    while (current != null);
    return null;
  }

  public String getPrefix(String namespace)
  {
    PrefixMap current = this;

    do
    {
      //System.err.println ("found: "+current.namespace +"/"+ current.prefix + "/" +getNamespace (current.prefix));
      if (namespace.equals(current.namespace)
          && namespace.equals(getNamespace(current.prefix)))
      {
        return current.prefix;
      }

      current = current.previous;
    }
    while (current != null);
    return null;
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?