Mercurial > hg > orthanc
comparison OrthancFramework/Sources/DicomNetworking/Internals/CommandDispatcher.cpp @ 4888:8523078f3f4b
added new configuration to authorize C-Find for worklist independently from other C-Find
author | Alain Mazy <am@osimis.io> |
---|---|
date | Fri, 18 Feb 2022 15:45:28 +0100 |
parents | 43e613a7756b |
children | 45d6ce72a84e |
comparison
equal
deleted
inserted
replaced
4887:a29a6bdba9dd | 4888:8523078f3f4b |
---|---|
786 request = DicomRequestType_Get; | 786 request = DicomRequestType_Get; |
787 supported = true; | 787 supported = true; |
788 break; | 788 break; |
789 | 789 |
790 case DIMSE_C_FIND_RQ: | 790 case DIMSE_C_FIND_RQ: |
791 request = DicomRequestType_Find; | 791 { |
792 supported = true; | 792 std::string sopClassUid(msg.msg.CFindRQ.AffectedSOPClassUID); |
793 break; | 793 if (sopClassUid == UID_FINDModalityWorklistInformationModel) |
794 | 794 { |
795 request = DicomRequestType_FindWorklist; | |
796 } | |
797 else | |
798 { | |
799 request = DicomRequestType_Find; | |
800 } | |
801 supported = true; | |
802 }; break; | |
795 case DIMSE_N_ACTION_RQ: | 803 case DIMSE_N_ACTION_RQ: |
796 request = DicomRequestType_NAction; | 804 request = DicomRequestType_NAction; |
797 supported = true; | 805 supported = true; |
798 break; | 806 break; |
799 | 807 |
873 } | 881 } |
874 } | 882 } |
875 break; | 883 break; |
876 | 884 |
877 case DicomRequestType_Find: | 885 case DicomRequestType_Find: |
886 case DicomRequestType_FindWorklist: | |
878 if (server_.HasFindRequestHandlerFactory() || // Should always be true | 887 if (server_.HasFindRequestHandlerFactory() || // Should always be true |
879 server_.HasWorklistRequestHandlerFactory()) | 888 server_.HasWorklistRequestHandlerFactory()) |
880 { | 889 { |
881 std::unique_ptr<IFindRequestHandler> findHandler; | 890 std::unique_ptr<IFindRequestHandler> findHandler; |
882 if (server_.HasFindRequestHandlerFactory()) | 891 if (server_.HasFindRequestHandlerFactory()) |