• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java DOM2Helper类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.sun.org.apache.xml.internal.utils.DOM2Helper的典型用法代码示例。如果您正苦于以下问题:Java DOM2Helper类的具体用法?Java DOM2Helper怎么用?Java DOM2Helper使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



DOM2Helper类属于com.sun.org.apache.xml.internal.utils包,在下文中一共展示了DOM2Helper类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: leading

import com.sun.org.apache.xml.internal.utils.DOM2Helper; //导入依赖的package包/类
/**
 * The set:leading function returns the nodes in the node set passed as the first argument that
 * precede, in document order, the first node in the node set passed as the second argument. If
 * the first node in the second node set is not contained in the first node set, then an empty
 * node set is returned. If the second node set is empty, then the first node set is returned.
 *
 * @param nl1 NodeList for first node-set.
 * @param nl2 NodeList for second node-set.
 * @return a NodeList containing the nodes in nl1 that precede in document order the first
 * node in nl2; an empty node-set if the first node in nl2 is not in nl1; all of nl1 if nl2
 * is empty.
 *
 * @see <a href="http://www.exslt.org/">EXSLT</a>
 */
public static NodeList leading (NodeList nl1, NodeList nl2)
{
  if (nl2.getLength() == 0)
    return nl1;

  NodeSet ns1 = new NodeSet(nl1);
  NodeSet leadNodes = new NodeSet();
  Node endNode = nl2.item(0);
  if (!ns1.contains(endNode))
    return leadNodes; // empty NodeSet

  for (int i = 0; i < nl1.getLength(); i++)
  {
    Node testNode = nl1.item(i);
    if (DOM2Helper.isNodeAfter(testNode, endNode)
        && !DOM2Helper.isNodeTheSame(testNode, endNode))
      leadNodes.addElement(testNode);
  }
  return leadNodes;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:35,代码来源:ExsltSets.java


示例2: trailing

import com.sun.org.apache.xml.internal.utils.DOM2Helper; //导入依赖的package包/类
/**
 * The set:trailing function returns the nodes in the node set passed as the first argument that
 * follow, in document order, the first node in the node set passed as the second argument. If
 * the first node in the second node set is not contained in the first node set, then an empty
 * node set is returned. If the second node set is empty, then the first node set is returned.
 *
 * @param nl1 NodeList for first node-set.
 * @param nl2 NodeList for second node-set.
 * @return a NodeList containing the nodes in nl1 that follow in document order the first
 * node in nl2; an empty node-set if the first node in nl2 is not in nl1; all of nl1 if nl2
 * is empty.
 *
 * @see <a href="http://www.exslt.org/">EXSLT</a>
 */
public static NodeList trailing (NodeList nl1, NodeList nl2)
{
  if (nl2.getLength() == 0)
    return nl1;

  NodeSet ns1 = new NodeSet(nl1);
  NodeSet trailNodes = new NodeSet();
  Node startNode = nl2.item(0);
  if (!ns1.contains(startNode))
    return trailNodes; // empty NodeSet

  for (int i = 0; i < nl1.getLength(); i++)
  {
    Node testNode = nl1.item(i);
    if (DOM2Helper.isNodeAfter(startNode, testNode)
        && !DOM2Helper.isNodeTheSame(startNode, testNode))
      trailNodes.addElement(testNode);
  }
  return trailNodes;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:35,代码来源:ExsltSets.java


示例3: addNodesInDocOrder

import com.sun.org.apache.xml.internal.utils.DOM2Helper; //导入依赖的package包/类
/**
 * Add the node list to this node set in document order.
 *
 * @param start index.
 * @param end index.
 * @param testIndex index.
 * @param nodelist The nodelist to add.
 * @param support The XPath runtime context.
 *
 * @return false always.
 * @throws RuntimeException thrown if this NodeSet is not of
 * a mutable type.
 */
private boolean addNodesInDocOrder(int start, int end, int testIndex,
                                   NodeList nodelist, XPathContext support)
{

  if (!m_mutable)
    throw new RuntimeException(XSLMessages.createXPATHMessage(XPATHErrorResources.ER_NODESET_NOT_MUTABLE, null)); //"This NodeSet is not mutable!");

  boolean foundit = false;
  int i;
  Node node = nodelist.item(testIndex);

  for (i = end; i >= start; i--)
  {
    Node child = (Node) elementAt(i);

    if (child == node)
    {
      i = -2;  // Duplicate, suppress insert

      break;
    }

    if (!DOM2Helper.isNodeAfter(node, child))
    {
      insertElementAt(node, i + 1);

      testIndex--;

      if (testIndex > 0)
      {
        boolean foundPrev = addNodesInDocOrder(0, i, testIndex, nodelist,
                                               support);

        if (!foundPrev)
        {
          addNodesInDocOrder(i, size() - 1, testIndex, nodelist, support);
        }
      }

      break;
    }
  }

  if (i == -1)
  {
    insertElementAt(node, 0);
  }

  return foundit;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:64,代码来源:NodeSet.java


示例4: addNodeInDocOrder

import com.sun.org.apache.xml.internal.utils.DOM2Helper; //导入依赖的package包/类
/**
 * Add the node into a vector of nodes where it should occur in
 * document order.
 * @param node The node to be added.
 * @param test true if we should test for doc order
 * @param support The XPath runtime context.
 * @return insertIndex.
 * @throws RuntimeException thrown if this NodeSet is not of
 * a mutable type.
 */
public int addNodeInDocOrder(Node node, boolean test, XPathContext support)
{

  if (!m_mutable)
    throw new RuntimeException(XSLMessages.createXPATHMessage(XPATHErrorResources.ER_NODESET_NOT_MUTABLE, null)); //XSLMessages.createXPATHMessage(XPATHErrorResources.ER_NODESET_NOT_MUTABLE, null)); //"This NodeSet is not mutable!");

  int insertIndex = -1;

  if (test)
  {

    // This needs to do a binary search, but a binary search
    // is somewhat tough because the sequence test involves
    // two nodes.
    int size = size(), i;

    for (i = size - 1; i >= 0; i--)
    {
      Node child = (Node) elementAt(i);

      if (child == node)
      {
        i = -2;  // Duplicate, suppress insert

        break;
      }

      if (!DOM2Helper.isNodeAfter(node, child))
      {
        break;
      }
    }

    if (i != -2)
    {
      insertIndex = i + 1;

      insertElementAt(node, insertIndex);
    }
  }
  else
  {
    insertIndex = this.size();

    boolean foundit = false;

    for (int i = 0; i < insertIndex; i++)
    {
      if (this.item(i).equals(node))
      {
        foundit = true;

        break;
      }
    }

    if (!foundit)
      addElement(node);
  }

  // checkDups();
  return insertIndex;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:74,代码来源:NodeSet.java



注:本文中的com.sun.org.apache.xml.internal.utils.DOM2Helper类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java CFStatement类代码示例发布时间:2022-05-23
下一篇:
Java DefaultSecurityLogic类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap