DynAny.java revision 608:7e06bf1dcb09
1/*
2 * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.  Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26
27package org.omg.CORBA;
28
29
30/** Enables <tt>org.omg.CORBA.Any</tt> values to be dynamically
31 * interpreted (traversed) and
32 *  constructed. A <tt>DynAny</tt> object is associated with a data value
33 *  which may correspond to a copy of the value inserted into an <tt>Any</tt>.
34 *  The <tt>DynAny</tt> APIs enable traversal of the data value associated with an
35 *  Any at runtime and extraction of the primitive constituents of the
36 *  data value.
37 * @deprecated Use the new <a href="../DynamicAny/DynAny.html">DynAny</a> instead
38 */
39@Deprecated
40public interface DynAny extends org.omg.CORBA.Object
41{
42    /**
43     * Returns the <code>TypeCode</code> of the object inserted into
44     * this <code>DynAny</code>.
45     *
46     * @return the <code>TypeCode</code> object.
47     */
48    public org.omg.CORBA.TypeCode type() ;
49
50    /**
51     * Copy the contents from one Dynamic Any into another.
52     *
53     * @param dyn_any the <code>DynAny</code> object whose contents
54     *                are assigned to this <code>DynAny</code>.
55     * @throws Invalid if the source <code>DynAny</code> is
56     *            invalid
57     */
58    public void assign(org.omg.CORBA.DynAny dyn_any)
59        throws org.omg.CORBA.DynAnyPackage.Invalid;
60
61    /**
62     * Make a <code>DynAny</code> object from an <code>Any</code>
63     * object.
64     *
65     * @param value the <code>Any</code> object.
66     * @throws Invalid if the source <code>Any</code> object is
67     *                    empty or bad
68     */
69    public void from_any(org.omg.CORBA.Any value)
70        throws org.omg.CORBA.DynAnyPackage.Invalid;
71
72    /**
73     * Convert a <code>DynAny</code> object to an <code>Any</code>
74     * object.
75     *
76     * @return the <code>Any</code> object.
77     * @throws Invalid if this <code>DynAny</code> is empty or
78     *                    bad.
79     *            created or does not contain a meaningful value
80     */
81    public org.omg.CORBA.Any to_any()
82        throws org.omg.CORBA.DynAnyPackage.Invalid;
83
84    /**
85     * Destroys this <code>DynAny</code> object and frees any resources
86     * used to represent the data value associated with it. This method
87     * also destroys all <code>DynAny</code> objects obtained from it.
88     * <p>
89     * Destruction of <code>DynAny</code> objects should be handled with
90     * care, taking into account issues dealing with the representation of
91     * data values associated with <code>DynAny</code> objects.  A programmer
92     * who wants to destroy a <code>DynAny</code> object but still be able
93     * to manipulate some component of the data value associated with it,
94     * should first create a <code>DynAny</code> object for the component
95     * and then make a copy of the created <code>DynAny</code> object.
96     */
97    public void destroy() ;
98
99    /**
100     * Clones this <code>DynAny</code> object.
101     *
102     * @return a copy of this <code>DynAny</code> object
103     */
104    public org.omg.CORBA.DynAny copy() ;
105
106    /**
107     * Inserts the given <code>boolean</code> as the value for this
108     * <code>DynAny</code> object.
109     *
110     * <p> If this method is called on a constructed <code>DynAny</code>
111     * object, it initializes the next component of the constructed data
112     * value associated with this <code>DynAny</code> object.
113     *
114     * @param value the <code>boolean</code> to insert into this
115     *              <code>DynAny</code> object
116     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
117     *            if the value inserted is not consistent with the type
118     *            of the accessed component in this <code>DynAny</code> object
119     */
120    public void insert_boolean(boolean value)
121        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
122
123    /**
124     * Inserts the given <code>byte</code> as the value for this
125     * <code>DynAny</code> object.
126     *
127     * <p> If this method is called on a constructed <code>DynAny</code>
128     * object, it initializes the next component of the constructed data
129     * value associated with this <code>DynAny</code> object.
130     *
131     * @param value the <code>byte</code> to insert into this
132     *              <code>DynAny</code> object
133     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
134     *            if the value inserted is not consistent with the type
135     *            of the accessed component in this <code>DynAny</code> object
136     */
137    public void insert_octet(byte value)
138        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
139
140    /**
141     * Inserts the given <code>char</code> as the value for this
142     * <code>DynAny</code> object.
143     *
144     * <p> If this method is called on a constructed <code>DynAny</code>
145     * object, it initializes the next component of the constructed data
146     * value associated with this <code>DynAny</code> object.
147     *
148     * @param value the <code>char</code> to insert into this
149     *              <code>DynAny</code> object
150     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
151     *            if the value inserted is not consistent with the type
152     *            of the accessed component in this <code>DynAny</code> object
153     */
154    public void insert_char(char value)
155        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
156
157    /**
158     * Inserts the given <code>short</code> as the value for this
159     * <code>DynAny</code> object.
160     *
161     * <p> If this method is called on a constructed <code>DynAny</code>
162     * object, it initializes the next component of the constructed data
163     * value associated with this <code>DynAny</code> object.
164     *
165     * @param value the <code>short</code> to insert into this
166     *              <code>DynAny</code> object
167     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
168     *            if the value inserted is not consistent with the type
169     *            of the accessed component in this <code>DynAny</code> object
170     */
171    public void insert_short(short value)
172        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
173
174    /**
175     * Inserts the given <code>short</code> as the value for this
176     * <code>DynAny</code> object.
177     *
178     * <p> If this method is called on a constructed <code>DynAny</code>
179     * object, it initializes the next component of the constructed data
180     * value associated with this <code>DynAny</code> object.
181     *
182     * @param value the <code>short</code> to insert into this
183     *              <code>DynAny</code> object
184     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
185     *            if the value inserted is not consistent with the type
186     *            of the accessed component in this <code>DynAny</code> object
187     */
188    public void insert_ushort(short value)
189        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
190
191    /**
192     * Inserts the given <code>int</code> as the value for this
193     * <code>DynAny</code> object.
194     *
195     * <p> If this method is called on a constructed <code>DynAny</code>
196     * object, it initializes the next component of the constructed data
197     * value associated with this <code>DynAny</code> object.
198     *
199     * @param value the <code>int</code> to insert into this
200     *              <code>DynAny</code> object
201     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
202     *            if the value inserted is not consistent with the type
203     *            of the accessed component in this <code>DynAny</code> object
204     */
205    public void insert_long(int value)
206        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
207
208    /**
209     * Inserts the given <code>int</code> as the value for this
210     * <code>DynAny</code> object.
211     *
212     * <p> If this method is called on a constructed <code>DynAny</code>
213     * object, it initializes the next component of the constructed data
214     * value associated with this <code>DynAny</code> object.
215     *
216     * @param value the <code>int</code> to insert into this
217     *              <code>DynAny</code> object
218     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
219     *            if the value inserted is not consistent with the type
220     *            of the accessed component in this <code>DynAny</code> object
221     */
222    public void insert_ulong(int value)
223        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
224
225    /**
226     * Inserts the given <code>float</code> as the value for this
227     * <code>DynAny</code> object.
228     *
229     * <p> If this method is called on a constructed <code>DynAny</code>
230     * object, it initializes the next component of the constructed data
231     * value associated with this <code>DynAny</code> object.
232     *
233     * @param value the <code>float</code> to insert into this
234     *              <code>DynAny</code> object
235     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
236     *            if the value inserted is not consistent with the type
237     *            of the accessed component in this <code>DynAny</code> object
238     */
239    public void insert_float(float value)
240        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
241
242    /**
243     * Inserts the given <code>double</code> as the value for this
244     * <code>DynAny</code> object.
245     *
246     * <p> If this method is called on a constructed <code>DynAny</code>
247     * object, it initializes the next component of the constructed data
248     * value associated with this <code>DynAny</code> object.
249     *
250     * @param value the <code>double</code> to insert into this
251     *              <code>DynAny</code> object
252     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
253     *            if the value inserted is not consistent with the type
254     *            of the accessed component in this <code>DynAny</code> object
255     */
256    public void insert_double(double value)
257        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
258
259    /**
260     * Inserts the given <code>String</code> object as the value for this
261     * <code>DynAny</code> object.
262     *
263     * <p> If this method is called on a constructed <code>DynAny</code>
264     * object, it initializes the next component of the constructed data
265     * value associated with this <code>DynAny</code> object.
266     *
267     * @param value the <code>String</code> to insert into this
268     *              <code>DynAny</code> object
269     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
270     *            if the value inserted is not consistent with the type
271     *            of the accessed component in this <code>DynAny</code> object
272     */
273    public void insert_string(String value)
274        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
275
276    /**
277     * Inserts the given <code>org.omg.CORBA.Object</code> as the value for this
278     * <code>DynAny</code> object.
279     *
280     * <p> If this method is called on a constructed <code>DynAny</code>
281     * object, it initializes the next component of the constructed data
282     * value associated with this <code>DynAny</code> object.
283     *
284     * @param value the <code>org.omg.CORBA.Object</code> to insert into this
285     *              <code>DynAny</code> object
286     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
287     *            if the value inserted is not consistent with the type
288     *            of the accessed component in this <code>DynAny</code> object
289     */
290    public void insert_reference(org.omg.CORBA.Object value)
291        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
292
293    /**
294     * Inserts the given <code>org.omg.CORBA.TypeCode</code> as the value for this
295     * <code>DynAny</code> object.
296     *
297     * <p> If this method is called on a constructed <code>DynAny</code>
298     * object, it initializes the next component of the constructed data
299     * value associated with this <code>DynAny</code> object.
300     *
301     * @param value the <code>org.omg.CORBA.TypeCode</code> to insert into this
302     *              <code>DynAny</code> object
303     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
304     *            if the value inserted is not consistent with the type
305     *            of the accessed component in this <code>DynAny</code> object
306     */
307    public void insert_typecode(org.omg.CORBA.TypeCode value)
308        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
309
310    /**
311     * Inserts the given <code>long</code> as the value for this
312     * <code>DynAny</code> object.
313     *
314     * <p> If this method is called on a constructed <code>DynAny</code>
315     * object, it initializes the next component of the constructed data
316     * value associated with this <code>DynAny</code> object.
317     *
318     * @param value the <code>long</code> to insert into this
319     *              <code>DynAny</code> object
320     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
321     *            if the value inserted is not consistent with the type
322     *            of the accessed component in this <code>DynAny</code> object
323     */
324    public void insert_longlong(long value)
325        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
326
327    /**
328     * Inserts the given <code>long</code> as the value for this
329     * <code>DynAny</code> object.
330     *
331     * <p> If this method is called on a constructed <code>DynAny</code>
332     * object, it initializes the next component of the constructed data
333     * value associated with this <code>DynAny</code> object.
334     *
335     * @param value the <code>long</code> to insert into this
336     *              <code>DynAny</code> object
337     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
338     *            if the value inserted is not consistent with the type
339     *            of the accessed component in this <code>DynAny</code> object
340     */
341    public void insert_ulonglong(long value)
342        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
343
344    /**
345     * Inserts the given <code>char</code> as the value for this
346     * <code>DynAny</code> object.
347     *
348     * <p> If this method is called on a constructed <code>DynAny</code>
349     * object, it initializes the next component of the constructed data
350     * value associated with this <code>DynAny</code> object.
351     *
352     * @param value the <code>char</code> to insert into this
353     *              <code>DynAny</code> object
354     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
355     *            if the value inserted is not consistent with the type
356     *            of the accessed component in this <code>DynAny</code> object
357     */
358    public void insert_wchar(char value)
359        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
360
361    /**
362     * Inserts the given <code>String</code> as the value for this
363     * <code>DynAny</code> object.
364     *
365     * <p> If this method is called on a constructed <code>DynAny</code>
366     * object, it initializes the next component of the constructed data
367     * value associated with this <code>DynAny</code> object.
368     *
369     * @param value the <code>String</code> to insert into this
370     *              <code>DynAny</code> object
371     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
372     *            if the value inserted is not consistent with the type
373     *            of the accessed component in this <code>DynAny</code> object
374     */
375    public void insert_wstring(String value)
376        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
377
378    /**
379     * Inserts the given <code>org.omg.CORBA.Any</code> object as the value for this
380     * <code>DynAny</code> object.
381     *
382     * <p> If this method is called on a constructed <code>DynAny</code>
383     * object, it initializes the next component of the constructed data
384     * value associated with this <code>DynAny</code> object.
385     *
386     * @param value the <code>org.omg.CORBA.Any</code> object to insert into this
387     *              <code>DynAny</code> object
388     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
389     *            if the value inserted is not consistent with the type
390     *            of the accessed component in this <code>DynAny</code> object
391     */
392    public void insert_any(org.omg.CORBA.Any value)
393        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
394
395    // orbos 98-01-18: Objects By Value -- begin
396
397    /**
398     * Inserts the given <code>java.io.Serializable</code> object as the value for this
399     * <code>DynAny</code> object.
400     *
401     * <p> If this method is called on a constructed <code>DynAny</code>
402     * object, it initializes the next component of the constructed data
403     * value associated with this <code>DynAny</code> object.
404     *
405     * @param value the <code>java.io.Serializable</code> object to insert into this
406     *              <code>DynAny</code> object
407     * @throws org.omg.CORBA.DynAnyPackage.InvalidValue
408     *            if the value inserted is not consistent with the type
409     *            of the accessed component in this <code>DynAny</code> object
410     */
411    public void insert_val(java.io.Serializable value)
412        throws org.omg.CORBA.DynAnyPackage.InvalidValue;
413
414    /**
415     * Retrieves the <code>java.io.Serializable</code> object contained
416     * in this <code>DynAny</code> object.
417     *
418     * @return the <code>java.io.Serializable</code> object that is the
419     *         value for this <code>DynAny</code> object
420     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
421     *               if the type code of the accessed component in this
422     *               <code>DynAny</code> object is not equivalent to
423     *               the type code for a <code>java.io.Serializable</code> object
424     */
425    public java.io.Serializable get_val()
426        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
427
428    // orbos 98-01-18: Objects By Value -- end
429
430    /**
431     * Retrieves the <code>boolean</code> contained
432     * in this <code>DynAny</code> object.
433     *
434     * @return the <code>boolean</code> that is the
435     *         value for this <code>DynAny</code> object
436     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
437     *               if the type code of the accessed component in this
438     *               <code>DynAny</code> object is not equivalent to
439     *               the type code for a <code>boolean</code>
440     */
441    public boolean get_boolean()
442        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
443
444
445    /**
446     * Retrieves the <code>byte</code> contained
447     * in this <code>DynAny</code> object.
448     *
449     * @return the <code>byte</code> that is the
450     *         value for this <code>DynAny</code> object
451     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
452     *               if the type code of the accessed component in this
453     *               <code>DynAny</code> object is not equivalent to
454     *               the type code for a <code>byte</code>
455     */
456    public byte get_octet()
457        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
458
459    /**
460     * Retrieves the <code>char</code> contained
461     * in this <code>DynAny</code> object.
462     *
463     * @return the <code>char</code> that is the
464     *         value for this <code>DynAny</code> object
465     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
466     *               if the type code of the accessed component in this
467     *               <code>DynAny</code> object is not equivalent to
468     *               the type code for a <code>char</code>
469     */
470    public char get_char()
471        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
472
473
474    /**
475     * Retrieves the <code>short</code> contained
476     * in this <code>DynAny</code> object.
477     *
478     * @return the <code>short</code> that is the
479     *         value for this <code>DynAny</code> object
480     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
481     *               if the type code of the accessed component in this
482     *               <code>DynAny</code> object is not equivalent to
483     *               the type code for a <code>short</code>
484     */
485    public short get_short()
486        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
487
488
489    /**
490     * Retrieves the <code>short</code> contained
491     * in this <code>DynAny</code> object.
492     *
493     * @return the <code>short</code> that is the
494     *         value for this <code>DynAny</code> object
495     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
496     *               if the type code of the accessed component in this
497     *               <code>DynAny</code> object is not equivalent to
498     *               the type code for a <code>short</code>
499     */
500    public short get_ushort()
501        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
502
503
504    /**
505     * Retrieves the <code>int</code> contained
506     * in this <code>DynAny</code> object.
507     *
508     * @return the <code>int</code> that is the
509     *         value for this <code>DynAny</code> object
510     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
511     *               if the type code of the accessed component in this
512     *               <code>DynAny</code> object is not equivalent to
513     *               the type code for a <code>int</code>
514     */
515    public int get_long()
516        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
517
518
519    /**
520     * Retrieves the <code>int</code> contained
521     * in this <code>DynAny</code> object.
522     *
523     * @return the <code>int</code> that is the
524     *         value for this <code>DynAny</code> object
525     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
526     *               if the type code of the accessed component in this
527     *               <code>DynAny</code> object is not equivalent to
528     *               the type code for a <code>int</code>
529     */
530    public int get_ulong()
531        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
532
533
534    /**
535     * Retrieves the <code>float</code> contained
536     * in this <code>DynAny</code> object.
537     *
538     * @return the <code>float</code> that is the
539     *         value for this <code>DynAny</code> object
540     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
541     *               if the type code of the accessed component in this
542     *               <code>DynAny</code> object is not equivalent to
543     *               the type code for a <code>float</code>
544     */
545    public float get_float()
546        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
547
548
549    /**
550     * Retrieves the <code>double</code> contained
551     * in this <code>DynAny</code> object.
552     *
553     * @return the <code>double</code> that is the
554     *         value for this <code>DynAny</code> object
555     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
556     *               if the type code of the accessed component in this
557     *               <code>DynAny</code> object is not equivalent to
558     *               the type code for a <code>double</code>
559     */
560    public double get_double()
561        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
562
563
564    /**
565     * Retrieves the <code>String</code> contained
566     * in this <code>DynAny</code> object.
567     *
568     * @return the <code>String</code> that is the
569     *         value for this <code>DynAny</code> object
570     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
571     *               if the type code of the accessed component in this
572     *               <code>DynAny</code> object is not equivalent to
573     *               the type code for a <code>String</code>
574     */
575    public String get_string()
576        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
577
578
579    /**
580     * Retrieves the <code>org.omg.CORBA.Other</code> contained
581     * in this <code>DynAny</code> object.
582     *
583     * @return the <code>org.omg.CORBA.Other</code> that is the
584     *         value for this <code>DynAny</code> object
585     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
586     *               if the type code of the accessed component in this
587     *               <code>DynAny</code> object is not equivalent to
588     *               the type code for an <code>org.omg.CORBA.Other</code>
589     */
590    public org.omg.CORBA.Object get_reference()
591        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
592
593
594    /**
595     * Retrieves the <code>org.omg.CORBA.TypeCode</code> contained
596     * in this <code>DynAny</code> object.
597     *
598     * @return the <code>org.omg.CORBA.TypeCode</code> that is the
599     *         value for this <code>DynAny</code> object
600     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
601     *               if the type code of the accessed component in this
602     *               <code>DynAny</code> object is not equivalent to
603     *               the type code for a <code>org.omg.CORBA.TypeCode</code>
604     */
605    public org.omg.CORBA.TypeCode get_typecode()
606        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
607
608
609    /**
610     * Retrieves the <code>long</code> contained
611     * in this <code>DynAny</code> object.
612     *
613     * @return the <code>long</code> that is the
614     *         value for this <code>DynAny</code> object
615     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
616     *               if the type code of the accessed component in this
617     *               <code>DynAny</code> object is not equivalent to
618     *               the type code for a <code>long</code>
619     */
620    public long get_longlong()
621        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
622
623
624    /**
625     * Retrieves the <code>long</code> contained
626     * in this <code>DynAny</code> object.
627     *
628     * @return the <code>long</code> that is the
629     *         value for this <code>DynAny</code> object
630     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
631     *               if the type code of the accessed component in this
632     *               <code>DynAny</code> object is not equivalent to
633     *               the type code for a <code>long</code>
634     */
635    public long get_ulonglong()
636        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
637
638
639    /**
640     * Retrieves the <code>char</code> contained
641     * in this <code>DynAny</code> object.
642     *
643     * @return the <code>char</code> that is the
644     *         value for this <code>DynAny</code> object
645     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
646     *               if the type code of the accessed component in this
647     *               <code>DynAny</code> object is not equivalent to
648     *               the type code for a <code>char</code>
649     */
650    public char get_wchar()
651        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
652
653
654    /**
655     * Retrieves the <code>String</code> contained
656     * in this <code>DynAny</code> object.
657     *
658     * @return the <code>String</code> that is the
659     *         value for this <code>DynAny</code> object
660     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
661     *               if the type code of the accessed component in this
662     *               <code>DynAny</code> object is not equivalent to
663     *               the type code for a <code>String</code>
664     */
665    public String get_wstring()
666        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
667
668
669    /**
670     * Retrieves the <code>org.omg.CORBA.Any</code> contained
671     * in this <code>DynAny</code> object.
672     *
673     * @return the <code>org.omg.CORBA.Any</code> that is the
674     *         value for this <code>DynAny</code> object
675     * @throws org.omg.CORBA.DynAnyPackage.TypeMismatch
676     *               if the type code of the accessed component in this
677     *               <code>DynAny</code> object is not equivalent to
678     *               the type code for an <code>org.omg.CORBA.Any</code>
679     */
680    public org.omg.CORBA.Any get_any()
681        throws org.omg.CORBA.DynAnyPackage.TypeMismatch;
682
683    /**
684     * Returns a <code>DynAny</code> object reference that can
685     * be used to get/set the value of the component currently accessed.
686     * The appropriate <code>insert</code> method
687     * can be called on the resulting <code>DynAny</code> object
688     * to initialize the component.
689     * The appropriate <code>get</code> method
690     * can be called on the resulting <code>DynAny</code> object
691     * to extract the value of the component.
692         *
693         * @return a <code>DynAny</code> object reference that can be
694         *         used to retrieve or set the value of the component currently
695         *         accessed
696     */
697    public org.omg.CORBA.DynAny current_component() ;
698
699    /**
700     * Moves to the next component of this <code>DynAny</code> object.
701     * This method is used for iterating through the components of
702     * a constructed type, effectively moving a pointer from one
703     * component to the next.  The pointer starts out on the first
704     * component when a <code>DynAny</code> object is created.
705     *
706     * @return <code>true</code> if the pointer points to a component;
707     * <code>false</code> if there are no more components or this
708     * <code>DynAny</code> is associated with a basic type rather than
709     * a constructed type
710     */
711    public boolean next() ;
712
713    /**
714     * Moves the internal pointer to the given index. Logically, this method
715     * sets a new offset for this pointer.
716     *
717     * @param index an <code>int</code> indicating the position to which
718     *              the pointer should move.  The first position is 0.
719     * @return <code>true</code> if the pointer points to a component;
720     * <code>false</code> if there is no component at the designated
721     * index.  If this <code>DynAny</code> object is associated with a
722     * basic type, this method returns <code>false</code> for any index
723     * other than 0.
724     */
725    public boolean seek(int index) ;
726
727    /**
728     * Moves the internal pointer to the first component.
729     */
730    public void rewind() ;
731}
732