Classe entité de service distant (stereotype)

De Wiki1000
(Différences entre les versions)
(Méthode du stéréotype)
Ligne 24 : Ligne 24 :
 
{|class="wikitable"
 
{|class="wikitable"
 
|-
 
|-
|
+
|[[Get (TSDataRemoteObject)|Get]]
|
+
|Retrouve une ressource par son identifiant SData
 +
|-
 +
|[[GetWhere (TSDataRemoteObject)|GetWhere]]
 +
|Retrouve une ressource par une clause Where
 +
|-
 +
|[[GetList (TSDataRemoteObject)|GetList]]
 +
|Retrouve une liste de ressources
 +
|-
 +
|[[Post (TSDataRemoteObject)|Post]]
 +
|Crée la ressource sur le serveur distant
 +
|-
 +
|[[Put (TSDataRemoteObject)|Put]]
 +
|Met à jour la ressource sur le serveur distant
 +
|-
 +
|[[Delete (TSDataRemoteObject)|Delete]]
 +
|Supprime la ressource sur le serveur distant.
 
|}
 
|}
  
 
Exemple :
 
Exemple :
  
Création d'une ressource sur un Service SData :
+
Création d'une ressource sur un Service SData en utilisant un objet [[Fournisseur de Service (sdata)|fournisseur de Service]] :
  
 
<source lang="delphi">
 
<source lang="delphi">
 +
var inst:remoteEntity; prv:TSDataServiceProviderInfo;
 
begin
 
begin
  // build a remote sdata entity
 
  data := remoteEntity.create;
 
  data.code := remoteCode;
 
  ...
 
 
 
   // create an instance of sdata service provider
 
   // create an instance of sdata service provider
 
   prv := TSDataServiceProviderInfo.Create;
 
   prv := TSDataServiceProviderInfo.Create;
Ligne 45 : Ligne 56 :
 
   prv.EndPointURL := endpoint;
 
   prv.EndPointURL := endpoint;
 
   
 
   
   // create this entity
+
   // Build a ressource
   // this will emit a HTTP POST request
+
   //
   try
+
   inst := remoteEntity.create;
    prv.postEntity(data);
+
  inst.code := remoteCode;
    progressMessage('OK');
+
  ...
   except
+
  prv.PostEntity(inst);
    progressMessage('Update failed');
+
end;
   end;
+
</source>
 +
 
 +
Création d'une ressource sur un Service SData en utilisant un [[Fournisseur de Service (sdata)|fournisseur de Service]] enregistré dans l'administration :
 +
 
 +
<source lang="delphi">
 +
var inst:remoteEntity;
 +
begin
 +
   // build a remote sdata entity
 +
  //
 +
  inst := remoteEntity.create;
 +
   inst.code := remoteCode;
 +
  ...
 +
  inst.Post;
 
end;
 
end;
 
</source>
 
</source>
Ligne 58 : Ligne 81 :
 
Voir aussi :
 
Voir aussi :
  
* [[TSDataServiceProviderInfo (class)|TSDataServiceProviderInfo]]
+
* [[TSDataServiceProviderInfo (class)|Classe fournisseur de Service]]
  
 
[[Category:Stereotype]]
 
[[Category:Stereotype]]
 
[[Category:SData]]
 
[[Category:SData]]

Version du 10 mai 2011 à 17:15

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

Il faut appeler une méthode sur le serviceprovider et choisir donc l'objet à poster.

Tip-20px.png Tip : Lors de l'import d'un Contrat SData, c'est ce stéréotype qui est utilisé.

Attributs du stéréotype

SDataID Identifiant de ressource
SDataKey Identifiant unique SData
SDataEtag Identifiant de version
SDataUUID Identifiant de correlation

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.

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;

Voir aussi :





Whos here now:   Members 0   Guests 0   Bots & Crawlers 1
 
Outils personnels