DynamicAny::DynAny - The generic API for dynamic any's
use lib "$ENV{OPALORB_ROOT}";
use CORBA;
use CORBA::Exception;
try {
my $orb = CORBA::ORB_init(\@ARGV);
my $dynanyfactory = $orb->resolve_initial_references('DynAnyFactory');
if (CORBA::is_nil($dynanyfactory)) {
print STDERR "Unable to resolve the DynAnyFactory\n";
exit(1);
}
my $members = new CORBA::StructMemberSeq();
push(@$members, new CORBA::StructMember('line', CORBA::_tc_long));
my $tc = $orb->create_exception_tc('IDL:SyntaxError:1.0', 'e', $members);
my $da = $dynanyfactory->create_dyn_any_from_type_code($tc);
$da->insert_long($line_number);
...
$da->destroy();
}
catch CORBA::Exception with {
my $ex = shift;
print STDERR "Exception: $ex\n";
}
catch Error::Simple with {
my $ex = shift;
print STDERR "Exception: $ex\n";
};
This is the base class for all dynamic any's.
assign - Assign another DynAny to this DynAny. The
DynamicAny::DynAny::TypeMismatch exception will be thrown if the type
codes are not equivalent.
component_count - Returns the number of components that belong to this
DynAny. It will return zero for those DynAny's that can not contain
components (i.e., DynAny's with simple type codes).
copy - Make a copy of the DynAny. If, for example, the DynAny is
really a DynStruct, the copy will also be a DynStruct.
current_component - Return the current component DynAny of the base
DynAny. A DynamicAny::DynAny::TypeMismatch exception will be thrown, if
this is called on a generic DynAny.
destroy - Clears the ``active'' flag. Objects are automatically
reference counted, so this isn't truly necessary. However, invoking
other methods on a ``destroyed'' DynAny will result in a
CORBA::OBJECT_NOT_EXIST exception.
equal - Compare this DynAny to another. They will only be equal if
the type codes are equivalent and the values stored are equal as well.
from_any - Set this DynAny from a CORBA::Any. The
DynamicAny::DynAny::TypeMismatch exception will be thrown if the type
codes are not equivalent.
get_any - Return the CORBA::Any from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_boolean - Return the boolean from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_boolean_seq - Return the boolean sequence from this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_char - Return the character from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_char_seq - Return the character sequence from this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_double - Return the double from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_double_seq - Return the double sequence from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_dyn_any - Identical to get_any, but returns it as a DynAny.
get_float - Return the float from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_float_seq - Return the float sequence from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_long - Return the long from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_long_seq - Return the long sequence from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_longdouble - Return the long double from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_longdouble_seq - Return the long double sequence from this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_longlong - Return the long long from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_longlong_seq - Return the long long sequence from this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_octet - Return the octet from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_octet_seq - Return the octet sequence from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_reference - Return the object reference from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_short - Return the short from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_short_seq - Return the short sequence from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_string - Return the string from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_typecode - Return the CORBA::TypeCode from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_ulong - Return the unsigned long from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_ulong_seq - Return the unsigned long sequence from this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_ulonglong - Return the unsigned long long from this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_ulonglong_seq - Return the unsigned long long sequence from this
DynAny. It will throw a DynamicAny::DynAny::TypeMismatch exception if
the stored type does not correspond to the type specified by this method.
get_ushort - Return the unsigned short from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_ushort_seq - Return the unsigned short sequence from this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type specified by this method.
get_wchar - Return the wchar from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
get_wchar_seq - Return the wchar sequence from this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type specified by this method.
get_wstring - Return the wstring from this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type does not
correspond to the type specified by this method.
insert_any - Insert a CORBA::Any into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_boolean - Insert a boolean into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_boolean_seq - Insert a boolean sequence into this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_char - Insert a char into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_char_seq - Insert a char sequence into this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_double - Insert a double into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_double_seq - Insert a double sequence into this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_dyn_any - Identical to insert_any, but takes a DynAny instead
of a CORBA::Any.
insert_float - Insert a float into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_float_seq - Insert a float sequence into this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_long - Insert a long into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_long_seq - Insert a long sequence into this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_longdouble - Insert a long double into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_longdouble_seq - Insert a long double sequence into this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_longlong - Insert a long long into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_longlong_seq - Insert a long long sequence into this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_octet - Insert an octet into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_octet_seq - Insert an octet sequence into this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_reference - Insert an object reference into this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_short - Insert a short into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_short_seq - Insert a short sequence into this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_string - Insert a string into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_typecode - Insert a CORBA::TypeCode into this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_ulong - Insert an unsigned long into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_ulong_seq - Insert an unsigned long sequence into this DynAny.
It will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_ulonglong - Insert an unsigned long long into this DynAny. It
will throw a DynamicAny::DynAny::TypeMismatch exception if the stored
type does not correspond to the type being inserted.
insert_ulonglong_seq - Insert an unsigned long long sequence into this
DynAny. It will throw a DynamicAny::DynAny::TypeMismatch exception if the
stored type does not correspond to the type being inserted.
insert_ushort - Insert an unsigned short into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_ushort_seq - Insert an unsigned short sequence into this
DynAny. It will throw a DynamicAny::DynAny::TypeMismatch exception if the
stored type does not correspond to the type being inserted.
insert_wchar - Insert an wchar into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_wchar_seq - Insert a wchar sequence into this DynAny. It will
throw a DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
insert_wstring - Insert an wstring into this DynAny. It will throw a
DynamicAny::DynAny::TypeMismatch exception if the stored type
does not correspond to the type being inserted.
next - Advance the current position to the next component in the
DynAny. It returns false if there are no more components.
rewind - This is equivalent to calling seek(0).
seek - Set the current position to the index provided. It returns
false if the specified index does not correspond to the position of a
component.
to_any - Convert this DynAny into a CORBA::Any.
type - Return the CORBA::TypeCode associated with this DynAny.