1 /**
2 * JSpiff
3 * -----------------
4 * Copyright (c) 2005-2006 Emil A. Lefkof III
5 *
6 * I always give it my best shot to make a program useful and solid, but
7 * remeber that there is absolutely no warranty for using this program as
8 * stated in the following terms:
9 *
10 * Licensed under the Apache License, Version 2.0 (the "License");
11 * you may not use this file except in compliance with the License.
12 * You may obtain a copy of the License at
13 *
14 * http://www.apache.org/licenses/LICENSE-2.0
15 *
16 * Unless required by applicable law or agreed to in writing, software
17 * distributed under the License is distributed on an "AS IS" BASIS,
18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19 * See the License for the specific language governing permissions and
20 * limitations under the License.
21 */
22 package com.melloware.jspiff.jaxp;
23
24 import java.io.File;
25 import java.io.IOException;
26 import java.io.InputStream;
27 import java.io.PrintWriter;
28 import java.io.Reader;
29 import java.io.Writer;
30 import java.net.URL;
31
32 import javax.xml.parsers.ParserConfigurationException;
33
34 import org.w3c.dom.Document;
35 import org.w3c.dom.Element;
36 import org.xml.sax.InputSource;
37 import org.xml.sax.SAXException;
38
39 /**
40 * <b>IXspfExtensionMixedChoice</b> is generated from xspf.rng by Relaxer.
41 * A concrete class of the interface is XspfExtensionAnyElement.
42 * <p>
43 * @version xspf.rng (Wed Sep 27 17:36:25 EDT 2006)
44 * @author Relaxer 1.1b (http://www.relaxer.org)
45 * @author Emil A. Lefkof III <info@melloware.com>
46 */
47 public interface IXspfExtensionMixedChoice
48 extends IXspfExtensionMixed {
49
50 /**
51 * @return IXspfAnythingMixed[]
52 */
53 IXspfAnythingMixed[] getContent();
54
55 /**
56 * @param index
57 * @return IXspfAnythingMixed
58 */
59 IXspfAnythingMixed getContent(int index);
60
61 /**
62 * @param value
63 */
64 void setContent(String value);
65
66 /**
67 * @param value
68 */
69 void setContent(org.w3c.dom.Node value);
70
71 /**
72 * @param content
73 */
74 void setContent(IXspfAnythingMixed[] content);
75
76 /**
77 * @param content
78 */
79 void setContent(IXspfAnythingMixed content);
80
81 /**
82 * @param index
83 * @param content
84 */
85 void setContent(int index, IXspfAnythingMixed content);
86
87 /**
88 * @param value
89 */
90 void setContentByString(String value);
91
92 /**
93 * @param value
94 */
95 void addContent(String value);
96
97 /**
98 * @param value
99 */
100 void addContent(org.w3c.dom.Node value);
101
102 /**
103 * @param content
104 */
105 void addContent(IXspfAnythingMixed content);
106
107 /**
108 * @param content
109 */
110 void addContent(IXspfAnythingMixed[] content);
111
112 /**
113 * @param index
114 * @param content
115 */
116 void addContent(int index, IXspfAnythingMixed content);
117
118 /**
119 * @param value
120 */
121 void addContentByString(String value);
122
123 /**
124 */
125 void clearContent();
126
127 /**
128 * @exception ParserConfigurationException
129 * @return Document
130 */
131 Document makeDocument()
132 throws ParserConfigurationException;
133
134 /**
135 * Makes an XML text representation.
136 *
137 * @param buffer
138 */
139 void makeTextAttribute(StringBuffer buffer);
140
141 /**
142 * Makes an XML text representation.
143 *
144 * @param buffer
145 * @exception IOException
146 */
147 void makeTextAttribute(Writer buffer)
148 throws IOException;
149
150 /**
151 * Makes an XML text representation.
152 *
153 * @param buffer
154 */
155 void makeTextAttribute(PrintWriter buffer);
156
157 /**
158 * @return String
159 */
160 String makeTextDocument();
161
162 /**
163 * Makes an XML text representation.
164 *
165 * @param buffer
166 */
167 void makeTextElement(StringBuffer buffer);
168
169 /**
170 * Makes an XML text representation.
171 *
172 * @param buffer
173 * @exception IOException
174 */
175 void makeTextElement(Writer buffer)
176 throws IOException;
177
178 /**
179 * Makes an XML text representation.
180 *
181 * @param buffer
182 */
183 void makeTextElement(PrintWriter buffer);
184
185 /**
186 * @param index
187 */
188 void removeContent(int index);
189
190 /**
191 * @param content
192 */
193 void removeContent(IXspfAnythingMixed content);
194
195 /**
196 * @param source
197 */
198 void setup(XspfExtensionAnyElement source);
199
200 /**
201 * @param doc
202 */
203 void setup(Document doc);
204
205 /**
206 * @param element
207 */
208 void setup(Element element);
209
210 /**
211 * @param file
212 * @exception IOException
213 * @exception SAXException
214 * @exception ParserConfigurationException
215 */
216 void setup(File file)
217 throws IOException, SAXException, ParserConfigurationException;
218
219 /**
220 * @param uri
221 * @exception IOException
222 * @exception SAXException
223 * @exception ParserConfigurationException
224 */
225 void setup(String uri)
226 throws IOException, SAXException, ParserConfigurationException;
227
228 /**
229 * @param url
230 * @exception IOException
231 * @exception SAXException
232 * @exception ParserConfigurationException
233 */
234 void setup(URL url)
235 throws IOException, SAXException, ParserConfigurationException;
236
237 /**
238 * @param in
239 * @exception IOException
240 * @exception SAXException
241 * @exception ParserConfigurationException
242 */
243 void setup(InputStream in)
244 throws IOException, SAXException, ParserConfigurationException;
245
246 /**
247 * @param is
248 * @exception IOException
249 * @exception SAXException
250 * @exception ParserConfigurationException
251 */
252 void setup(InputSource is)
253 throws IOException, SAXException, ParserConfigurationException;
254
255 /**
256 * @param reader
257 * @exception IOException
258 * @exception SAXException
259 * @exception ParserConfigurationException
260 */
261 void setup(Reader reader)
262 throws IOException, SAXException, ParserConfigurationException;
263
264 /**
265 * @return int
266 */
267 int sizeContent();
268 }