| 
                  VisiBroker for Java  | 
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface DynAnyOperations
Any values can be dynamically interpreted (traversed) and 
       constructed through DynAny objects. 
       A DynAny object is associated with a data value which corresponds to a copy
       of the value inserted into an any.
       
DynAny objects are intended to be local to the process 
       in which they are created and used.
       This means that references to DynAny and DynAnyFactory 
       objects cannot be exported to other processes, or externalized 
       with ORB::object_to_string. If any attempt is made to do so,
       the offending operation will raise a MARSHAL system exception. Since their
       interfaces are specified in IDL, DynAny objects export operations defined in the
       standard CORBA::Object interface. However, any attempt to invoke operations exported
       through the Object interface may raise the standard NO_IMPLEMENT exception. An
       attempt to use a DynAny object with the DII may raise the NO_IMPLEMENT exception.
| Method Summary | |
|---|---|
 void | 
assign(DynAny dyn_any)
The assign operation initializes the value associated with a DynAny object with the
         value associated with another DynAny object. | 
 int | 
component_count()
The component_count operation returns the number of components of a DynAny. | 
 DynAny | 
copy()
The copy operation creates a new DynAny object whose value is a deep copy of the
         DynAny on which it is invoked. | 
 DynAny | 
current_component()
The current_component operation returns the DynAny for the component at the
         current position. | 
 void | 
destroy()
The destroy operation destroys a DynAny object. | 
 boolean | 
equal(DynAny dyn_any)
The equal operation compares two DynAny values for equality and returns true of the
         DynAnys are equal, false otherwise. | 
 void | 
from_any(Any value)
The from_any operation initializes the value associated with a DynAny object with
         the value contained in an any. | 
 Any | 
get_any()
Extracts an Any value contained in the Any represented by this DynAny.  | 
 boolean | 
get_boolean()
Extracts the boolean value from this DynAny.  | 
 char | 
get_char()
Extracts the char value from this DynAny.  | 
 double | 
get_double()
Extracts the double value from this DynAny.  | 
 DynAny | 
get_dyn_any()
Extracts the Any value contained in the Any represented by this DynAny and returns it wrapped into a new DynAny.  | 
 float | 
get_float()
Extracts the float value from this DynAny.  | 
 int | 
get_long()
Extracts the integer value from this DynAny.  | 
 long | 
get_longlong()
Extracts the long value from this DynAny.  | 
 byte | 
get_octet()
Extracts the byte value from this DynAny.  | 
 Object | 
get_reference()
Extracts the reference to a CORBA Object from this DynAny.  | 
 short | 
get_short()
Extracts the short value from this DynAny.  | 
 java.lang.String | 
get_string()
Extracts the string value from this DynAny.  | 
 TypeCode | 
get_typecode()
Extracts the TypeCode object from this DynAny.  | 
 int | 
get_ulong()
Extracts the integer value from this DynAny.  | 
 long | 
get_ulonglong()
Extracts the long value from this DynAny.  | 
 short | 
get_ushort()
Extracts the short value from this DynAny.  | 
 java.io.Serializable | 
get_val()
Extracts a Serializable object from this DynAny.  | 
 char | 
get_wchar()
Extracts the long value from this DynAny.  | 
 java.lang.String | 
get_wstring()
Extracts the string value from this DynAny.  | 
 void | 
insert_any(Any value)
Inserts an Any value into the Any represented by this DynAny.  | 
 void | 
insert_boolean(boolean value)
Inserts a boolean value into the DynAny.  | 
 void | 
insert_char(char value)
Inserts a char value into the DynAny.  | 
 void | 
insert_double(double value)
Inserts a double value into the DynAny.  | 
 void | 
insert_dyn_any(DynAny value)
Inserts the Any value contained in the parameter DynAny into the Any represented by this DynAny.  | 
 void | 
insert_float(float value)
Inserts a float value into the DynAny.  | 
 void | 
insert_long(int value)
Inserts an integer value into the DynAny.  | 
 void | 
insert_longlong(long value)
Inserts a long value into the DynAny.  | 
 void | 
insert_octet(byte value)
Inserts a byte value into the DynAny.  | 
 void | 
insert_reference(Object value)
Inserts a reference to a CORBA object into the DynAny  | 
 void | 
insert_short(short value)
Inserts a short value into the DynAny.  | 
 void | 
insert_string(java.lang.String value)
Inserts a string value into the DynAny.  | 
 void | 
insert_typecode(TypeCode value)
Inserts a TypeCode object into the DynAny.  | 
 void | 
insert_ulong(int value)
Inserts an integer value into the DynAny.  | 
 void | 
insert_ulonglong(long value)
Inserts a long value into the DynAny.  | 
 void | 
insert_ushort(short value)
Inserts a short value into the DynAny.  | 
 void | 
insert_val(java.io.Serializable value)
Inserts a reference to a Serializable object into this DynAny.  | 
 void | 
insert_wchar(char value)
Extracts the long value from this DynAny.  | 
 void | 
insert_wstring(java.lang.String value)
Extracts the string value from this DynAny.  | 
 boolean | 
next()
The next operation advances the current position to the next component.  | 
 void | 
rewind()
The rewind operation is equivalent to calling seek(0);  | 
 boolean | 
seek(int index)
The seek operation sets the current position to index.  | 
 Any | 
to_any()
The to_any operation creates an any value from a DynAny object. | 
 TypeCode | 
type()
A DynAny object is created with a TypeCode value assigned to it. | 
| Method Detail | 
|---|
DynAny current_component()
                         throws TypeMismatch
DynAny for the component at the
         current position. It does not advance the current position, so repeated calls to
         current_component without an intervening call to rewind, next, or seek return the
         same component.
         The returned DynAny object reference can be used to get/set the value of the current
         component. If the current component represents a complex type, the returned reference
         can be narrowed based on the TypeCode to get the interface corresponding to the to
         the complex type.
         Calling current_component on a DynAny that cannot have components, such as a
         DynEnum or an empty exception, raises TypeMismatch. Calling
         current_component on a DynAny whose current position is -1 returns a nil
         reference.
The iteration operations, together with current_component, can be used to dynamically compose an any value. After creating a dynamic any, such as a DynStruct, current_component and next can be used to initialize all the components of the value. Once the dynamic value is completely initialized, to_any creates the corresponding any value.
DynAnyPackage.TypeMismatch if this DynAny type cannot have a current component
TypeMismatchint component_count()
DynAny.
         For a DynAny without components, it returns zero. The operation only counts the
         components at the top level. For example, if component_count is invoked on a
         DynStruct with a single member, the return value is 1, irrespective of the type of the
         member. For sequences, the operation returns the current number of elements. For structures, exceptions, and valuetypes, the operation returns the number of members. For arrays, the operation returns the number of elements. For unions, the operation returns 2 if the discriminator indicates that a named member is active; otherwise, it returns 1. For DynFixed and DynEnum, the operation returns zero.
DynAnyboolean next()
DynAny
         without components leaves the current position at -1 and returns false.
void rewind()
boolean seek(int index)
DynAny 
         and false if index indicates a position that does not correspond to a component.
         Calling seek with a negative index is legal. It sets the current position to -1 to indicate
         no component and returns false. Passing a non-negative index value for a DynAny 
         that does not have a component at the corresponding position sets the current position to -
         1 and returns false.
index - the new component index
java.io.Serializable get_val()
                             throws TypeMismatch,
                                    InvalidValue
TypeMismatch
InvalidValue
DynAny get_dyn_any()
                   throws TypeMismatch,
                          InvalidValue
TypeMismatch
InvalidValue
Any get_any()
            throws TypeMismatch,
                   InvalidValue
TypeMismatch
InvalidValue
java.lang.String get_wstring()
                             throws TypeMismatch,
                                    InvalidValue
TypeMismatch
InvalidValue
char get_wchar()
               throws TypeMismatch,
                      InvalidValue
TypeMismatch
InvalidValue
long get_ulonglong()
                   throws TypeMismatch,
                          InvalidValue
TypeMismatch
InvalidValue
long get_longlong()
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
TypeCode get_typecode()
                      throws TypeMismatch,
                             InvalidValue
TypeMismatch
InvalidValue
Object get_reference()
                     throws TypeMismatch,
                            InvalidValue
TypeMismatch
InvalidValue
java.lang.String get_string()
                            throws TypeMismatch,
                                   InvalidValue
TypeMismatch
InvalidValue
double get_double()
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
float get_float()
                throws TypeMismatch,
                       InvalidValue
TypeMismatch
InvalidValue
int get_ulong()
              throws TypeMismatch,
                     InvalidValue
TypeMismatch
InvalidValue
int get_long()
             throws TypeMismatch,
                    InvalidValue
TypeMismatch
InvalidValue
short get_ushort()
                 throws TypeMismatch,
                        InvalidValue
TypeMismatch
InvalidValue
short get_short()
                throws TypeMismatch,
                       InvalidValue
TypeMismatch
InvalidValue
char get_char()
              throws TypeMismatch,
                     InvalidValue
TypeMismatch
InvalidValue
byte get_octet()
               throws TypeMismatch,
                      InvalidValue
TypeMismatch
InvalidValue
boolean get_boolean()
                    throws TypeMismatch,
                           InvalidValue
TypeMismatch
InvalidValue
void insert_val(java.io.Serializable value)
                throws TypeMismatch,
                       InvalidValue
TypeMismatch
InvalidValue
void insert_dyn_any(DynAny value)
                    throws TypeMismatch,
                           InvalidValue
TypeMismatch
InvalidValue
void insert_any(Any value)
                throws TypeMismatch,
                       InvalidValue
TypeMismatch
InvalidValue
void insert_wstring(java.lang.String value)
                    throws TypeMismatch,
                           InvalidValue
TypeMismatch
InvalidValue
void insert_wchar(char value)
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
void insert_ulonglong(long value)
                      throws TypeMismatch,
                             InvalidValue
TypeMismatch
InvalidValue
void insert_longlong(long value)
                     throws TypeMismatch,
                            InvalidValue
TypeMismatch
InvalidValue
void insert_typecode(TypeCode value)
                     throws TypeMismatch,
                            InvalidValue
TypeMismatch
InvalidValue
void insert_reference(Object value)
                      throws TypeMismatch,
                             InvalidValue
TypeMismatch
InvalidValue
void insert_string(java.lang.String value)
                   throws TypeMismatch,
                          InvalidValue
TypeMismatch
InvalidValue
void insert_double(double value)
                   throws TypeMismatch,
                          InvalidValue
TypeMismatch
InvalidValue
void insert_float(float value)
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
void insert_ulong(int value)
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
void insert_long(int value)
                 throws TypeMismatch,
                        InvalidValue
TypeMismatch
InvalidValue
void insert_ushort(short value)
                   throws TypeMismatch,
                          InvalidValue
TypeMismatch
InvalidValue
void insert_short(short value)
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
void insert_char(char value)
                 throws TypeMismatch,
                        InvalidValue
TypeMismatch
InvalidValue
void insert_octet(byte value)
                  throws TypeMismatch,
                         InvalidValue
TypeMismatch
InvalidValue
void insert_boolean(boolean value)
                    throws TypeMismatch,
                           InvalidValue
TypeMismatch
InvalidValueDynAny copy()
DynAny object whose value is a deep copy of the
         DynAny on which it is invoked. The operation is polymorphic, that is, invoking it on
         one of the types derived from DynAny, such as DynStruct, 
         creates the derived type but returns its reference as the DynAny base type.
DynAny contentsvoid destroy()
DynAny object. This operation frees any resources
         used to represent the data value associated with a DynAny object. destroy must be
         invoked on references obtained from one of the creation operations on the ORB
         interface or on a reference returned by DynAny::copy to avoid resource leaks.
         Invoking destroy on component DynAny objects (for example, on objects returned by
         the current_component operation) does nothing.
         Destruction of a DynAny object implies destruction of all DynAny 
         objects obtained from it. 
         That is, references to components of a destroyed DynAny become invalid;
         invocations on such references raise OBJECT_NOT_EXIST.
         It is possible to manipulate a component of a DynAny beyond the life time of the
         DynAny from which the component was obtained by making a copy of the component
         with the copy operation before destroying the DynAny from which the component
         was obtained.
boolean equal(DynAny dyn_any)
DynAny values for equality and returns true of the
         DynAnys are equal, false otherwise. Two DynAny values are equal if their
         TypeCodes are equivalent and, recursively, all component DynAnys have equal
         values. The current position of the two DynAnys being compared has no effect on the
         result of equal.
dyn_any - the DynAny to compare with
Any to_any()
DynAny object. A copy of the
         TypeCode associated with the DynAny object is assigned to the resulting any. The
         value asociated with the DynAny object is copied into the any.
DynAny contents
void from_any(Any value)
              throws TypeMismatch,
                     InvalidValue
The from_any operation initializes the value associated with a DynAny object with
         the value contained in an any.
         If the type of the passed Any is not equivalent to the type of target DynAny,
         the operation raises TypeMismatch. If the passed Any does not 
         contain a legal value (such as a null string), the operation raises InvalidValue.
         The current position of the target DynAny is set to zero for values 
         that have components and to -1 for values that do not have components.
value - the any from which to assign
         throws org.omg.DynamicAny.DynAnyPackage.TypeMismatch if both types are not equivalent
TypeMismatch
InvalidValue
void assign(DynAny dyn_any)
            throws TypeMismatch
DynAny object with the
         value associated with another DynAny object.
         If the type of the passed DynAny is not equivalent to the 
         type of target DynAny, the operation raises TypeMismatch. 
         The current position of the target DynAny is set to zero for values that 
         have components and to -1 for values that do not have components.
dyn_any - the DynAny object to assign
         throws org.omg.DynamicAny.DynAnyPackage.TypeMismatch if both types are not equivalent
TypeMismatchTypeCode type()
DynAny object is created with a TypeCode value assigned to it. 
         This TypeCode value determines the type of the value handled through the DynAny object. The type
         operation returns the TypeCode associated with a DynAny object.
         Note that the TypeCode associated with a DynAny object 
         is initialized at the time the DynAny is created and 
         cannot be changed during lifetime of the DynAny object.
  | 
                 
  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||