Soap.InvokeRegistry.TRemotable

De RAD Studio API Documentation
Aller à : navigation, rechercher

System.TObjectTRemotable

Delphi

TRemotable = class

C++

class PASCALIMPLEMENTATION TRemotable : public System::TObject

Propriétés

Type Visibilité  Source Unité  Parent
class public
Soap.InvokeRegistry.pas
Soap.InvokeRegistry.hpp
Soap.InvokeRegistry Soap.InvokeRegistry

Description

TRemotable est la classe de base des classes qui peuvent être transmises comme des paramètres ou des valeurs de retour dans une application de services Web.

Utilisez TRemotable comme une classe de base lorsque vous définissez une classe qui peut être employée pour des paramètres ou des valeurs de retour sur une interface invocable. Les descendants de TRemotable peuvent représenter des types non scalaires ou des types scalaires qui ne correspondent pas aux types Pascal Objet. TRemotable est compilé avec les informations de type à l'exécution (RTTI) et dispose d'un constructeur virtuel que le registre des classes distantes reconnaît et utilise pour fournir des instances de classe.

Remarque: Pour créer une classe qui représente des valeurs scalaires qui ne correspondent pas directement à un type Pascal Objet, utilisez à la place TRemotableXS comme classe de base. TRemotableXS est un descendant de la classe TRemotable.
Remarque: Quand vous écrivez un descendant de TRemotable, vous pouvez choisir de coder une propriété sous la forme d'un noeud d'élément ou d'un noeud d'attribut en utilisant la directive stockée. Les propriétés déclarées avec une directive stockée ayant la valeur AS_ATTRIBUTE sont codées sous la forme de noeuds d'attribut. Les propriétés déclarées sans directive stockée, ou avec une directive stockée ayant une valeur autre que AS_ATTRIBUTE, sont codées sous la forme de noeuds d'élément.

L'application client et l'application serveur doivent recenser un descendant de TRemotable avec le registre des classes distantes pour pouvoir l'utiliser. Pour recenser une classe distante, utilisez la méthode RegisterXSClass de l'objet renvoyé par la fonction globale RemTypeRegistry.

Dans les applications serveurs, les instances de TRemotable utilisées comme paramètres d'entrée d'une interface invocable sont créées automatiquement lorsque l'appel de méthode est désassemblé et sont libérées automatiquement quand des paramètres de sortie ou une valeur renvoyée sont assemblés afin d'être envoyées au xclient. Quand un descendant de TRemotable est créé dans une méthode qui a été appelée à distance par le biais d'une interface invocable, l'instance est automatiquement libérée après le marshaling de la valeur du descendant de TRemotable pour le transport vers l'application client.

L'appelant d'une interface invocable (client) est responsable de la création de toute instance de TRemotable qu'il transmet en paramètre d'entrée, et de la libération de toute instance de TRemotable qu'il crée ou qui est renvoyée sous la forme de paramètres de sortie ou de résultats de méthode.

Voir aussi