KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jvnet > fastinfoset > sax > EncodingAlgorithmAttributes


1 /*
2  * Fast Infoset ver. 0.1 software ("Software")
3  *
4  * Copyright, 2004-2005 Sun Microsystems, Inc. All Rights Reserved.
5  *
6  * Software is licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License. You may
8  * obtain a copy of the License at:
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15  * License for the specific language governing permissions and limitations.
16  *
17  * Sun supports and benefits from the global community of open source
18  * developers, and thanks the community for its important contributions and
19  * open standards-based technology, which Sun has adopted into many of its
20  * products.
21  *
22  * Please note that portions of Software may be provided with notices and
23  * open source licenses from such communities and third parties that govern the
24  * use of those portions, and any licenses granted hereunder do not alter any
25  * rights and obligations you may have under such open source licenses,
26  * however, the disclaimer of warranty and limitation of liability provisions
27  * in this License will apply to all Software in this distribution.
28  *
29  * You acknowledge that the Software is not designed, licensed or intended
30  * for use in the design, construction, operation or maintenance of any nuclear
31  * facility.
32  *
33  * Apache License
34  * Version 2.0, January 2004
35  * http://www.apache.org/licenses/
36  *
37  */

38
39 package org.jvnet.fastinfoset.sax;
40
41 import org.xml.sax.Attributes JavaDoc;
42
43
44 /**
45  * Interface for a list of XML attributes that may contain encoding algorithm
46  * data.
47  *
48  * @version 0.1
49  * @see org.jvnet.fastinfoset.sax.FastInfosetReader
50  * @see org.xml.sax.XMLReader
51  */

52 public interface EncodingAlgorithmAttributes extends Attributes JavaDoc {
53     
54     /**
55      * Return the URI of the encoding algorithm.
56      *
57      * <p>If the algorithm data corresponds to a built-in encoding algorithm
58      * then the null is returned.</p>
59      *
60      * <p>If the algorithm data corresponds to an application-defined encoding
61      * algorithm then the URI of the algorithm is returned.</p>
62      *
63      * <p>If {@link #getAlgorithmData(int)} returns null then the result of
64      * this method is undefined.<p>
65      *
66      * @param index The attribute index (zero-based).
67      * @return The URI.
68      */

69     public String JavaDoc getAlgorithmURI(int index);
70  
71     /**
72      * Return the index of the encoding algorithm.
73      *
74      * <p>If {@link #getAlgorithmData(int)} returns null then the result of
75      * this method is undefined.<p>
76      *
77      * @param index The attribute index (zero-based).
78      * @return The index
79      * @see org.jvnet.fastinfoset.EncodingAlgorithmIndexes
80      */

81     public int getAlgorithmIndex(int index);
82     
83     /**
84      * Return the data of the encoding algorithm.
85      *
86      * <p>If the algorithm data corresponds to a built-in encoding algorithm
87      * then an Object corresponding to the Java primitive type is returned.</p>
88      *
89      * <p>If the algorithm data corresponds to an application-defined encoding
90      * algorithm then an Object that is an instance of <code>byte[]</code>
91      * is returned if there is no EncodingAlgorithm registered for the
92      * application-defined encoding algorithm URI. Otherwise, an Object produced
93      * from the registeredEncodingAlgorithm is returned.</p>
94      *
95      * <p>If there no encoding algorithm data associated an attribute then
96      * <code>null</code> is returned.<p>
97      *
98      * @param index The attribute index (zero-based).
99      * @return The data
100      */

101     public Object JavaDoc getAlgorithmData(int index);
102 }
103
Popular Tags