Classe entité de service distant (stereotype)

De Wiki1000
Tip-20px.png Tip : Ces classes s'utilisent dans un scénario Client pour consommer des ressources SData

Les classes entité de service distante non persistante sont des classes permettant de manipuler des ressource exposées par un Service SData.

Il y a deux façon d'utiliser ces classes :

  • Avec un objet fournisseur de Service.
Dans ce cas vous devez créer un objet de la classe TSDataServiceProviderInfo et définir manuellement les valeurs de ses propriétés puis utiliser cet objet pour effectuer les opérations GET,POST,PUT,DELETE SData.
  • Avec un fournisseur de Service enregistrée dans l'administration.
Dans ce cas vous devez définir les propriétés du Service dans les Fournisseurs de Service de l'administration, associer ce fournisseur à la base de données de l'application puis appeler directement les méthodes du stéréotype pour effectuer les opérations GET,POST,PUT,DELETE SData.

Attributs du stéréotype

SDataID Identifiant de ressource
SDataKey Identifiant de clé primaire SData
SDataEtag Identifiant de version
SDataUUID Identifiant de correlation
SDataServiceProvider Fournisseur de service SData

Méthode du stéréotype

Get Retrouve une ressource par son identifiant SData
GetWhere Retrouve une ressource par une clause Where
GetList Retrouve une liste de ressources
Post Crée la ressource sur le serveur distant
Put Met à jour la ressource sur le serveur distant
Delete Supprime la ressource sur le serveur distant.
DeleteByKey Supprime la ressource sur le serveur distant.

Exemple :

Création d'une ressource sur un Service SData en utilisant un objet fournisseur de Service :

var inst:remoteEntity; prv:TSDataServiceProviderInfo;
begin
  // create an instance of sdata service provider
  prv := TSDataServiceProviderInfo.Create;
  prv.UserName := userName;
  prv.UserPassword := jeton; 
  prv.EndPointURL := endpoint;
 
  // Build a ressource
  //
  inst := remoteEntity.create;
  inst.code := remoteCode;
  ...
  prv.PostEntity(inst);
end;

Création d'une ressource sur un Service SData en utilisant un fournisseur de Service enregistré dans l'administration :

var inst:remoteEntity;
begin
  // build a remote sdata entity 
  //
  inst := remoteEntity.create;
  inst.code := remoteCode;
  ...
  inst.Post;
end;


Exclam-20px.png Attention : Pour fonctionner, les classes qu'on souhaite instancier doivent appartenir à un paquet dont le module est lié à la base de données,courante.

Voir aussi :

Outils personnels