What is the ModuleApiProxy?
...
Drawio | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Legend:
Green = Shared library (provided by Himsa)
Yellow = REST-based Proxy for IMC and Module API (PIMA) (provided by Himsa)
Blue = Module (provided by Module Developer)
Orange = Noah Client (Part of Noah 4 and Noah ES) (provided by Himsa)
Who should consider using the ModuleApiProxy?
...
The general performance overhead appears to be just a few percent of the total request time.
Note |
---|
Please observe!!When porting modules utilizing the Noah 4 ModuleApi to a .NET 6 module using the ModuleApiProxy there are some differences to be aware of. |
Available samples and source code (SDK)
...
Steps involved to develop a .NET 6 module that utilizes the ModuleApiProxy
Reference the following files in your .NET module project (available from the ModuleApiProxy SDK see here:
ModuleApiProxyLib.dll (the library is the API client to access the REST API provided by the ModuleApiProxy )
ModuleApiProxyLib.dll.xml (this xml file contains XML documentation comments which provides additional information for Visual Studio intellisense)
SharedLib.dll (this library contains common functionality, types and definitions required to utilize the ModuleProxyApi)
SharedLib.dll.xml (this xml file contains XML documentation comments which provides additional information for Visual Studio intellisense)
Ensure that the following files are copied to the output folder of your .NET module project (available from the ModuleApiProxy SDK see here:
...
In addition to all the .NET 6 modules files the following files, (which are ModuleApiProxy dependencies), must be added to the modules deployment folder as part of the installation process.
All Module Api Proxy files deployed to the .NET 6 modules folder (SharedLib.dll, ModuleApiProxyLib.dll, ModuleApiProxy.exe, ModuleApiProxy.Config.json) can be removed when the module is uninstalled.
Info |
---|
Install ModuleApiService by running the Setup.exe (available from the ModuleApiProxy SDK). |
Note |
---|
The ModuleApiService should never be uninstalled when a PIMA module is uninstalled as this service is shared by all PIMA modules on the computer |
Info |
---|
Deployment configurations (version dependent) |
...
below)
|
...
...
Using PIMA version 1.0.0 and 1.0.1 of the ModuleApiProxy the component must be deployed like this:
(In the table below the files in cells with green background are provided by HIMSA)
.NET 6 Module Deployment files | Deployment Folders |
---|---|
MyDotNet6Module.exe | ..\MyModuleFolder\ |
SharedLib.dll | ..\MyModuleFolder\ |
Starting with version 1.0.3 of the ModuleApiProxy the component must be deployed like this:
(In the table below the files in cells with green background are provided by HIMSA)
.NET 6 Module Deployment files | Deployment Folders |
---|---|
MyDotNet6Module.exe | ..\MyModuleFolder\ |
ModuleApiProxyLib.dll | ..\MyModuleFolder\ |
ModuleApiProxy.Config.json | ..\MyModuleFolder\.proxy |