-
- All Known Subinterfaces:
- DynAnyFactory
- All Known Implementing Classes:
- _DynAnyFactoryStub
public interface DynAnyFactoryOperations
DynAny objects can be created by invoking operations on the DynAnyFactory object. Generally there are only two ways to create a DynAny object:- invoking an operation on an existing DynAny object
- invoking an operation on a DynAnyFactory object
Dynamic interpretation of an any usually involves creating a DynAny object using create_dyn_any() as the first step. Depending on the type of the any, the resulting DynAny object reference can be narrowed to a DynFixed, DynStruct, DynSequence, DynArray, DynUnion, DynEnum, or DynValue object reference.
Dynamic creation of an any involves creating a DynAny object using create_dyn_any_from_type_code(), passing the TypeCode associated with the value to be created. The returned reference is narrowed to one of the complex types, such as DynStruct, if appropriate. Then, the value can be initialized by means of invoking operations on the resulting object. Finally, the to_any operation can be invoked to create an any value from the constructed DynAny.
-
-
Method Summary
Methods Modifier and Type Method and Description DynAny
create_dyn_any_from_type_code(TypeCode type)
Creates a DynAny from a TypeCode.DynAny
create_dyn_any(Any value)
Creates a new DynAny object from an any value.
-
-
-
Method Detail
-
create_dyn_any
DynAny create_dyn_any(Any value) throws InconsistentTypeCode
Creates a new DynAny object from an any value. A copy of the TypeCode associated with the any value is assigned to the resulting DynAny object. The value associated with the DynAny object is a copy of the value in the original any. The current position of the created DynAny is set to zero if the passed value has components, to -1 otherwise- Throws:
InconsistentTypeCode
- if value has a TypeCode with a TCKind of tk_Principal, tk_native, or tk_abstract_interface
-
create_dyn_any_from_type_code
DynAny create_dyn_any_from_type_code(TypeCode type) throws InconsistentTypeCode
Creates a DynAny from a TypeCode. Depending on the TypeCode, the created object may be of type DynAny, or one of its derived types, such as DynStruct. The returned reference can be narrowed to the derived type. In all cases, a DynAny constructed from a TypeCode has an initial default value. The default values of basic types are:- false for boolean
- zero for numeric types
- zero for types octet, char, and wchar
- the empty string for string and wstring
- null for object references
- a type code with a TCKind value of tk_null for type codes
- for any values, an any containing a type code with a TCKind value of tk_null type and no value
- For DynSequence it sets the current position to -1 and creates an empty sequence.
- For DynEnum it sets the current position to -1 and sets the value of the enumerator to the first enumerator value indicated by the TypeCode.
- For DynFixed it sets the current position to -1 and sets the value zero.
- For DynStruct it sets the current position to -1 for empty exceptions and to zero for all other TypeCodes. The members (if any) are (recursively) initialized to their default values.
- For DynArray sets the current position to zero and (recursively) initializes elements to their default value.
- For DynUnion sets the current position to zero. The discriminator value is set to a value consistent with the first named member of the union. That member is activated and (recursively) initialized to its default value.
- For DynValue and DynValueBox it initializes to a null value.
- Throws:
InconsistentTypeCode
-
-
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 11/06/2005, zuletzt geändert 04/03/2020
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-rf-org/omg/dynamicany/dynanyfactoryoperations.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.