How to add new functionality to the Site Service

To do this you would need to take the following steps:

  1. Add your function definition to ISiteService and implement it in the SiteManagerPlugin

    All of the functions that the Site Service performed are defined in this interface. This is open source and you can add your function here.

     

  2. Add the same(or similar) function to the ISiteServiceService and implement the call to the ISiteService in the SiteServiceService

    Usually this is fairly simple. In most cases the code you add here simply calls directly to the Site Service. You can find plenty of examples in the "SiteServiceService.cs" code.

     

  3. Deploy the "SiteManagerPlugin" and the "SiteServiceInteface" assemblies to the Site Service.

    After you have made your modifications to the ISiteService (located in Core\Service interfaces\SiteServiceInterface) and the SiteManagerPlugin you need to take the assemblies that are built from that and overwrite the existing assemblies on an installed Site Service.

    The assemblies you need are following:

    • LSRetail.SiteService.SiteServiceInterface.dll -> Builds into Source\SM\Build
    • LSOne.SiteService.Plugins.SiteManager.dll -> Builds into Source\Site_service\Build

    These assemblies need to be deployed into the installation folder of the Site Service (typically C:\Program Files (x86)\LS Retail\LS One Site Service).

     

  4. Call the new code from your development pack

    After step 3 your Site Service should now have loaded the modified SiteManagerPlugin and SiteServiceInterface assemblies. You should now be able to try out your new functions via the Site Service service.​​