Niestandardowe akcje DataService

Kontrakt DataService’u zawiera dwie metody umożliwiające wywołanie uniwersalnej akcji:

byte[] CustomGet(string operationCode, byte[] args)
void CustomExecute(string operationCode, byte[] args)

Zarówno argument jak i typ zwracany (tylko CustomGet) jest tablicą bajtów, aby można było przesłać oraz odebrać dowolna strukturę.

Wywołanie na POS

Metody do wywołania akcji uniwersalnych znajdują się w serwisie ISynchronizationService. Wystarczy we własnym module wstrzyknąć instancje w/w serwisu i wywołać żądaną operację.

Obsługa na DataService

Podpięcie obsługi akcji uniwersalnej polega na zarejestrowaniu jej obsługi w module rozszerzającym.

!!Uwaga!! klasa opatrzona atrybutem musi być statyczna

[DataServiceBusinessModule]
public static class Module    
{
   [MethodInitializer]
   public static void Initialize()        
   {
      var customOpsService = IoC.Container.Resolve<ICustomOperationsService>();
      customOpsService.RegisterCustomGet("my_op", MyCustomGet);
   }
   private static byte[] MyCustomGet(byte[] data)        
   {
     //kod   
   }
}

 

Czy ten artykuł był pomocny?