From f45656ba1a3d9a0c9be287bdfb0f721b0dacca5b Mon Sep 17 00:00:00 2001 From: Victor Chang Date: Thu, 10 Aug 2023 11:43:58 -0700 Subject: [PATCH] New APIs to get a list of input/output data plug-ins (#437) * gh-434 New APIs to get a list of input/output data plug-ins New PluginAttribute to provide names for the plug-ins * gh-434 Update documentation * gh-434 Update documentation * gh-434 Update CLI with aet plugins and dst plugins commands * Add AttributeUsage to PluginNameAttribute * Update user guide * Fix typo in setup guide * Add unit test for Plug-ins client Signed-off-by: Victor Chang --- docs/api/rest/config.md | 72 ++++++++++- docs/docfx.json | 18 +-- docs/index.md | 6 +- docs/setup/cli.md | 9 +- docs/setup/setup.md | 53 +++++++- src/Api/PluginNameAttribute.cs | 34 +++++ src/Api/Storage/DicomFileStorageMetadata.cs | 4 +- src/Api/Storage/FhirFileStorageMetadata.cs | 4 +- src/CLI/Commands/AetCommand.cs | 72 +++++++++++ src/CLI/Commands/DestinationCommand.cs | 74 ++++++++++- src/CLI/ExitCodes.cs | 4 +- src/CLI/Logging/Log.cs | 6 + src/CLI/Test/AetCommandTest.cs | 70 +++++++++++ src/CLI/Test/DestinationCommandTest.cs | 72 ++++++++++- src/Client/Services/AeTitle{T}Service.cs | 20 ++- src/Client/Test/AeTitleServiceTest.cs | 59 +++++++++ src/Configuration/DicomWebConfiguration.cs | 5 +- src/Configuration/ScuConfiguration.cs | 6 +- .../Common/TypeExtensions.cs | 5 + .../Logging/Log.5000.DataPlugins.cs | 30 +++++ .../Logging/Log.8000.HttpServices.cs | 3 + src/InformaticsGateway/Program.cs | 2 + .../Common/IInputDataPluginEngineFactory.cs | 117 ++++++++++++++++++ .../Http/DestinationAeTitleController.cs | 25 +++- .../Services/Http/MonaiAeTitleController.cs | 24 +++- .../Test/Plugins/TestInputDataPlugins.cs | 5 + .../Test/Plugins/TestOutputDataPlugins.cs | 2 + src/InformaticsGateway/Test/ProgramTest.cs | 5 +- .../InputDataPluginEngineFactoryTest.cs | 67 ++++++++++ .../OutputDataPluginEngineFactoryTest.cs | 65 ++++++++++ .../Http/DestinationAeTitleControllerTest.cs | 47 ++++++- .../Http/MonaiAeTitleControllerTest.cs | 43 ++++++- src/InformaticsGateway/appsettings.json | 10 +- 33 files changed, 992 insertions(+), 46 deletions(-) create mode 100644 src/Api/PluginNameAttribute.cs create mode 100644 src/InformaticsGateway/Logging/Log.5000.DataPlugins.cs create mode 100644 src/InformaticsGateway/Services/Common/IInputDataPluginEngineFactory.cs create mode 100644 src/InformaticsGateway/Test/Services/Common/InputDataPluginEngineFactoryTest.cs create mode 100644 src/InformaticsGateway/Test/Services/Common/OutputDataPluginEngineFactoryTest.cs diff --git a/docs/api/rest/config.md b/docs/api/rest/config.md index 9aa45867b..e4c3cd5af 100644 --- a/docs/api/rest/config.md +++ b/docs/api/rest/config.md @@ -1,5 +1,5 @@