/*
 * reserved comment block
 * DO NOT REMOVE OR ALTER!
 */
/*
 * 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 com.sun.org.apache.xalan.internal.xsltc.dom;

import java.text.Collator;
import java.util.Locale;

import com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet;

Class for carrying settings that are to be used for a particular set of xsl:sort elements.
/** * Class for carrying settings that are to be used for a particular set * of <code>xsl:sort</code> elements. */
final class SortSettings {
A reference to the translet object for the transformation.
/** * A reference to the translet object for the transformation. */
private AbstractTranslet _translet;
The sort order (ascending or descending) for each level of xsl:sort
/** * The sort order (ascending or descending) for each level of * <code>xsl:sort</code> */
private int[] _sortOrders;
The type of comparison (text or number) for each level of xsl:sort
/** * The type of comparison (text or number) for each level of * <code>xsl:sort</code> */
private int[] _types;
The Locale for each level of xsl:sort, based on any lang attribute or the default Locale.
/** * The Locale for each level of <code>xsl:sort</code>, based on any lang * attribute or the default Locale. */
private Locale[] _locales;
The Collator object in effect for each level of xsl:sort
/** * The Collator object in effect for each level of <code>xsl:sort</code> */
private Collator[] _collators;
Case ordering for each level of xsl:sort.
/** * Case ordering for each level of <code>xsl:sort</code>. */
private String[] _caseOrders;
Create an instance of SortSettings.
Params:
  • translet – AbstractTranslet object for the transformation
  • sortOrders – an array specifying the sort order for each sort level
  • types – an array specifying the type of comparison for each sort level (text or number)
  • locales – an array specifying the Locale for each sort level
  • collators – an array specifying the Collation in effect for each sort level
  • caseOrders – an array specifying whether upper-case, lower-case or neither is to take precedence for each sort level. The value of each element is equal to one of "upper-first", "lower-first", or "".
/** * Create an instance of <code>SortSettings</code>. * @param translet {@link com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet} * object for the transformation * @param sortOrders an array specifying the sort order for each sort level * @param types an array specifying the type of comparison for each sort * level (text or number) * @param locales an array specifying the Locale for each sort level * @param collators an array specifying the Collation in effect for each * sort level * @param caseOrders an array specifying whether upper-case, lower-case * or neither is to take precedence for each sort level. * The value of each element is equal to one of * <code>"upper-first", "lower-first", or ""</code>. */
SortSettings(AbstractTranslet translet, int[] sortOrders, int[] types, Locale[] locales, Collator[] collators, String[] caseOrders) { _translet = translet; _sortOrders = sortOrders; _types = types; _locales = locales; _collators = collators; _caseOrders = caseOrders; }
Returns:A reference to the translet object for the transformation.
/** * @return A reference to the translet object for the transformation. */
AbstractTranslet getTranslet() { return _translet; }
Returns:An array containing the sort order (ascending or descending) for each level of xsl:sort
/** * @return An array containing the sort order (ascending or descending) * for each level of <code>xsl:sort</code> */
int[] getSortOrders() { return _sortOrders; }
Returns:An array containing the type of comparison (text or number) to perform for each level of xsl:sort
/** * @return An array containing the type of comparison (text or number) * to perform for each level of <code>xsl:sort</code> */
int[] getTypes() { return _types; }
Returns:An array containing the Locale object in effect for each level of xsl:sort
/** * @return An array containing the Locale object in effect for each level * of <code>xsl:sort</code> */
Locale[] getLocales() { return _locales; }
Returns:An array containing the Collator object in effect for each level of xsl:sort
/** * @return An array containing the Collator object in effect for each level * of <code>xsl:sort</code> */
Collator[] getCollators() { return _collators; }
Returns:An array specifying the case ordering for each level of xsl:sort.
/** * @return An array specifying the case ordering for each level of * <code>xsl:sort</code>. */
String[] getCaseOrders() { return _caseOrders; } }