25 import com.sun.org.apache.xerces.internal.xni.XMLAttributes;
26 import com.sun.org.apache.xerces.internal.xni.XMLString;
27 import com.sun.xml.internal.stream.XMLBufferListener;
28 /**
29 * The XMLAttributesImpl class is an implementation of the XMLAttributes
30 * interface which defines a collection of attributes for an element.
31 * In the parser, the document source would scan the entire start element
32 * and collect the attributes. The attributes are communicated to the
33 * document handler in the startElement method.
34 * <p>
35 * The attributes are read-write so that subsequent stages in the document
36 * pipeline can modify the values or change the attributes that are
37 * propogated to the next stage.
38 *
39 * @see com.sun.org.apache.xerces.internal.xni.XMLDocumentHandler#startElement
40 *
41 * @author Andy Clark, IBM
42 * @author Elena Litani, IBM
43 * @author Michael Glavassevich, IBM
44 *
45 * @version $Id: XMLAttributesImpl.java,v 1.7 2010/05/07 20:13:09 joehw Exp $
46 */
47 public class XMLAttributesImpl
48 implements XMLAttributes, XMLBufferListener {
49
50 //
51 // Constants
52 //
53
54 /** Default table size. */
55 protected static final int TABLE_SIZE = 101;
56
57 /** Maximum hash collisions per bucket. */
58 protected static final int MAX_HASH_COLLISIONS = 40;
59
60 protected static final int MULTIPLIERS_SIZE = 1 << 5;
61 protected static final int MULTIPLIERS_MASK = MULTIPLIERS_SIZE - 1;
62
63 /**
64 * Threshold at which an instance is treated
65 * as a large attribute list.
|
25 import com.sun.org.apache.xerces.internal.xni.XMLAttributes;
26 import com.sun.org.apache.xerces.internal.xni.XMLString;
27 import com.sun.xml.internal.stream.XMLBufferListener;
28 /**
29 * The XMLAttributesImpl class is an implementation of the XMLAttributes
30 * interface which defines a collection of attributes for an element.
31 * In the parser, the document source would scan the entire start element
32 * and collect the attributes. The attributes are communicated to the
33 * document handler in the startElement method.
34 * <p>
35 * The attributes are read-write so that subsequent stages in the document
36 * pipeline can modify the values or change the attributes that are
37 * propogated to the next stage.
38 *
39 * @see com.sun.org.apache.xerces.internal.xni.XMLDocumentHandler#startElement
40 *
41 * @author Andy Clark, IBM
42 * @author Elena Litani, IBM
43 * @author Michael Glavassevich, IBM
44 *
45 */
46 public class XMLAttributesImpl
47 implements XMLAttributes, XMLBufferListener {
48
49 //
50 // Constants
51 //
52
53 /** Default table size. */
54 protected static final int TABLE_SIZE = 101;
55
56 /** Maximum hash collisions per bucket. */
57 protected static final int MAX_HASH_COLLISIONS = 40;
58
59 protected static final int MULTIPLIERS_SIZE = 1 << 5;
60 protected static final int MULTIPLIERS_MASK = MULTIPLIERS_SIZE - 1;
61
62 /**
63 * Threshold at which an instance is treated
64 * as a large attribute list.
|