You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mu...@apache.org on 2026/01/02 12:32:21 UTC
(xalan-java) branch xalan-j_xslt3.0_mvn updated: committing few xalan-j xslt 3.0 implementation improvements and deleting javadocs @serial annotation from implementation
This is an automated email from the ASF dual-hosted git repository.
mukulg pushed a commit to branch xalan-j_xslt3.0_mvn
in repository https://gitbox.apache.org/repos/asf/xalan-java.git
The following commit(s) were added to refs/heads/xalan-j_xslt3.0_mvn by this push:
new 0d6b56927 committing few xalan-j xslt 3.0 implementation improvements and deleting javadocs @serial annotation from implementation
0d6b56927 is described below
commit 0d6b5692737ecbe4d8c7d3e69482f23b9fec1795
Author: Mukul Gandhi <ga...@gmail.com>
AuthorDate: Fri Jan 2 18:01:46 2026 +0530
committing few xalan-j xslt 3.0 implementation improvements and deleting javadocs @serial annotation from implementation
---
.../apache/xalan/client/XSLTProcessorApplet.java | 18 +--
.../xalan/processor/ProcessorImportSchema.java | 2 +-
.../apache/xalan/processor/ProcessorInclude.java | 2 +-
.../org/apache/xalan/processor/XSLTSchema.java | 7 +-
src/main/java/org/apache/xalan/templates/AVT.java | 10 +-
.../org/apache/xalan/templates/AVTPartSimple.java | 2 +-
.../xalan/templates/DecimalFormatProperties.java | 4 +-
.../apache/xalan/templates/ElemAttributeSet.java | 2 +-
.../apache/xalan/templates/ElemCallTemplate.java | 6 +-
.../apache/xalan/templates/ElemExtensionCall.java | 10 +-
.../apache/xalan/templates/ElemExtensionDecl.java | 6 +-
.../xalan/templates/ElemExtensionScript.java | 4 +-
.../java/org/apache/xalan/templates/ElemIf.java | 2 +-
.../apache/xalan/templates/ElemLiteralResult.java | 18 +--
.../org/apache/xalan/templates/ElemNumber.java | 18 +--
.../java/org/apache/xalan/templates/ElemSort.java | 12 +-
.../xalan/templates/ElemTemplateElement.java | 26 +--
.../java/org/apache/xalan/templates/ElemUse.java | 2 +-
.../org/apache/xalan/templates/ElemValueOf.java | 2 +-
.../org/apache/xalan/templates/ElemVariable.java | 4 +-
.../java/org/apache/xalan/templates/ElemWhen.java | 2 +-
.../org/apache/xalan/templates/ElemWithParam.java | 4 +-
.../org/apache/xalan/templates/KeyDeclaration.java | 6 +-
.../org/apache/xalan/templates/NamespaceAlias.java | 8 +-
.../apache/xalan/templates/OutputProperties.java | 2 +-
.../org/apache/xalan/templates/WhiteSpaceInfo.java | 2 +-
.../java/org/apache/xalan/templates/XMLNSDecl.java | 6 +-
.../xalan/templates/XUnresolvedVariable.java | 2 +-
.../transformer/ForEachGroupXslSortSorter.java | 180 +++++----------------
.../org/apache/xalan/transformer/KeyIterator.java | 4 +-
.../apache/xalan/transformer/KeyRefIterator.java | 2 +-
.../org/apache/xalan/transformer/NodeSorter.java | 47 +++---
.../XslForEachGroupNodeCompareElem.java | 144 +++++++++++++++++
src/main/java/org/apache/xml/dtm/DTMException.java | 4 +-
.../java/org/apache/xml/serializer/utils/URI.java | 14 +-
.../serializer/utils/WrappedRuntimeException.java | 2 +-
src/main/java/org/apache/xml/utils/NameSpace.java | 6 +-
src/main/java/org/apache/xml/utils/NodeVector.java | 8 +-
src/main/java/org/apache/xml/utils/ObjectPool.java | 4 +-
src/main/java/org/apache/xml/utils/QName.java | 8 +-
.../org/apache/xml/utils/SAXSourceLocator.java | 2 +-
.../apache/xml/utils/SerializableLocatorImpl.java | 8 +-
.../java/org/apache/xml/utils/StringVector.java | 8 +-
src/main/java/org/apache/xml/utils/URI.java | 14 +-
.../apache/xml/utils/WrappedRuntimeException.java | 2 +-
src/main/java/org/apache/xpath/NodeSet.java | 10 +-
src/main/java/org/apache/xpath/NodeSetDTM.java | 2 +-
src/main/java/org/apache/xpath/VariableStack.java | 8 +-
src/main/java/org/apache/xpath/XPathException.java | 4 +-
.../java/org/apache/xpath/axes/AxesWalker.java | 4 +-
.../org/apache/xpath/axes/FilterExprIterator.java | 2 +-
.../org/apache/xpath/axes/LocPathIterator.java | 6 +-
.../org/apache/xpath/axes/PredicatedNodeTest.java | 4 +-
.../org/apache/xpath/axes/UnionPathIterator.java | 4 +-
.../org/apache/xpath/axes/WalkingIterator.java | 4 +-
.../XSL3ConstructorOrExtensionFunction.java | 8 +-
.../apache/xpath/operations/UnaryOperation.java | 2 +-
.../org/apache/xpath/patterns/FunctionPattern.java | 2 +-
.../java/org/apache/xpath/patterns/NodeTest.java | 10 +-
.../org/apache/xpath/patterns/UnionPattern.java | 2 +-
src/main/java/org/apache/xpath/regex/Pattern.java | 4 +-
61 files changed, 387 insertions(+), 335 deletions(-)
diff --git a/src/main/java/org/apache/xalan/client/XSLTProcessorApplet.java b/src/main/java/org/apache/xalan/client/XSLTProcessorApplet.java
index 349bf0781..4fffffd80 100644
--- a/src/main/java/org/apache/xalan/client/XSLTProcessorApplet.java
+++ b/src/main/java/org/apache/xalan/client/XSLTProcessorApplet.java
@@ -71,12 +71,12 @@ public class XSLTProcessorApplet extends Applet
transient TransformerFactory m_tfactory = null;
/**
- * @serial
+ *
*/
private String m_styleURL;
/**
- * @serial
+ *
*/
private String m_documentURL;
@@ -85,12 +85,12 @@ public class XSLTProcessorApplet extends Applet
//--------------------------------------------------------------------------
/**
- * @serial
+ *
*/
private final String PARAM_styleURL = "styleURL";
/**
- * @serial
+ *
*/
private final String PARAM_documentURL = "documentURL";
@@ -99,29 +99,29 @@ public class XSLTProcessorApplet extends Applet
// are cached.
/**
- * @serial
+ *
*/
private String m_styleURLOfCached = null;
/**
- * @serial
+ *
*/
private String m_documentURLOfCached = null;
/**
* Save this for use on the worker thread; may not be necessary.
- * @serial
+ *
*/
private URL m_codeBase = null;
/**
- * @serial
+ *
*/
private String m_treeURL = null;
/**
* DocumentBase URL
- * @serial
+ *
*/
private URL m_documentBase = null;
diff --git a/src/main/java/org/apache/xalan/processor/ProcessorImportSchema.java b/src/main/java/org/apache/xalan/processor/ProcessorImportSchema.java
index 47e2eed0d..10a7802ef 100644
--- a/src/main/java/org/apache/xalan/processor/ProcessorImportSchema.java
+++ b/src/main/java/org/apache/xalan/processor/ProcessorImportSchema.java
@@ -54,7 +54,7 @@ public class ProcessorImportSchema extends XSLTElementProcessor
/**
* The base URL of the XSL document.
- * @serial
+ *
*/
private String m_href = null;
diff --git a/src/main/java/org/apache/xalan/processor/ProcessorInclude.java b/src/main/java/org/apache/xalan/processor/ProcessorInclude.java
index d5992eaec..6bbb83b0f 100644
--- a/src/main/java/org/apache/xalan/processor/ProcessorInclude.java
+++ b/src/main/java/org/apache/xalan/processor/ProcessorInclude.java
@@ -65,7 +65,7 @@ public class ProcessorInclude extends XSLTElementProcessor
/**
* The base URL of the XSL document.
- * @serial
+ *
*/
private String m_href = null;
diff --git a/src/main/java/org/apache/xalan/processor/XSLTSchema.java b/src/main/java/org/apache/xalan/processor/XSLTSchema.java
index af6f167cd..cc26dd9db 100644
--- a/src/main/java/org/apache/xalan/processor/XSLTSchema.java
+++ b/src/main/java/org/apache/xalan/processor/XSLTSchema.java
@@ -423,12 +423,7 @@ public class XSLTSchema extends XSLTElementDef
// Default: "node()"
// xsl:apply-templates
XSLTAttributeDef selectAttrDefNode = new XSLTAttributeDef(null, "select",
- XSLTAttributeDef.T_EXPR, false, XSLTAttributeDef.ERROR, "node()");
- // Optional
- // Default: "."
- // xsl:sort
- XSLTAttributeDef selectAttrDefDot = new XSLTAttributeDef(null, "select",
- XSLTAttributeDef.T_EXPR, false, XSLTAttributeDef.ERROR, ".");
+ XSLTAttributeDef.T_EXPR, false, XSLTAttributeDef.ERROR, "node()");
// xsl:key
XSLTAttributeDef matchAttrRequired = new XSLTAttributeDef(null, "match",
diff --git a/src/main/java/org/apache/xalan/templates/AVT.java b/src/main/java/org/apache/xalan/templates/AVT.java
index b25319ce9..2e5bfefba 100644
--- a/src/main/java/org/apache/xalan/templates/AVT.java
+++ b/src/main/java/org/apache/xalan/templates/AVT.java
@@ -56,13 +56,13 @@ public class AVT implements java.io.Serializable, XSLTVisitable
/**
* If the AVT is not complex, just hold the simple string.
- * @serial
+ *
*/
private String m_simpleString = null;
/**
* If the AVT is complex, hold a Vector of AVTParts.
- * @serial
+ *
*/
private Vector m_parts = null;
@@ -70,7 +70,7 @@ public class AVT implements java.io.Serializable, XSLTVisitable
/**
* The name of the attribute.
- * @serial
+ *
*/
private String m_rawName;
@@ -96,7 +96,7 @@ public class AVT implements java.io.Serializable, XSLTVisitable
/**
* The name of the attribute.
- * @serial
+ *
*/
private String m_name;
@@ -122,7 +122,7 @@ public class AVT implements java.io.Serializable, XSLTVisitable
/**
* The namespace URI of the owning attribute.
- * @serial
+ *
*/
private String m_uri;
diff --git a/src/main/java/org/apache/xalan/templates/AVTPartSimple.java b/src/main/java/org/apache/xalan/templates/AVTPartSimple.java
index c42fe0b3a..85be8810b 100644
--- a/src/main/java/org/apache/xalan/templates/AVTPartSimple.java
+++ b/src/main/java/org/apache/xalan/templates/AVTPartSimple.java
@@ -33,7 +33,7 @@ public class AVTPartSimple extends AVTPart
/**
* Simple string value;
- * @serial
+ *
*/
private String m_val;
diff --git a/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java b/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java
index 84adc2607..7b24dd68d 100644
--- a/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java
+++ b/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java
@@ -50,7 +50,7 @@ public class DecimalFormatProperties extends ElemTemplateElement
static final long serialVersionUID = -6559409339256269446L;
/** An instance of DecimalFormatSymbols for this element.
- * @serial */
+ * */
DecimalFormatSymbols m_dfs;
/**
@@ -96,7 +96,7 @@ public class DecimalFormatProperties extends ElemTemplateElement
/**
* If there is a name attribute, then the element declares a named
* decimal-format; otherwise, it declares the default decimal-format.
- * @serial
+ *
*/
private QName m_qname = null;
diff --git a/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java b/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java
index a6c903601..ee7ae1f4d 100644
--- a/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java
+++ b/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java
@@ -46,7 +46,7 @@ public class ElemAttributeSet extends ElemUse
/**
* The name attribute specifies the name of the attribute set.
- * @serial
+ *
*/
public QName m_qname = null;
diff --git a/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java b/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java
index bb0b2b4ae..bc0f9bda2 100644
--- a/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java
+++ b/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java
@@ -47,7 +47,7 @@ public class ElemCallTemplate extends ElemForEach
/**
* An xsl:call-template element invokes a template by name;
* it has a required name attribute that identifies the template to be invoked.
- * @serial
+ *
*/
public QName m_templateName = null;
@@ -77,7 +77,7 @@ public class ElemCallTemplate extends ElemForEach
/**
* The template which is named by QName.
- * @serial
+ *
*/
private ElemTemplate m_template = null;
@@ -362,7 +362,7 @@ public class ElemCallTemplate extends ElemForEach
}
/** Vector of xsl:param elements associated with this element.
- * @serial */
+ * */
protected ElemWithParam[] m_paramElems = null;
/**
diff --git a/src/main/java/org/apache/xalan/templates/ElemExtensionCall.java b/src/main/java/org/apache/xalan/templates/ElemExtensionCall.java
index 0e3f2e657..b7f1e3ea7 100644
--- a/src/main/java/org/apache/xalan/templates/ElemExtensionCall.java
+++ b/src/main/java/org/apache/xalan/templates/ElemExtensionCall.java
@@ -40,23 +40,23 @@ public class ElemExtensionCall extends ElemLiteralResult
static final long serialVersionUID = 3171339708500216920L;
/** The Namespace URI for this extension call element.
- * @serial */
+ * */
String m_extns;
/** Language used by extension.
- * @serial */
+ * */
String m_lang;
/** URL pointing to extension.
- * @serial */
+ * */
String m_srcURL;
/** Source for script.
- * @serial */
+ * */
String m_scriptSrc;
/** Declaration for Extension element.
- * @serial */
+ * */
ElemExtensionDecl m_decl = null;
/**
diff --git a/src/main/java/org/apache/xalan/templates/ElemExtensionDecl.java b/src/main/java/org/apache/xalan/templates/ElemExtensionDecl.java
index 322e22c9b..3f56f0a01 100644
--- a/src/main/java/org/apache/xalan/templates/ElemExtensionDecl.java
+++ b/src/main/java/org/apache/xalan/templates/ElemExtensionDecl.java
@@ -48,7 +48,7 @@ public class ElemExtensionDecl extends ElemTemplateElement
}
/** Prefix string for this extension element.
- * @serial */
+ * */
private String m_prefix = null;
/**
@@ -74,7 +74,7 @@ public class ElemExtensionDecl extends ElemTemplateElement
}
/** StringVector holding the names of functions defined in this extension.
- * @serial */
+ * */
private StringVector m_functions = new StringVector();
/**
@@ -130,7 +130,7 @@ public class ElemExtensionDecl extends ElemTemplateElement
}
/** StringVector of elements defined in this extension.
- * @serial */
+ * */
private StringVector m_elements = null;
/**
diff --git a/src/main/java/org/apache/xalan/templates/ElemExtensionScript.java b/src/main/java/org/apache/xalan/templates/ElemExtensionScript.java
index ce3d189c7..6d2a84d24 100644
--- a/src/main/java/org/apache/xalan/templates/ElemExtensionScript.java
+++ b/src/main/java/org/apache/xalan/templates/ElemExtensionScript.java
@@ -39,7 +39,7 @@ public class ElemExtensionScript extends ElemTemplateElement
}
/** Language used in extension.
- * @serial */
+ * */
private String m_lang = null;
/**
@@ -65,7 +65,7 @@ public class ElemExtensionScript extends ElemTemplateElement
}
/** Extension handler.
- * @serial */
+ * */
private String m_src = null;
/**
diff --git a/src/main/java/org/apache/xalan/templates/ElemIf.java b/src/main/java/org/apache/xalan/templates/ElemIf.java
index 37dcbd967..8f0a4faaa 100644
--- a/src/main/java/org/apache/xalan/templates/ElemIf.java
+++ b/src/main/java/org/apache/xalan/templates/ElemIf.java
@@ -48,7 +48,7 @@ public class ElemIf extends ElemTemplateElement
/**
* The xsl:if element must have a test attribute, which specifies an expression.
- * @serial
+ *
*/
private XPath m_test = null;
diff --git a/src/main/java/org/apache/xalan/templates/ElemLiteralResult.java b/src/main/java/org/apache/xalan/templates/ElemLiteralResult.java
index df097e16e..6bf37c623 100644
--- a/src/main/java/org/apache/xalan/templates/ElemLiteralResult.java
+++ b/src/main/java/org/apache/xalan/templates/ElemLiteralResult.java
@@ -70,7 +70,7 @@ public class ElemLiteralResult extends ElemUse
* Tells if this element represents a root element
* that is also the stylesheet element.
* TODO: This should be a derived class.
- * @serial
+ *
*/
private boolean isLiteralResultAsStylesheet = false;
@@ -127,12 +127,12 @@ public class ElemLiteralResult extends ElemUse
* The created element node will have the attribute nodes
* that were present on the element node in the stylesheet tree,
* other than attributes with names in the XSLT namespace.
- * @serial
+ *
*/
private List m_avts = null;
/** List of attributes with the XSLT namespace.
- * @serial */
+ * */
private List m_xslAttr = null;
/**
@@ -423,7 +423,7 @@ public class ElemLiteralResult extends ElemUse
/**
* The namespace of the element to be created.
- * @serial
+ *
*/
private String m_namespace;
@@ -459,7 +459,7 @@ public class ElemLiteralResult extends ElemUse
/**
* The local name of the element to be created.
- * @serial
+ *
*/
private String m_localName;
@@ -490,7 +490,7 @@ public class ElemLiteralResult extends ElemUse
/**
* The raw name of the element to be created.
- * @serial
+ *
*/
private String m_rawName;
@@ -596,7 +596,7 @@ public class ElemLiteralResult extends ElemUse
/**
* The "extension-element-prefixes" property, actually contains URIs.
- * @serial
+ *
*/
private StringVector m_ExtensionElementURIs;
@@ -1286,7 +1286,7 @@ public class ElemLiteralResult extends ElemUse
/**
* The XSLT version as specified by this element.
- * @serial
+ *
*/
private String m_version;
@@ -1314,7 +1314,7 @@ public class ElemLiteralResult extends ElemUse
/**
* The "exclude-result-prefixes" property.
- * @serial
+ *
*/
private StringVector m_excludeResultPrefixes;
diff --git a/src/main/java/org/apache/xalan/templates/ElemNumber.java b/src/main/java/org/apache/xalan/templates/ElemNumber.java
index 3003e23bb..24d977909 100644
--- a/src/main/java/org/apache/xalan/templates/ElemNumber.java
+++ b/src/main/java/org/apache/xalan/templates/ElemNumber.java
@@ -131,7 +131,7 @@ public class ElemNumber extends ElemTemplateElement
/**
* Only nodes are counted that match this pattern.
- * @serial
+ *
*/
private XPath m_countMatchPattern = null;
@@ -176,7 +176,7 @@ public class ElemNumber extends ElemTemplateElement
* For level="any:
* Only nodes after the first node before the
* current node that match the from pattern are considered.
- * @serial
+ *
*/
private XPath m_fromMatchPattern = null;
@@ -238,7 +238,7 @@ public class ElemNumber extends ElemTemplateElement
* the union of the members of the preceding and ancestor-or-self axes). If the
* from attribute is specified, then only nodes after the first node before the
* current node that match the from pattern are considered.
- * @serial
+ *
*/
private int m_level = Constants.NUMBERLEVEL_SINGLE;
@@ -272,7 +272,7 @@ public class ElemNumber extends ElemTemplateElement
* The value attribute contains an expression. The expression is evaluated
* and the resulting object is converted to a number as if by a call to the
* number function.
- * @serial
+ *
*/
private XPath m_valueExpr = null;
@@ -306,7 +306,7 @@ public class ElemNumber extends ElemTemplateElement
* The "format" attribute is used to control conversion of a list of
* numbers into a string.
* @see <a href="http://www.w3.org/TR/xslt#convert">convert in XSLT Specification</a>
- * @serial
+ *
*/
private AVT m_format_avt = null;
@@ -365,7 +365,7 @@ public class ElemNumber extends ElemTemplateElement
/**
* When numbering with an alphabetic sequence, the lang attribute
* specifies which language's alphabet is to be used.
- * @serial
+ *
*/
private AVT m_lang_avt = null;
@@ -430,7 +430,7 @@ public class ElemNumber extends ElemTemplateElement
/**
* The letter-value attribute disambiguates between numbering
* sequences that use letters.
- * @serial
+ *
*/
private AVT m_lettervalue_avt = null;
@@ -464,7 +464,7 @@ public class ElemNumber extends ElemTemplateElement
* The grouping-separator attribute gives the separator
* used as a grouping (e.g. thousands) separator in decimal
* numbering sequences.
- * @serial
+ *
*/
private AVT m_groupingSeparator_avt = null;
@@ -498,7 +498,7 @@ public class ElemNumber extends ElemTemplateElement
/**
* The optional grouping-size specifies the size (normally 3) of the grouping.
- * @serial
+ *
*/
private AVT m_groupingSize_avt = null;
diff --git a/src/main/java/org/apache/xalan/templates/ElemSort.java b/src/main/java/org/apache/xalan/templates/ElemSort.java
index 693261ef7..d5e8b03bd 100644
--- a/src/main/java/org/apache/xalan/templates/ElemSort.java
+++ b/src/main/java/org/apache/xalan/templates/ElemSort.java
@@ -37,7 +37,7 @@ public class ElemSort extends ElemTemplateElement
/**
* xsl:sort has a select attribute whose value is an expression.
- * @serial
+ *
*/
private XPath m_selectExpression = null;
@@ -85,7 +85,7 @@ public class ElemSort extends ElemTemplateElement
/**
* lang specifies the language of the sort keys.
- * @serial
+ *
*/
private AVT m_lang_avt = null;
@@ -118,7 +118,7 @@ public class ElemSort extends ElemTemplateElement
/**
* data-type specifies the data type of the
* strings to be sorted.
- * @serial
+ *
*/
private AVT m_dataType_avt = null;
@@ -199,7 +199,7 @@ public class ElemSort extends ElemTemplateElement
/**
* order specifies whether the strings should be sorted in ascending
* or descending order.
- * @serial
+ *
*/
private AVT m_order_avt = null;
@@ -232,7 +232,7 @@ public class ElemSort extends ElemTemplateElement
/**
* case-order has the value upper-first or lower-first.
* The default value is language dependent.
- * @serial
+ *
*/
private AVT m_caseorder_avt = null;
@@ -247,7 +247,7 @@ public class ElemSort extends ElemTemplateElement
*
* @param v The value to set for the "case-order" attribute
*
- * @serial
+ *
*/
public void setCaseOrder(AVT v)
{
diff --git a/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java b/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java
index 4fcbd2cc4..346f817b4 100644
--- a/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java
+++ b/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java
@@ -759,11 +759,11 @@ public class ElemTemplateElement extends UnImplNode
}
/** line number where the current document event ends.
- * @serial */
+ * */
private int m_lineNumber;
/** line number where the current document event ends.
- * @serial */
+ * */
private int m_endLineNumber;
/**
@@ -791,11 +791,11 @@ public class ElemTemplateElement extends UnImplNode
}
/** the column number where the current document event ends.
- * @serial */
+ * */
private int m_columnNumber;
/** the column number where the current document event ends.
- * @serial */
+ * */
private int m_endColumnNumber;
/**
@@ -877,19 +877,19 @@ public class ElemTemplateElement extends UnImplNode
/**
* Tell if this element has the default space handling
* turned off or on according to the xml:space attribute.
- * @serial
+ *
*/
private boolean m_defaultSpace = true;
/**
* Tell if this element only has one text child, for optimization purposes.
- * @serial
+ *
*/
private boolean m_hasTextLitOnly = false;
/**
* Tell if this element only has one text child, for optimization purposes.
- * @serial
+ *
*/
protected boolean m_hasVariableDecl = false;
@@ -931,7 +931,7 @@ public class ElemTemplateElement extends UnImplNode
/**
* The list of namespace declarations for this element only.
- * @serial
+ *
*/
private List m_declaredPrefixes;
@@ -1072,7 +1072,7 @@ public class ElemTemplateElement extends UnImplNode
/**
* The table of {@link XMLNSDecl}s for this element
* and all parent elements, screened for excluded prefixes.
- * @serial
+ *
*/
private List m_prefixTable;
@@ -1375,7 +1375,7 @@ public class ElemTemplateElement extends UnImplNode
}
/** The *relative* document order number of this element.
- * @serial */
+ * */
protected int m_docOrderNumber = -1;
/**
@@ -1401,7 +1401,7 @@ public class ElemTemplateElement extends UnImplNode
/**
* Parent node.
- * @serial
+ *
*/
protected ElemTemplateElement m_parentNode;
@@ -1437,7 +1437,7 @@ public class ElemTemplateElement extends UnImplNode
/**
* Next sibling.
- * @serial
+ *
*/
ElemTemplateElement m_nextSibling;
@@ -1526,7 +1526,7 @@ public class ElemTemplateElement extends UnImplNode
/**
* First child.
- * @serial
+ *
*/
ElemTemplateElement m_firstChild;
diff --git a/src/main/java/org/apache/xalan/templates/ElemUse.java b/src/main/java/org/apache/xalan/templates/ElemUse.java
index 8d666eb29..8a00c6fb4 100644
--- a/src/main/java/org/apache/xalan/templates/ElemUse.java
+++ b/src/main/java/org/apache/xalan/templates/ElemUse.java
@@ -43,7 +43,7 @@ public class ElemUse extends ElemTemplateElement
/**
* The value of the "use-attribute-sets" attribute.
- * @serial
+ *
*/
private QName m_attributeSetsNames[] = null;
diff --git a/src/main/java/org/apache/xalan/templates/ElemValueOf.java b/src/main/java/org/apache/xalan/templates/ElemValueOf.java
index 58d27368d..c70c2fdfb 100644
--- a/src/main/java/org/apache/xalan/templates/ElemValueOf.java
+++ b/src/main/java/org/apache/xalan/templates/ElemValueOf.java
@@ -162,7 +162,7 @@ public class ElemValueOf extends ElemTemplateElement {
/**
* Tells if this element should disable escaping.
- * @serial
+ *
*/
private boolean m_disableOutputEscaping = false;
diff --git a/src/main/java/org/apache/xalan/templates/ElemVariable.java b/src/main/java/org/apache/xalan/templates/ElemVariable.java
index 96d967654..ad2634eaf 100644
--- a/src/main/java/org/apache/xalan/templates/ElemVariable.java
+++ b/src/main/java/org/apache/xalan/templates/ElemVariable.java
@@ -163,7 +163,7 @@ public class ElemVariable extends ElemTemplateElement
/**
* The value of the "select" attribute.
- * @serial
+ *
*/
private XPath m_selectPattern;
@@ -199,7 +199,7 @@ public class ElemVariable extends ElemTemplateElement
/**
* The value of the "name" attribute.
- * @serial
+ *
*/
protected QName m_qname;
diff --git a/src/main/java/org/apache/xalan/templates/ElemWhen.java b/src/main/java/org/apache/xalan/templates/ElemWhen.java
index c2c5e98ec..2aeb20523 100644
--- a/src/main/java/org/apache/xalan/templates/ElemWhen.java
+++ b/src/main/java/org/apache/xalan/templates/ElemWhen.java
@@ -41,7 +41,7 @@ public class ElemWhen extends ElemTemplateElement
/**
* Each xsl:when element has a single attribute, test,
* which specifies an expression.
- * @serial
+ *
*/
private XPath m_test;
diff --git a/src/main/java/org/apache/xalan/templates/ElemWithParam.java b/src/main/java/org/apache/xalan/templates/ElemWithParam.java
index 5dd454de5..29c0ec50c 100644
--- a/src/main/java/org/apache/xalan/templates/ElemWithParam.java
+++ b/src/main/java/org/apache/xalan/templates/ElemWithParam.java
@@ -60,7 +60,7 @@ public class ElemWithParam extends ElemTemplateElement
/**
* The "select" attribute, which specifies the value of the
* argument, if element content is not specified.
- * @serial
+ *
*/
private XPath m_selectPattern = null;
@@ -104,7 +104,7 @@ public class ElemWithParam extends ElemTemplateElement
* parameter (the variable the value of whose binding is
* to be replaced). The value of the name attribute is a QName,
* which is expanded as described in [2.4 Qualified Names].
- * @serial
+ *
*/
private QName m_qname = null;
diff --git a/src/main/java/org/apache/xalan/templates/KeyDeclaration.java b/src/main/java/org/apache/xalan/templates/KeyDeclaration.java
index 4b3d1d8b8..df2d0de3d 100644
--- a/src/main/java/org/apache/xalan/templates/KeyDeclaration.java
+++ b/src/main/java/org/apache/xalan/templates/KeyDeclaration.java
@@ -50,7 +50,7 @@ public class KeyDeclaration extends ElemTemplateElement
/**
* The "name" property.
- * @serial
+ *
*/
private QName m_name;
@@ -93,7 +93,7 @@ public class KeyDeclaration extends ElemTemplateElement
/**
* The "match" attribute.
- * @serial
+ *
*/
private XPath m_matchPattern = null;
@@ -127,7 +127,7 @@ public class KeyDeclaration extends ElemTemplateElement
/**
* The "use" attribute.
- * @serial
+ *
*/
private XPath m_use;
diff --git a/src/main/java/org/apache/xalan/templates/NamespaceAlias.java b/src/main/java/org/apache/xalan/templates/NamespaceAlias.java
index 5bfba638f..6bb141e28 100644
--- a/src/main/java/org/apache/xalan/templates/NamespaceAlias.java
+++ b/src/main/java/org/apache/xalan/templates/NamespaceAlias.java
@@ -44,7 +44,7 @@ public class NamespaceAlias extends ElemTemplateElement
/**
* The "stylesheet-prefix" attribute.
- * @serial
+ *
*/
private String m_StylesheetPrefix;
@@ -70,7 +70,7 @@ public class NamespaceAlias extends ElemTemplateElement
/**
* The namespace in the stylesheet space.
- * @serial
+ *
*/
private String m_StylesheetNamespace;
@@ -96,7 +96,7 @@ public class NamespaceAlias extends ElemTemplateElement
/**
* The "result-prefix" attribute.
- * @serial
+ *
*/
private String m_ResultPrefix;
@@ -122,7 +122,7 @@ public class NamespaceAlias extends ElemTemplateElement
/**
* The result namespace.
- * @serial
+ *
*/
private String m_ResultNamespace;
diff --git a/src/main/java/org/apache/xalan/templates/OutputProperties.java b/src/main/java/org/apache/xalan/templates/OutputProperties.java
index 5c9ada009..2aa5d559a 100644
--- a/src/main/java/org/apache/xalan/templates/OutputProperties.java
+++ b/src/main/java/org/apache/xalan/templates/OutputProperties.java
@@ -668,7 +668,7 @@ public class OutputProperties extends ElemTemplateElement
}
/** The output properties.
- * @serial */
+ * */
private Properties m_properties = null;
/**
diff --git a/src/main/java/org/apache/xalan/templates/WhiteSpaceInfo.java b/src/main/java/org/apache/xalan/templates/WhiteSpaceInfo.java
index 01998661a..551b267a5 100644
--- a/src/main/java/org/apache/xalan/templates/WhiteSpaceInfo.java
+++ b/src/main/java/org/apache/xalan/templates/WhiteSpaceInfo.java
@@ -34,7 +34,7 @@ public class WhiteSpaceInfo extends ElemTemplate
static final long serialVersionUID = 6389208261999943836L;
/** Flag indicating whether whitespaces should be stripped.
- * @serial */
+ * */
private boolean m_shouldStripSpace;
/**
diff --git a/src/main/java/org/apache/xalan/templates/XMLNSDecl.java b/src/main/java/org/apache/xalan/templates/XMLNSDecl.java
index 76d1906e3..56f132762 100644
--- a/src/main/java/org/apache/xalan/templates/XMLNSDecl.java
+++ b/src/main/java/org/apache/xalan/templates/XMLNSDecl.java
@@ -44,7 +44,7 @@ public class XMLNSDecl
}
/** non-null reference to prefix, using "" for default namespace.
- * @serial */
+ * */
private String m_prefix;
/**
@@ -58,7 +58,7 @@ public class XMLNSDecl
}
/** non-null reference to namespace URI.
- * @serial */
+ * */
private String m_uri;
/**
@@ -71,7 +71,7 @@ public class XMLNSDecl
}
/** true if this namespace declaration should normally be excluded.
- * @serial */
+ * */
private boolean m_isExcluded;
/**
diff --git a/src/main/java/org/apache/xalan/templates/XUnresolvedVariable.java b/src/main/java/org/apache/xalan/templates/XUnresolvedVariable.java
index 84c21dd95..7a35af365 100644
--- a/src/main/java/org/apache/xalan/templates/XUnresolvedVariable.java
+++ b/src/main/java/org/apache/xalan/templates/XUnresolvedVariable.java
@@ -52,7 +52,7 @@ public class XUnresolvedVariable extends XObject
transient private int m_varStackContext;
/** true if this variable or parameter is a global.
- * @serial */
+ * */
private boolean m_isGlobal;
/** true if this variable or parameter is not currently being evaluated. */
diff --git a/src/main/java/org/apache/xalan/transformer/ForEachGroupXslSortSorter.java b/src/main/java/org/apache/xalan/transformer/ForEachGroupXslSortSorter.java
index c742acb24..f8b1bddff 100644
--- a/src/main/java/org/apache/xalan/transformer/ForEachGroupXslSortSorter.java
+++ b/src/main/java/org/apache/xalan/transformer/ForEachGroupXslSortSorter.java
@@ -15,9 +15,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/*
- * $Id$
- */
package org.apache.xalan.transformer;
import java.text.CollationKey;
@@ -33,14 +30,16 @@ import javax.xml.transform.TransformerException;
import org.apache.xalan.templates.ElemForEachGroup;
import org.apache.xalan.templates.GroupingKeyAndGroupPair;
import org.apache.xml.dtm.DTM;
-import org.apache.xml.dtm.DTMCursorIterator;
import org.apache.xpath.XPathContext;
-import org.apache.xpath.objects.XMLNodeCursorImpl;
import org.apache.xpath.objects.XObject;
/**
- * An instance of this class, shall sort xsl:for-each-group groups, according to
- * xsl:sort element(s) within xsl:for-each-group element.
+ * An instance of this class, shall sort xsl:for-each-group's groups,
+ * according to xsl:sort elements contained within xsl:for-each-group
+ * instruction.
+ *
+ * An implementation of this class, follows design of xsl:for-each
+ * instruction's xsl:sort element.
*
* @author Mukul Gandhi <mu...@apache.org>
*
@@ -50,24 +49,26 @@ public class ForEachGroupXslSortSorter
{
/** Reference to the current xsl:for-each-group element */
- ElemForEachGroup m_elemForEachGroup;
+ private ElemForEachGroup m_elemForEachGroup;
/** Current XPath context */
- XPathContext m_execContext;
+ private XPathContext m_xctxt;
/** Vector of NodeSortKeys */
- Vector m_keys;
+ private Vector m_keys;
+
/**
- * Constructor for this class.
+ * Class constructor.
*
- * @param xpathContext XPath context to use
+ * @param xctxt An XPath context object
*
- * @param elemForEachGroup reference to current xsl:for-each-group element
+ * @param elemForEachGroup An xsl:for-each-group instruction's object
+ * reference.
*/
- public ForEachGroupXslSortSorter(XPathContext xpathContext, ElemForEachGroup elemForEachGroup)
+ public ForEachGroupXslSortSorter(XPathContext xctxt, ElemForEachGroup elemForEachGroup)
{
- m_execContext = xpathContext;
+ m_xctxt = xctxt;
m_elemForEachGroup = elemForEachGroup;
}
@@ -75,13 +76,13 @@ public class ForEachGroupXslSortSorter
* Given an object representing xsl:for-each-group groups to be sorted, sort these groups
* according to the criteria represented by the xsl:sort element(s).
*
- * @param forEachGroups groups to be sorted.
- * @param sortKeys a vector of NodeSortKeys.
- * @param xpathContext XPath context to use
+ * @param forEachGroups Reference of groups to be sorted
+ * @param sortKeys Vector of sort key objects
+ * @param xctxt An XPath context object
*
* @throws javax.xml.transform.TransformerException
*/
- public List<GroupingKeyAndGroupPair> sort(Object forEachGroups, Vector sortKeys, XPathContext xpathContext)
+ public List<GroupingKeyAndGroupPair> sort(Object forEachGroups, Vector sortKeys, XPathContext xctxt)
throws javax.xml.transform.TransformerException {
List<GroupingKeyAndGroupPair> groupingKeyAndGroupPairList = new ArrayList<GroupingKeyAndGroupPair>();
@@ -122,21 +123,24 @@ public class ForEachGroupXslSortSorter
Vector nodeCompareElements = new Vector();
for (int idx = 0; idx < numberOfGroups; idx++) {
- NodeCompareElem elem = new NodeCompareElem(groupingKeyAndGroupPairList.get(idx));
+ XslForEachGroupNodeCompareElem elem = new XslForEachGroupNodeCompareElem(m_elemForEachGroup,
+ groupingKeyAndGroupPairList.get(idx),
+ m_keys,
+ xctxt);
nodeCompareElements.addElement(elem);
}
Vector scratchVector = new Vector();
- mergesort(nodeCompareElements, scratchVector, 0, numberOfGroups - 1, xpathContext);
+ mergesort(nodeCompareElements, scratchVector, 0, numberOfGroups - 1, xctxt);
groupingKeyAndGroupPairList.clear();
int size2 = nodeCompareElements.size();
for (int idx = 0; idx < size2; idx++)
{
- GroupingKeyAndGroupPair groupingKeyAndGroupPair = ((NodeCompareElem)nodeCompareElements.get(idx)).
+ GroupingKeyAndGroupPair groupingKeyAndGroupPair = ((XslForEachGroupNodeCompareElem)nodeCompareElements.get(idx)).
getGroupingKeyAndGroupPair();
groupingKeyAndGroupPairList.add(groupingKeyAndGroupPair);
}
@@ -148,18 +152,18 @@ public class ForEachGroupXslSortSorter
/**
* Return the results of a compare of two xsl:for-each-group groups.
*
- * @param n1 first node to use for compare
- * @param n2 second node to use for compare
- * @param kIndex index of NodeSortKey to use for sort
- * @param xpathContext XPath context to use
+ * @param n1 first node to use for compare
+ * @param n2 second node to use for compare
+ * @param kIndex index of NodeSortKey to use for sort
+ * @param xctxt An XPath context object
*
- * @return The result of comparing two xsl:for-each-group groups, for the purpose of sorting
- * with xsl:sort element(s).
+ * @return The result of comparing relative sort order between
+ * two xsl:for-each-group groups.
*
* @throws TransformerException
*/
- int compare(NodeCompareElem n1, NodeCompareElem n2, int kIndex,
- XPathContext xpathContext) throws TransformerException {
+ private int compare(XslForEachGroupNodeCompareElem n1, XslForEachGroupNodeCompareElem n2, int kIndex,
+ XPathContext xctxt) throws TransformerException {
int result = 0;
@@ -185,9 +189,9 @@ public class ForEachGroupXslSortSorter
else
{
// get values dynamically
- XObject r1 = k.m_selectPat.execute(m_execContext, n1ContextNode,
+ XObject r1 = k.m_selectPat.execute(m_xctxt, n1ContextNode,
k.m_namespaceContext);
- XObject r2 = k.m_selectPat.execute(m_execContext, n2ContextNode,
+ XObject r2 = k.m_selectPat.execute(m_xctxt, n2ContextNode,
k.m_namespaceContext);
n1Num = r1.num();
@@ -196,7 +200,7 @@ public class ForEachGroupXslSortSorter
if ((n1Num == n2Num) && ((kIndex + 1) < m_keys.size()))
{
- result = compare(n1, n2, kIndex + 1, xpathContext);
+ result = compare(n1, n2, kIndex + 1, xctxt);
}
else
{
@@ -235,9 +239,9 @@ public class ForEachGroupXslSortSorter
else
{
// get values dynamically
- XObject r1 = k.m_selectPat.execute(m_execContext, n1ContextNode,
+ XObject r1 = k.m_selectPat.execute(m_xctxt, n1ContextNode,
k.m_namespaceContext);
- XObject r2 = k.m_selectPat.execute(m_execContext, n2ContextNode,
+ XObject r2 = k.m_selectPat.execute(m_xctxt, n2ContextNode,
k.m_namespaceContext);
n1String = k.m_col.getCollationKey(r1.str());
@@ -269,12 +273,12 @@ public class ForEachGroupXslSortSorter
if (0 == result) {
if ((kIndex + 1) < m_keys.size())
{
- result = compare(n1, n2, kIndex + 1, xpathContext);
+ result = compare(n1, n2, kIndex + 1, xctxt);
}
}
if (0 == result) {
- DTM dtm = xpathContext.getDTM(n1ContextNode);
+ DTM dtm = xctxt.getDTM(n1ContextNode);
result = dtm.isNodeAfter(n1ContextNode, n2ContextNode) ? -1 : 1;
}
@@ -293,7 +297,7 @@ public class ForEachGroupXslSortSorter
*
* @throws TransformerException
*/
- void mergesort(Vector a, Vector b, int l, int r, XPathContext xpathContext)
+ private void mergesort(Vector a, Vector b, int l, int r, XPathContext xpathContext)
throws TransformerException {
if ((r - l) > 0) {
@@ -329,8 +333,8 @@ public class ForEachGroupXslSortSorter
if (i == j)
compVal = -1;
else
- compVal = compare((NodeCompareElem) b.elementAt(i),
- (NodeCompareElem) b.elementAt(j), 0, xpathContext);
+ compVal = compare((XslForEachGroupNodeCompareElem) b.elementAt(i),
+ (XslForEachGroupNodeCompareElem) b.elementAt(j), 0, xpathContext);
if (compVal < 0) {
a.setElementAt(b.elementAt(i), k);
@@ -343,101 +347,5 @@ public class ForEachGroupXslSortSorter
}
}
}
-
- /**
- * This class stores the value(s) produced by evaluating the given
- * xsl:for-each-group group with the sort key(s).
- *
- * @xsl.usage internal
- */
- class NodeCompareElem {
-
- /** This maxkey value was chosen arbitrarily. We're assuming that the
- maxkey + 1 keys will only occur fairly rarely and therefore, we will
- get the node values for those keys dynamically.
- */
- int maxkey = 2;
-
- /** Value from first sort key */
- Object m_key1Value;
-
- /** Value from second sort key */
- Object m_key2Value;
-
- GroupingKeyAndGroupPair m_groupingKeyAndGroupPair;
-
- /**
- * Constructor function, of this class.
- *
- * @param groupingKeyAndGroupPair current GroupingKeyAndGroupPair object
- *
- * @throws javax.xml.transform.TransformerException
- */
- NodeCompareElem(GroupingKeyAndGroupPair groupingKeyAndGroupPair) throws
- javax.xml.transform.TransformerException {
-
- this.m_groupingKeyAndGroupPair = groupingKeyAndGroupPair;
-
- int contextNodeDtmHandle = ((groupingKeyAndGroupPair.getGroupNodeDtmHandles()).
- get(0)).intValue();
-
- TransformerImpl transformer = (TransformerImpl) m_execContext.getOwnerObject();
- m_elemForEachGroup.setGroupingKey(groupingKeyAndGroupPair.getGroupingKey());
- m_elemForEachGroup.setGroupNodesDtmHandles(groupingKeyAndGroupPair.getGroupNodeDtmHandles());
- transformer.setCurrentElement(m_elemForEachGroup);
-
- // for the xsl:sort element select expression's evaluation, the context item is the
- // initial item of the group.
- m_execContext.pushCurrentNode(contextNodeDtmHandle);
-
- if (!m_keys.isEmpty()) {
- NodeSortKey k1 = (NodeSortKey) m_keys.elementAt(0);
- XObject r = (k1.m_selectPat).execute(m_execContext, contextNodeDtmHandle,
- k1.m_namespaceContext);
-
- double d;
-
- if (k1.m_treatAsNumbers) {
- d = r.num();
- m_key1Value = new Double(d);
- }
- else {
- m_key1Value = k1.m_col.getCollationKey(r.str());
- }
-
- if (r.getType() == XObject.CLASS_NODESET) {
- DTMCursorIterator ni = ((XMLNodeCursorImpl)r).iterRaw();
- int current = ni.getCurrentNode();
- if(DTM.NULL == current) {
- current = ni.nextNode();
- }
- }
-
- if (m_keys.size() > 1) {
- NodeSortKey k2 = (NodeSortKey) m_keys.elementAt(1);
-
- XObject r2 = (k2.m_selectPat).execute(m_execContext, contextNodeDtmHandle,
- k2.m_namespaceContext);
-
- if (k2.m_treatAsNumbers) {
- d = r2.num();
- m_key2Value = new Double(d);
- } else {
- m_key2Value = k2.m_col.getCollationKey(r2.str());
- }
- }
- }
- }
-
- public GroupingKeyAndGroupPair getGroupingKeyAndGroupPair() {
- return m_groupingKeyAndGroupPair;
- }
-
- public void setGroupingKeyAndGroupPair(GroupingKeyAndGroupPair
- groupingKeyAndGroupPair) {
- this.m_groupingKeyAndGroupPair = groupingKeyAndGroupPair;
- }
-
- }
}
diff --git a/src/main/java/org/apache/xalan/transformer/KeyIterator.java b/src/main/java/org/apache/xalan/transformer/KeyIterator.java
index 1900e84ff..fdeb06767 100644
--- a/src/main/java/org/apache/xalan/transformer/KeyIterator.java
+++ b/src/main/java/org/apache/xalan/transformer/KeyIterator.java
@@ -44,7 +44,7 @@ public class KeyIterator extends OneStepIteratorForward
static final long serialVersionUID = -1349109910100249661L;
/** Key name.
- * @serial */
+ * */
private QName m_name;
/**
@@ -59,7 +59,7 @@ public class KeyIterator extends OneStepIteratorForward
}
/** Vector of Key declarations in the stylesheet.
- * @serial */
+ * */
private Vector m_keyDeclarations;
/**
diff --git a/src/main/java/org/apache/xalan/transformer/KeyRefIterator.java b/src/main/java/org/apache/xalan/transformer/KeyRefIterator.java
index a6505ab7a..7c7db3556 100644
--- a/src/main/java/org/apache/xalan/transformer/KeyRefIterator.java
+++ b/src/main/java/org/apache/xalan/transformer/KeyRefIterator.java
@@ -164,7 +164,7 @@ public class KeyRefIterator extends org.apache.xpath.axes.ChildTestIterator
protected QName m_name;
/** Vector of Key declarations in the stylesheet.
- * @serial */
+ * */
protected Vector m_keyDeclarations;
}
diff --git a/src/main/java/org/apache/xalan/transformer/NodeSorter.java b/src/main/java/org/apache/xalan/transformer/NodeSorter.java
index af4a0ca78..4f8c0fa63 100644
--- a/src/main/java/org/apache/xalan/transformer/NodeSorter.java
+++ b/src/main/java/org/apache/xalan/transformer/NodeSorter.java
@@ -43,7 +43,7 @@ public class NodeSorter
{
/** Current XPath context */
- XPathContext m_execContext;
+ XPathContext m_xctxt;
/** Vector of NodeSortKeys */
Vector m_keys;
@@ -53,11 +53,11 @@ public class NodeSorter
* so it can know how to get the node data according to
* the proper whitespace rules.
*
- * @param p Xpath context to use
+ * @param xctxt An XPath context object
*/
- public NodeSorter(XPathContext p)
+ public NodeSorter(XPathContext xctxt)
{
- m_execContext = p;
+ m_xctxt = xctxt;
}
/**
@@ -181,9 +181,9 @@ public class NodeSorter
else
{
// Get values dynamically
- XObject r1 = k.m_selectPat.execute(m_execContext, n1.m_node,
+ XObject r1 = k.m_selectPat.execute(m_xctxt, n1.m_node,
k.m_namespaceContext);
- XObject r2 = k.m_selectPat.execute(m_execContext, n2.m_node,
+ XObject r2 = k.m_selectPat.execute(m_xctxt, n2.m_node,
k.m_namespaceContext);
n1Num = r1.num();
@@ -234,13 +234,16 @@ public class NodeSorter
else
{
// Get values dynamically
- XObject r1 = k.m_selectPat.execute(m_execContext, n1.m_node,
+ XObject r1 = k.m_selectPat.execute(m_xctxt, n1.m_node,
k.m_namespaceContext);
- XObject r2 = k.m_selectPat.execute(m_execContext, n2.m_node,
+ XObject r2 = k.m_selectPat.execute(m_xctxt, n2.m_node,
k.m_namespaceContext);
- n1String = k.m_col.getCollationKey(r1.str());
- n2String = k.m_col.getCollationKey(r2.str());
+ String str1 = XslTransformEvaluationHelper.getStrVal(r1);
+ String str2 = XslTransformEvaluationHelper.getStrVal(r2);
+
+ n1String = k.m_col.getCollationKey(str1);
+ n2String = k.m_col.getCollationKey(str2);
}
// Use collation keys for faster compare, but note that whitespaces
@@ -418,7 +421,7 @@ public class NodeSorter
if (!m_keys.isEmpty())
{
NodeSortKey k1 = (NodeSortKey) m_keys.elementAt(0);
- XObject r = k1.m_selectPat.execute(m_execContext, node, k1.m_namespaceContext);
+ XObject r = k1.m_selectPat.execute(m_xctxt, node, k1.m_namespaceContext);
double d;
@@ -452,14 +455,15 @@ public class NodeSorter
{
NodeSortKey k2 = (NodeSortKey) m_keys.elementAt(1);
- XObject r2 = k2.m_selectPat.execute(m_execContext, node,
+ XObject r2 = k2.m_selectPat.execute(m_xctxt, node,
k2.m_namespaceContext);
if (k2.m_treatAsNumbers) {
d = r2.num();
m_key2Value = new Double(d);
} else {
- m_key2Value = k2.m_col.getCollationKey(r2.str());
+ String str2 = XslTransformEvaluationHelper.getStrVal(r2);
+ m_key2Value = k2.m_col.getCollationKey(str2);
}
}
} // end if not empty
@@ -480,15 +484,15 @@ public class NodeSorter
{
NodeSortKey k1 = (NodeSortKey) m_keys.elementAt(0);
- XObject prevXctxtItem = m_execContext.getXPath3ContextItem();
+ XObject prevXctxtItem = m_xctxt.getXPath3ContextItem();
XObject r = null;
try {
- m_execContext.setXPath3ContextItem(xObj);
- r = k1.m_selectPat.execute(m_execContext, DTM.NULL, k1.m_namespaceContext);
+ m_xctxt.setXPath3ContextItem(xObj);
+ r = k1.m_selectPat.execute(m_xctxt, DTM.NULL, k1.m_namespaceContext);
}
finally {
- m_execContext.setXPath3ContextItem(prevXctxtItem);
+ m_xctxt.setXPath3ContextItem(prevXctxtItem);
}
double d = 0.0;
@@ -523,14 +527,14 @@ public class NodeSorter
{
NodeSortKey k2 = (NodeSortKey) m_keys.elementAt(1);
- m_execContext.setXPath3ContextItem(xObj);
+ m_xctxt.setXPath3ContextItem(xObj);
XObject r2 = null;
try {
- r2 = k2.m_selectPat.execute(m_execContext, DTM.NULL, k2.m_namespaceContext);
+ r2 = k2.m_selectPat.execute(m_xctxt, DTM.NULL, k2.m_namespaceContext);
}
finally {
- m_execContext.setXPath3ContextItem(prevXctxtItem);
+ m_xctxt.setXPath3ContextItem(prevXctxtItem);
}
if (k2.m_treatAsNumbers) {
@@ -545,7 +549,8 @@ public class NodeSorter
m_key2Value = new Double(d);
} else {
- m_key2Value = k2.m_col.getCollationKey(r2.str());
+ String str2 = XslTransformEvaluationHelper.getStrVal(r2);
+ m_key2Value = k2.m_col.getCollationKey(str2);
}
}
} // end if not empty
diff --git a/src/main/java/org/apache/xalan/transformer/XslForEachGroupNodeCompareElem.java b/src/main/java/org/apache/xalan/transformer/XslForEachGroupNodeCompareElem.java
new file mode 100644
index 000000000..e9290fe2c
--- /dev/null
+++ b/src/main/java/org/apache/xalan/transformer/XslForEachGroupNodeCompareElem.java
@@ -0,0 +1,144 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.xalan.transformer;
+
+import java.util.Vector;
+
+import org.apache.xalan.templates.ElemForEachGroup;
+import org.apache.xalan.templates.GroupingKeyAndGroupPair;
+import org.apache.xalan.xslt.util.XslTransformEvaluationHelper;
+import org.apache.xml.dtm.DTM;
+import org.apache.xml.dtm.DTMCursorIterator;
+import org.apache.xpath.XPathContext;
+import org.apache.xpath.objects.XMLNodeCursorImpl;
+import org.apache.xpath.objects.XObject;
+
+/**
+ * This class is used for xsl:for-each-group instruction's
+ * xsl:sort implementation.
+ *
+ * The code for this class, follows design of xsl:for-each instruction's
+ * xsl:sort implementation.
+ *
+ * @author Mukul Gandhi <mu...@apache.org>
+ *
+ * @xsl.usage internal
+ */
+public class XslForEachGroupNodeCompareElem {
+
+ /** This maxkey value was chosen arbitrarily. We're assuming that the
+ maxkey + 1 keys will only occur fairly rarely and therefore, we will
+ get the node values for those keys dynamically.
+ */
+ private int maxkey = 2;
+
+ /** Value from first sort key */
+ Object m_key1Value;
+
+ /** Value from second sort key */
+ Object m_key2Value;
+
+ private GroupingKeyAndGroupPair m_groupingKeyAndGroupPair;
+
+ /**
+ * Class constructor.
+ *
+ * @param elemForEachGrp Reference to xsl:for-each-group instruction
+ * object.
+ * @param groupingKeyAndGroupPair An object instance, representing mapping between
+ * a group and its grouping key.
+ * @param sortKeys Vector of sort key objects
+ * @param xctxt An XPath context object
+ *
+ * @throws javax.xml.transform.TransformerException
+ */
+ public XslForEachGroupNodeCompareElem(ElemForEachGroup elemForEachGrp, GroupingKeyAndGroupPair
+ groupingKeyAndGroupPair,
+ Vector sortKeys,
+ XPathContext xctxt) throws javax.xml.transform.TransformerException {
+
+ this.m_groupingKeyAndGroupPair = groupingKeyAndGroupPair;
+
+ int currentNode = ((m_groupingKeyAndGroupPair.getGroupNodeDtmHandles()).get(0)).intValue();
+
+ TransformerImpl transformer = (TransformerImpl)(xctxt.getOwnerObject());
+ elemForEachGrp.setGroupingKey(groupingKeyAndGroupPair.getGroupingKey());
+ elemForEachGrp.setGroupNodesDtmHandles(groupingKeyAndGroupPair.getGroupNodeDtmHandles());
+ transformer.setCurrentElement(elemForEachGrp);
+
+ /**
+ * For xsl:for-each-group's xsl:sort implementation, an XPath context
+ * item for xsl:sort's XPath expression is initial xdm item of the
+ * group.
+ */
+
+ try {
+ xctxt.pushCurrentNode(currentNode);
+
+ if (!sortKeys.isEmpty()) {
+ NodeSortKey k1 = (NodeSortKey) sortKeys.elementAt(0);
+ XObject r = (k1.m_selectPat).execute(xctxt, currentNode, k1.m_namespaceContext);
+
+ double d;
+
+ if (k1.m_treatAsNumbers) {
+ d = r.num();
+ m_key1Value = new Double(d);
+ }
+ else {
+ String str1 = XslTransformEvaluationHelper.getStrVal(r);
+ m_key1Value = k1.m_col.getCollationKey(str1);
+ }
+
+ if (r.getType() == XObject.CLASS_NODESET) {
+ DTMCursorIterator ni = ((XMLNodeCursorImpl)r).iterRaw();
+ int current = ni.getCurrentNode();
+ if(DTM.NULL == current) {
+ current = ni.nextNode();
+ }
+ }
+
+ if (sortKeys.size() > 1) {
+ NodeSortKey k2 = (NodeSortKey) sortKeys.elementAt(1);
+
+ XObject r2 = (k2.m_selectPat).execute(xctxt, currentNode, k2.m_namespaceContext);
+
+ if (k2.m_treatAsNumbers) {
+ d = r2.num();
+ m_key2Value = new Double(d);
+ } else {
+ String str1 = XslTransformEvaluationHelper.getStrVal(r2);
+ m_key2Value = k2.m_col.getCollationKey(str1);
+ }
+ }
+ }
+ }
+ finally {
+ xctxt.popCurrentNode();
+ }
+ }
+
+ public GroupingKeyAndGroupPair getGroupingKeyAndGroupPair() {
+ return m_groupingKeyAndGroupPair;
+ }
+
+ public void setGroupingKeyAndGroupPair(GroupingKeyAndGroupPair groupingKeyAndGroupPair) {
+ this.m_groupingKeyAndGroupPair = groupingKeyAndGroupPair;
+ }
+
+}
diff --git a/src/main/java/org/apache/xml/dtm/DTMException.java b/src/main/java/org/apache/xml/dtm/DTMException.java
index 65b3e7659..342d09ceb 100644
--- a/src/main/java/org/apache/xml/dtm/DTMException.java
+++ b/src/main/java/org/apache/xml/dtm/DTMException.java
@@ -38,7 +38,7 @@ public class DTMException extends RuntimeException {
static final long serialVersionUID = -775576419181334734L;
/** Field locator specifies where the error occured.
- * @serial */
+ * */
SourceLocator locator;
/**
@@ -62,7 +62,7 @@ public class DTMException extends RuntimeException {
}
/** Field containedException specifies a wrapped exception. May be null.
- * @serial */
+ * */
Throwable containedException;
/**
diff --git a/src/main/java/org/apache/xml/serializer/utils/URI.java b/src/main/java/org/apache/xml/serializer/utils/URI.java
index e79c5a249..241a6dd76 100644
--- a/src/main/java/org/apache/xml/serializer/utils/URI.java
+++ b/src/main/java/org/apache/xml/serializer/utils/URI.java
@@ -112,34 +112,34 @@ final class URI
private static final String USERINFO_CHARACTERS = ";:&=+$,";
/** Stores the scheme (usually the protocol) for this URI.
- * @serial */
+ * */
private String m_scheme = null;
/** If specified, stores the userinfo for this URI; otherwise null.
- * @serial */
+ * */
private String m_userinfo = null;
/** If specified, stores the host for this URI; otherwise null.
- * @serial */
+ * */
private String m_host = null;
/** If specified, stores the port for this URI; otherwise -1.
- * @serial */
+ * */
private int m_port = -1;
/** If specified, stores the path for this URI; otherwise null.
- * @serial */
+ * */
private String m_path = null;
/**
* If specified, stores the query string for this URI; otherwise
* null.
- * @serial
+ *
*/
private String m_queryString = null;
/** If specified, stores the fragment for this URI; otherwise null.
- * @serial */
+ * */
private String m_fragment = null;
/** Indicate whether in DEBUG mode */
diff --git a/src/main/java/org/apache/xml/serializer/utils/WrappedRuntimeException.java b/src/main/java/org/apache/xml/serializer/utils/WrappedRuntimeException.java
index 8b7026a42..bf43ea79b 100644
--- a/src/main/java/org/apache/xml/serializer/utils/WrappedRuntimeException.java
+++ b/src/main/java/org/apache/xml/serializer/utils/WrappedRuntimeException.java
@@ -37,7 +37,7 @@ public final class WrappedRuntimeException extends RuntimeException
static final long serialVersionUID = 7140414456714658073L;
/** Primary checked exception.
- * @serial */
+ * */
private Exception m_exception;
/**
diff --git a/src/main/java/org/apache/xml/utils/NameSpace.java b/src/main/java/org/apache/xml/utils/NameSpace.java
index 85b86ca4a..883e4db52 100644
--- a/src/main/java/org/apache/xml/utils/NameSpace.java
+++ b/src/main/java/org/apache/xml/utils/NameSpace.java
@@ -33,15 +33,15 @@ public class NameSpace implements Serializable
static final long serialVersionUID = 1471232939184881839L;
/** Next NameSpace element on the stack.
- * @serial */
+ * */
public NameSpace m_next = null;
/** Prefix of this NameSpace element.
- * @serial */
+ * */
public String m_prefix;
/** Namespace URI of this NameSpace element.
- * @serial */
+ * */
public String m_uri; // if null, then Element namespace is empty.
/**
diff --git a/src/main/java/org/apache/xml/utils/NodeVector.java b/src/main/java/org/apache/xml/utils/NodeVector.java
index 6eba45faf..2c68ba871 100644
--- a/src/main/java/org/apache/xml/utils/NodeVector.java
+++ b/src/main/java/org/apache/xml/utils/NodeVector.java
@@ -34,25 +34,25 @@ public class NodeVector implements Serializable, Cloneable
/**
* Size of blocks to allocate.
- * @serial
+ *
*/
private int m_blocksize;
/**
* Array of nodes this points to.
- * @serial
+ *
*/
private int m_map[];
/**
* Number of nodes in this NodeVector.
- * @serial
+ *
*/
protected int m_firstFree = 0;
/**
* Size of the array this points to.
- * @serial
+ *
*/
private int m_mapSize; // lazy initialization
diff --git a/src/main/java/org/apache/xml/utils/ObjectPool.java b/src/main/java/org/apache/xml/utils/ObjectPool.java
index fe73bb59c..938e2d062 100644
--- a/src/main/java/org/apache/xml/utils/ObjectPool.java
+++ b/src/main/java/org/apache/xml/utils/ObjectPool.java
@@ -35,11 +35,11 @@ public class ObjectPool implements java.io.Serializable
static final long serialVersionUID = -8519013691660936643L;
/** Type of objects in this pool.
- * @serial */
+ * */
private final Class objectType;
/** Stack of given objects this points to.
- * @serial */
+ * */
private final ArrayList freeStack;
/**
diff --git a/src/main/java/org/apache/xml/utils/QName.java b/src/main/java/org/apache/xml/utils/QName.java
index 372cbc7a2..f7ead4c87 100644
--- a/src/main/java/org/apache/xml/utils/QName.java
+++ b/src/main/java/org/apache/xml/utils/QName.java
@@ -46,19 +46,19 @@ public class QName implements java.io.Serializable
/**
* The local name.
- * @serial
+ *
*/
protected String _localName;
/**
* The namespace URI.
- * @serial
+ *
*/
protected String _namespaceURI;
/**
* The namespace prefix.
- * @serial
+ *
*/
protected String _prefix;
@@ -70,7 +70,7 @@ public class QName implements java.io.Serializable
/**
* The cached hashcode, which is calculated at construction time.
- * @serial
+ *
*/
private int m_hashCode;
diff --git a/src/main/java/org/apache/xml/utils/SAXSourceLocator.java b/src/main/java/org/apache/xml/utils/SAXSourceLocator.java
index 621a3d259..3e643b461 100644
--- a/src/main/java/org/apache/xml/utils/SAXSourceLocator.java
+++ b/src/main/java/org/apache/xml/utils/SAXSourceLocator.java
@@ -38,7 +38,7 @@ public class SAXSourceLocator extends LocatorImpl
{
static final long serialVersionUID = 3181680946321164112L;
/** The SAX Locator object.
- * @serial
+ *
*/
Locator m_locator;
diff --git a/src/main/java/org/apache/xml/utils/SerializableLocatorImpl.java b/src/main/java/org/apache/xml/utils/SerializableLocatorImpl.java
index 19577e634..de889f384 100644
--- a/src/main/java/org/apache/xml/utils/SerializableLocatorImpl.java
+++ b/src/main/java/org/apache/xml/utils/SerializableLocatorImpl.java
@@ -199,25 +199,25 @@ implements org.xml.sax.Locator, java.io.Serializable
/**
* The public ID.
- * @serial
+ *
*/
private String publicId;
/**
* The system ID.
- * @serial
+ *
*/
private String systemId;
/**
* The line number.
- * @serial
+ *
*/
private int lineNumber;
/**
* The column number.
- * @serial
+ *
*/
private int columnNumber;
diff --git a/src/main/java/org/apache/xml/utils/StringVector.java b/src/main/java/org/apache/xml/utils/StringVector.java
index 01cc15f64..50b06e10f 100644
--- a/src/main/java/org/apache/xml/utils/StringVector.java
+++ b/src/main/java/org/apache/xml/utils/StringVector.java
@@ -29,16 +29,16 @@ public class StringVector implements java.io.Serializable
{
static final long serialVersionUID = 4995234972032919748L;
- /** @serial Size of blocks to allocate */
+ /** Size of blocks to allocate */
protected int m_blocksize;
- /** @serial Array of strings this contains */
+ /** Array of strings this contains */
protected String m_map[];
- /** @serial Number of strings this contains */
+ /** Number of strings this contains */
protected int m_firstFree = 0;
- /** @serial Size of the array */
+ /** Size of the array */
protected int m_mapSize;
/**
diff --git a/src/main/java/org/apache/xml/utils/URI.java b/src/main/java/org/apache/xml/utils/URI.java
index f341b2136..ccda66d03 100644
--- a/src/main/java/org/apache/xml/utils/URI.java
+++ b/src/main/java/org/apache/xml/utils/URI.java
@@ -110,34 +110,34 @@ public class URI implements Serializable
private static final String USERINFO_CHARACTERS = ";:&=+$,";
/** Stores the scheme (usually the protocol) for this URI.
- * @serial */
+ * */
private String m_scheme = null;
/** If specified, stores the userinfo for this URI; otherwise null.
- * @serial */
+ * */
private String m_userinfo = null;
/** If specified, stores the host for this URI; otherwise null.
- * @serial */
+ * */
private String m_host = null;
/** If specified, stores the port for this URI; otherwise -1.
- * @serial */
+ * */
private int m_port = -1;
/** If specified, stores the path for this URI; otherwise null.
- * @serial */
+ * */
private String m_path = null;
/**
* If specified, stores the query string for this URI; otherwise
* null.
- * @serial
+ *
*/
private String m_queryString = null;
/** If specified, stores the fragment for this URI; otherwise null.
- * @serial */
+ * */
private String m_fragment = null;
/** Indicate whether in DEBUG mode */
diff --git a/src/main/java/org/apache/xml/utils/WrappedRuntimeException.java b/src/main/java/org/apache/xml/utils/WrappedRuntimeException.java
index 10bfe458c..48bb34665 100644
--- a/src/main/java/org/apache/xml/utils/WrappedRuntimeException.java
+++ b/src/main/java/org/apache/xml/utils/WrappedRuntimeException.java
@@ -30,7 +30,7 @@ public class WrappedRuntimeException extends RuntimeException
static final long serialVersionUID = 7140414456714658073L;
/** Primary checked exception.
- * @serial */
+ * */
private Exception m_exception;
/**
diff --git a/src/main/java/org/apache/xpath/NodeSet.java b/src/main/java/org/apache/xpath/NodeSet.java
index efffc7052..da1a1be59 100644
--- a/src/main/java/org/apache/xpath/NodeSet.java
+++ b/src/main/java/org/apache/xpath/NodeSet.java
@@ -769,7 +769,7 @@ public class NodeSet
transient protected boolean m_mutable = true;
/** True if this list is cached.
- * @serial */
+ * */
transient protected boolean m_cacheNodes = true;
/**
@@ -819,19 +819,19 @@ public class NodeSet
}
/** Size of blocks to allocate.
- * @serial */
+ * */
private int m_blocksize;
/** Array of nodes this points to.
- * @serial */
+ * */
Node m_map[];
/** Number of nodes in this NodeVector.
- * @serial */
+ * */
protected int m_firstFree = 0;
/** Size of the array this points to.
- * @serial */
+ * */
private int m_mapSize; // lazy initialization
/**
diff --git a/src/main/java/org/apache/xpath/NodeSetDTM.java b/src/main/java/org/apache/xpath/NodeSetDTM.java
index 34385b9d9..059228c72 100644
--- a/src/main/java/org/apache/xpath/NodeSetDTM.java
+++ b/src/main/java/org/apache/xpath/NodeSetDTM.java
@@ -1159,7 +1159,7 @@ public class NodeSetDTM extends NodeVector
transient protected boolean m_mutable = true;
/** True if this list is cached.
- * @serial */
+ * */
transient protected boolean m_cacheNodes = true;
/** The root of the iteration, if available. */
diff --git a/src/main/java/org/apache/xpath/VariableStack.java b/src/main/java/org/apache/xpath/VariableStack.java
index 78bd3b67a..0ad7aa55a 100644
--- a/src/main/java/org/apache/xpath/VariableStack.java
+++ b/src/main/java/org/apache/xpath/VariableStack.java
@@ -82,19 +82,19 @@ public class VariableStack implements Cloneable
/**
* The stack frame where all variables and params will be kept.
- * @serial
+ *
*/
XObject[] _stackFrames;
/**
* The top of the stack frame (<code>_stackFrames</code>).
- * @serial
+ *
*/
int _frameTop;
/**
* The bottom index of the current frame (relative to <code>_stackFrames</code>).
- * @serial
+ *
*/
private int _currentFrameBottom;
@@ -102,7 +102,7 @@ public class VariableStack implements Cloneable
* The stack of frame positions. I call 'em links because of distant
* <a href="http://math.millikin.edu/mprogers/Courses/currentCourses/CS481-ComputerArchitecture/cs481.Motorola68000.html">
* Motorola 68000 assembler</a> memories. :-)
- * @serial
+ *
*/
int[] _links;
diff --git a/src/main/java/org/apache/xpath/XPathException.java b/src/main/java/org/apache/xpath/XPathException.java
index 49c46e83a..763c98017 100644
--- a/src/main/java/org/apache/xpath/XPathException.java
+++ b/src/main/java/org/apache/xpath/XPathException.java
@@ -38,7 +38,7 @@ public class XPathException extends TransformerException
static final long serialVersionUID = 4263549717619045963L;
/** The home of the expression that caused the error.
- * @serial */
+ * */
Object m_styleNode = null;
/**
@@ -61,7 +61,7 @@ public class XPathException extends TransformerException
/** A nested exception.
- * @serial */
+ * */
protected Exception m_exception;
/**
diff --git a/src/main/java/org/apache/xpath/axes/AxesWalker.java b/src/main/java/org/apache/xpath/axes/AxesWalker.java
index 4ebd4bd99..feabeb025 100644
--- a/src/main/java/org/apache/xpath/axes/AxesWalker.java
+++ b/src/main/java/org/apache/xpath/axes/AxesWalker.java
@@ -575,11 +575,11 @@ public class AxesWalker extends PredicatedNodeTest
transient boolean m_isFresh;
/** The next walker in the location step chain.
- * @serial */
+ * */
protected AxesWalker m_nextWalker;
/** The previous walker in the location step chain, or null.
- * @serial */
+ * */
AxesWalker m_prevWalker;
/** The traversal axis from where the nodes will be filtered. */
diff --git a/src/main/java/org/apache/xpath/axes/FilterExprIterator.java b/src/main/java/org/apache/xpath/axes/FilterExprIterator.java
index 7492273a3..e0f4b092f 100644
--- a/src/main/java/org/apache/xpath/axes/FilterExprIterator.java
+++ b/src/main/java/org/apache/xpath/axes/FilterExprIterator.java
@@ -30,7 +30,7 @@ public class FilterExprIterator extends BasicTestIterator
{
static final long serialVersionUID = 2552176105165737614L;
/** The contained expression. Should be non-null.
- * @serial */
+ * */
private Expression m_expr;
/** The result of executing m_expr. Needs to be deep cloned on clone op. */
diff --git a/src/main/java/org/apache/xpath/axes/LocPathIterator.java b/src/main/java/org/apache/xpath/axes/LocPathIterator.java
index a9f55489a..9269452d8 100644
--- a/src/main/java/org/apache/xpath/axes/LocPathIterator.java
+++ b/src/main/java/org/apache/xpath/axes/LocPathIterator.java
@@ -972,7 +972,7 @@ public abstract class LocPathIterator extends PredicatedNodeTest
* Value determined at compile time, indicates that this is an
* iterator at the top level of the expression, rather than inside
* a predicate.
- * @serial
+ *
*/
private boolean m_isTopLevel = false;
@@ -1003,7 +1003,7 @@ public abstract class LocPathIterator extends PredicatedNodeTest
/**
* Fast access to the current prefix resolver. It isn't really
* clear that this is needed.
- * @serial
+ *
*/
private PrefixResolver m_prefixResolver;
@@ -1040,7 +1040,7 @@ public abstract class LocPathIterator extends PredicatedNodeTest
// * The analysis pattern built by the WalkerFactory.
// * TODO: Move to LocPathIterator.
// * @see org.apache.xpath.axes.WalkerFactory
-// * @serial
+// *
// */
// protected int m_analysis = 0x00000000;
/**
diff --git a/src/main/java/org/apache/xpath/axes/PredicatedNodeTest.java b/src/main/java/org/apache/xpath/axes/PredicatedNodeTest.java
index 37be71363..bbede4358 100644
--- a/src/main/java/org/apache/xpath/axes/PredicatedNodeTest.java
+++ b/src/main/java/org/apache/xpath/axes/PredicatedNodeTest.java
@@ -603,7 +603,7 @@ public abstract class PredicatedNodeTest extends NodeTest implements SubContextL
transient protected boolean m_foundLast = false;
/** The owning location path iterator.
- * @serial */
+ * */
protected LocPathIterator m_lpi;
/**
@@ -613,7 +613,7 @@ public abstract class PredicatedNodeTest extends NodeTest implements SubContextL
/** The list of predicate expressions. Is static and does not need
* to be deep cloned.
- * @serial
+ *
*/
private Expression[] m_predicates;
diff --git a/src/main/java/org/apache/xpath/axes/UnionPathIterator.java b/src/main/java/org/apache/xpath/axes/UnionPathIterator.java
index e61aa8d10..18491462d 100644
--- a/src/main/java/org/apache/xpath/axes/UnionPathIterator.java
+++ b/src/main/java/org/apache/xpath/axes/UnionPathIterator.java
@@ -463,7 +463,7 @@ public class UnionPathIterator extends LocPathIterator
* The location path iterators, one for each
* <a href="http://www.w3.org/TR/xpath#NT-LocationPath">location
* path</a> contained in the union expression.
- * @serial
+ *
*/
protected LocPathIterator[] m_exprs;
@@ -472,7 +472,7 @@ public class UnionPathIterator extends LocPathIterator
* The location path iterators, one for each
* <a href="http://www.w3.org/TR/xpath#NT-LocationPath">location
* path</a> contained in the union expression.
- * @serial
+ *
*/
protected DTMCursorIterator[] m_iterators;
diff --git a/src/main/java/org/apache/xpath/axes/WalkingIterator.java b/src/main/java/org/apache/xpath/axes/WalkingIterator.java
index 876077cfa..21b58eedb 100644
--- a/src/main/java/org/apache/xpath/axes/WalkingIterator.java
+++ b/src/main/java/org/apache/xpath/axes/WalkingIterator.java
@@ -310,11 +310,11 @@ public class WalkingIterator extends LocPathIterator implements ExpressionOwner
/** The last used step walker in the walker list.
- * @serial */
+ * */
protected AxesWalker m_lastUsedWalker;
/** The head of the step walker list.
- * @serial */
+ * */
protected AxesWalker m_firstWalker;
/**
diff --git a/src/main/java/org/apache/xpath/functions/XSL3ConstructorOrExtensionFunction.java b/src/main/java/org/apache/xpath/functions/XSL3ConstructorOrExtensionFunction.java
index 103185b68..850f92000 100644
--- a/src/main/java/org/apache/xpath/functions/XSL3ConstructorOrExtensionFunction.java
+++ b/src/main/java/org/apache/xpath/functions/XSL3ConstructorOrExtensionFunction.java
@@ -77,27 +77,27 @@ public class XSL3ConstructorOrExtensionFunction extends Function
/**
* The namespace for the extension function, which should not normally
* be null or empty.
- * @serial
+ *
*/
String m_namespace;
/**
* The local name of the extension.
- * @serial
+ *
*/
String m_extensionName;
/**
* Unique method key, which is passed to ExtensionsTable#extFunction in
* order to allow caching of the method.
- * @serial
+ *
*/
Object m_methodKey;
/**
* Array of static expressions which represent the parameters to the
* function.
- * @serial
+ *
*/
Vector m_argVec = new Vector();
diff --git a/src/main/java/org/apache/xpath/operations/UnaryOperation.java b/src/main/java/org/apache/xpath/operations/UnaryOperation.java
index 0299f0c5c..b7525c476 100644
--- a/src/main/java/org/apache/xpath/operations/UnaryOperation.java
+++ b/src/main/java/org/apache/xpath/operations/UnaryOperation.java
@@ -34,7 +34,7 @@ public abstract class UnaryOperation extends Expression implements ExpressionOwn
static final long serialVersionUID = 6536083808424286166L;
/** The operand for the operation.
- * @serial */
+ * */
protected Expression m_right;
/**
diff --git a/src/main/java/org/apache/xpath/patterns/FunctionPattern.java b/src/main/java/org/apache/xpath/patterns/FunctionPattern.java
index 331081cb6..80bdccca8 100644
--- a/src/main/java/org/apache/xpath/patterns/FunctionPattern.java
+++ b/src/main/java/org/apache/xpath/patterns/FunctionPattern.java
@@ -65,7 +65,7 @@ public class FunctionPattern extends StepPattern
/**
* Should be a {@link org.apache.xpath.functions.Function expression}.
- * @serial
+ *
*/
Expression m_functionExpr;
diff --git a/src/main/java/org/apache/xpath/patterns/NodeTest.java b/src/main/java/org/apache/xpath/patterns/NodeTest.java
index 30b67d5bf..a6336a660 100644
--- a/src/main/java/org/apache/xpath/patterns/NodeTest.java
+++ b/src/main/java/org/apache/xpath/patterns/NodeTest.java
@@ -54,7 +54,7 @@ public class NodeTest extends Expression
/**
* This attribute determines which node types are accepted.
- * @serial
+ *
*/
protected int m_whatToShow;
@@ -90,7 +90,7 @@ public class NodeTest extends Expression
/**
* The namespace to be tested for, which may be null.
- * @serial
+ *
*/
String m_namespace;
@@ -116,7 +116,7 @@ public class NodeTest extends Expression
/**
* The local name to be tested for.
- * @serial
+ *
*/
protected String m_name;
@@ -147,7 +147,7 @@ public class NodeTest extends Expression
* {@link #SCORE_NSWILD},
* {@link #SCORE_QNAME}, or
* {@link #SCORE_OTHER}.
- * @serial
+ *
*/
XNumber m_score;
@@ -293,7 +293,7 @@ public class NodeTest extends Expression
/**
* True if this test has a null namespace and a local name of {@link #WILD}.
- * @serial
+ *
*/
private boolean m_isTotallyWild;
diff --git a/src/main/java/org/apache/xpath/patterns/UnionPattern.java b/src/main/java/org/apache/xpath/patterns/UnionPattern.java
index d9f18fdd8..8a5bdcc78 100644
--- a/src/main/java/org/apache/xpath/patterns/UnionPattern.java
+++ b/src/main/java/org/apache/xpath/patterns/UnionPattern.java
@@ -36,7 +36,7 @@ public class UnionPattern extends Expression
static final long serialVersionUID = -6670449967116905820L;
/** Array of the contained step patterns to be tested.
- * @serial */
+ * */
private StepPattern[] m_patterns;
/**
diff --git a/src/main/java/org/apache/xpath/regex/Pattern.java b/src/main/java/org/apache/xpath/regex/Pattern.java
index f57b34c38..90f265cfb 100644
--- a/src/main/java/org/apache/xpath/regex/Pattern.java
+++ b/src/main/java/org/apache/xpath/regex/Pattern.java
@@ -239,14 +239,14 @@ public final class Pattern
/**
* The original regular-expression pattern string.
*
- * @serial
+ *
*/
private String pattern;
/**
* The original pattern flags.
*
- * @serial
+ *
*/
private int flags;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xalan.apache.org
For additional commands, e-mail: commits-help@xalan.apache.org