From eb6429406cb142e06be16601edecdd8a5ba29a81 Mon Sep 17 00:00:00 2001 From: Craig Martek Date: Tue, 14 May 2024 13:02:35 -0400 Subject: [PATCH] Allow configuration of client AET. (#171) --- .../healthcare/imaging/dicomadapter/ExportAdapter.java | 8 ++++---- .../cloud/healthcare/imaging/dicomadapter/Flags.java | 6 ++++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/ExportAdapter.java b/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/ExportAdapter.java index c2473c77..0a82c088 100644 --- a/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/ExportAdapter.java +++ b/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/ExportAdapter.java @@ -76,7 +76,7 @@ public static void main(String[] args) throws IOException { boolean isStowRs = !flags.peerDicomwebAddress.isEmpty() || (!flags.peerDicomwebAddr.isEmpty() && !flags.peerDicomwebStowPath.isEmpty()); boolean isCStore = - !flags.peerDimseAET.isEmpty() && !flags.peerDimseIP.isEmpty() && flags.peerDimsePort != 0; + !flags.peerDimseAET.isEmpty() && !flags.peerDimseIP.isEmpty() && flags.peerDimsePort != 0 && !flags.clientAET.isEmpty(); DicomSender dicomSender = null; if (isStowRs && isCStore) { System.err.println("Both C-STORE and STOW-RS flags should not be specified."); @@ -99,7 +99,7 @@ public static void main(String[] args) throws IOException { // C-Store sender. // // DIMSE application entity. - ApplicationEntity applicationEntity = new ApplicationEntity("EXPORTADAPTER"); + ApplicationEntity applicationEntity = new ApplicationEntity(StringUtil.trim(flags.clientAET)); Connection conn = new Connection(); DeviceUtil.createClientDevice(applicationEntity, conn); applicationEntity.addConnection(conn); @@ -111,8 +111,8 @@ public static void main(String[] args) throws IOException { flags.peerDimsePort, dicomWebClient); System.out.printf( - "Export adapter set-up to export via C-STORE to AET: %s, IP: %s, Port: %d\n", - flags.peerDimseAET, flags.peerDimseIP, flags.peerDimsePort); + "Export adapter set-up to export via C-STORE to AET: %s, IP: %s, Port: %d, client AET: %s\n", + flags.peerDimseAET, flags.peerDimseIP, flags.peerDimsePort, flags.clientAET); } else { System.err.println("Neither C-STORE nor STOW-RS flags have been specified."); System.exit(1); diff --git a/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/Flags.java b/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/Flags.java index 191b0faf..c9e4d771 100644 --- a/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/Flags.java +++ b/export/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/Flags.java @@ -38,6 +38,12 @@ public class Flags { ) public static Integer peerDimsePort = 0; + @Parameter( + names = {"--client_aet"}, + description = "Application Entity Title of export adapter." + ) + public static String clientAET = "EXPORTADAPTER"; + /** Flags for exporting via DicomWeb STOW-RS. */ @Deprecated @Parameter(