// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: packimports(3) fieldsfirst lnc // Source File Name: IDPattern.java package com.icl.saxon.pattern; import com.icl.saxon.Context; import com.icl.saxon.expr.XPathException; import com.icl.saxon.om.DocumentInfo; import com.icl.saxon.om.NodeInfo; import java.util.StringTokenizer; // Referenced classes of package com.icl.saxon.pattern: // Pattern public final class IDPattern extends Pattern { private String id; private boolean containsSpaces; public IDPattern(String s) { /* 19*/ id = s; /* 20*/ containsSpaces = id.indexOf(' ') >= 0 || id.indexOf('\t') >= 0 || id.indexOf('\n') >= 0 || id.indexOf('\f') >= 0; } public boolean matches(NodeInfo nodeinfo, Context context) throws XPathException { /* 34*/ if(nodeinfo.getNodeType() != 1) /* 34*/ return false; /* 35*/ DocumentInfo documentinfo = nodeinfo.getDocumentRoot(); /* 36*/ if(!containsSpaces) { /* 37*/ NodeInfo nodeinfo1 = documentinfo.selectID(id); /* 38*/ if(nodeinfo1 == null) /* 38*/ return false; /* 39*/ else /* 39*/ return nodeinfo1.isSameNodeInfo(nodeinfo); } /* 41*/ for(StringTokenizer stringtokenizer = new StringTokenizer(id); stringtokenizer.hasMoreElements();) { /* 43*/ String s = (String)stringtokenizer.nextElement(); /* 44*/ NodeInfo nodeinfo2 = documentinfo.selectID(s); /* 45*/ if(nodeinfo2 != null && nodeinfo.isSameNodeInfo(nodeinfo2)) /* 46*/ return true; } /* 49*/ return false; } public short getNodeType() { /* 59*/ return 1; } }