Skip to content

Commit

Permalink
Optionally feed MWL C-FIND SCP by the content of the UPS DB table, i…
Browse files Browse the repository at this point in the history
…ntiated by dicomWeb Worklist Service (UPS-RS) fix #4620
  • Loading branch information
gunterze committed Dec 16, 2024
1 parent 71ff2cb commit ed620ec
Show file tree
Hide file tree
Showing 15 changed files with 254 additions and 8 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
# Generated by Apache Directory Studio on December 5, 2024, 3:25:00 PM
# Generated by Apache Directory Studio on December 16, 2024, 5:44:37 PM

# SCHEMA "DCM4CHEE-ARCHIVE"
dn: cn=dcm4chee-archive, ou=schema
objectclass: metaSchema
objectclass: top
cn: dcm4chee-archive
m-dependencies: dcm4che
m-dependencies: system
m-dependencies: dicom

dn: ou=attributetypes, cn=dcm4chee-archive, ou=schema
Expand Down Expand Up @@ -6514,6 +6513,35 @@ m-equality: caseExactMatch
m-substr: caseExactSubstringsMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15

dn: m-oid=1.2.40.0.13.1.15.110.3.488, ou=attributetypes, cn=dcm4chee-archive, ou
=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.40.0.13.1.15.110.3.488
m-name: dcmUPS2MWLCFindSCP
m-description: Indicates to feed Modality Worklist C-FIND SCP service from manag
ed list of Unified Procedure Step (UPS) instances mapped to MWL items; false if
absent.
m-equality: booleanMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.7
m-singleValue: TRUE

dn: m-oid=1.2.40.0.13.1.15.110.3.489, ou=attributetypes, cn=dcm4chee-archive, ou
=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.40.0.13.1.15.110.3.489
m-name: dcmUPS2MWLScheduledStationNameCode
m-description: Defines list of Station Name Codes in format (CV, CSD, "CM") used
to map Scheduled Station AE Titles (0040,0001) in MWL C-FIND RQ/RSPs to Statio
n Name Code Sequence (0040,4025) items of Unified Procedure Step (UPS) instance
s with the AE Title in the code meaning.
m-equality: caseExactMatch
m-substr: caseExactSubstringsMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15

dn: ou=comparators, cn=dcm4chee-archive, ou=schema
objectclass: organizationalUnit
objectclass: top
Expand Down Expand Up @@ -7230,6 +7258,8 @@ m-may: dcmUPSEventWebSocketQueueSize
m-may: dcmUPSEventSCU
m-may: dcmUPSEventSCUKeepAlive
m-may: dcmUPSUpdateWithoutTransactionUID
m-may: dcmUPS2MWLCFindSCP
m-may: dcmUPS2MWLScheduledStationNameCode
m-may: dcmStorageID
m-may: dcmMetadataStorageID
m-may: dcmSeriesMetadataStorageID
Expand Down Expand Up @@ -7682,6 +7712,7 @@ m-may: dcmUPSWorklistLabel
m-may: dcmUPSEventSCU
m-may: dcmUPSEventSCUKeepAlive
m-may: dcmUPSUpdateWithoutTransactionUID
m-may: dcmUPS2MWLCFindSCP
m-may: dcmStorageID
m-may: dcmObjectStorageID
m-may: dcmObjectStorageCount
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2376,6 +2376,16 @@ attributeTypes: ( 1.2.40.0.13.1.15.110.3.487 NAME 'hl7NoPatientUpdateMessageType
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
attributeTypes: ( 1.2.40.0.13.1.15.110.3.488 NAME 'dcmUPS2MWLCFindSCP'
DESC 'Indicates to feed Modality Worklist C-FIND SCP service from managed list of Unified Procedure Step (UPS) instances mapped to MWL items; false if absent.'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
SINGLE-VALUE )
attributeTypes: ( 1.2.40.0.13.1.15.110.3.489 NAME 'dcmUPS2MWLScheduledStationNameCode'
DESC 'Defines list of Station Name Codes in format (CV, CSD, "CM") used to map Scheduled Station AE Titles (0040,0001) in MWL C-FIND RQ/RSPs to Station Name Code Sequence (0040,4025) items of Unified Procedure Step (UPS) instances with the AE Title in the code meaning.'
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
objectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
DESC 'DICOM Archive Device related information'
SUP top AUXILIARY
Expand All @@ -2402,6 +2412,8 @@ objectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmUPS2MWLScheduledStationNameCode $
dcmStorageID $
dcmMetadataStorageID $
dcmSeriesMetadataStorageID $
Expand Down Expand Up @@ -2689,6 +2701,7 @@ objectClasses: ( 1.2.40.0.13.1.15.110.4.5 NAME 'dcmArchiveNetworkAE'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmStorageID $
dcmObjectStorageID $
dcmObjectStorageCount $
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2853,6 +2853,18 @@ attributetype ( 1.2.40.0.13.1.15.110.3.487 NAME 'hl7NoPatientUpdateMessageType'
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

attributetype ( 1.2.40.0.13.1.15.110.3.488 NAME 'dcmUPS2MWLCFindSCP'
DESC 'Indicates to feed Modality Worklist C-FIND SCP service from managed list of Unified Procedure Step (UPS) instances mapped to MWL items; false if absent.'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
SINGLE-VALUE )

attributetype ( 1.2.40.0.13.1.15.110.3.489 NAME 'dcmUPS2MWLScheduledStationNameCode'
DESC 'Defines list of Station Name Codes in format (CV, CSD, "CM") used to map Scheduled Station AE Titles (0040,0001) in MWL C-FIND RQ/RSPs to Station Name Code Sequence (0040,4025) items of Unified Procedure Step (UPS) instances with the AE Title in the code meaning.'
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

objectclass ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
DESC 'DICOM Archive Device related information'
SUP top AUXILIARY
Expand All @@ -2879,6 +2891,8 @@ objectclass ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmUPS2MWLScheduledStationNameCode $
dcmStorageID $
dcmMetadataStorageID $
dcmSeriesMetadataStorageID $
Expand Down Expand Up @@ -3167,6 +3181,7 @@ objectclass ( 1.2.40.0.13.1.15.110.4.5 NAME 'dcmArchiveNetworkAE'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmStorageID $
dcmObjectStorageID $
dcmObjectStorageCount $
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2371,6 +2371,21 @@ olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.486 NAME 'dcmCheckExistFilePath'
EQUALITY caseExactMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.487 NAME 'hl7NoPatientUpdateMessageType'
DESC 'Patient record will be not be updated by HL7 messages of specified Message Type(s) (MessageType^TriggerEvent).'
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.488 NAME 'dcmUPS2MWLCFindSCP'
DESC 'Indicates to feed Modality Worklist C-FIND SCP service from managed list of Unified Procedure Step (UPS) instances mapped to MWL items; false if absent.'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
SINGLE-VALUE )
olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.489 NAME 'dcmUPS2MWLScheduledStationNameCode'
DESC 'Defines list of Station Name Codes in format (CV, CSD, "CM") used to map Scheduled Station AE Titles (0040,0001) in MWL C-FIND RQ/RSPs to Station Name Code Sequence (0040,4025) items of Unified Procedure Step (UPS) instances with the AE Title in the code meaning.'
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
-
replace: olcObjectClasses
olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
Expand Down Expand Up @@ -2399,6 +2414,8 @@ olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmUPS2MWLScheduledStationNameCode $
dcmStorageID $
dcmMetadataStorageID $
dcmSeriesMetadataStorageID $
Expand Down Expand Up @@ -2534,6 +2551,7 @@ olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
hl7OutgoingLogFilePattern $
hl7OutgoingErrorLogFilePattern $
hl7NoPatientCreateMessageType $
hl7NoPatientUpdateMessageType $
dcmUnzipVendorDataToURI $
dcmPurgeQueueMessagePollingInterval $
dcmPurgeQueueMessageFetchSize $
Expand Down Expand Up @@ -2685,6 +2703,7 @@ olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.5 NAME 'dcmArchiveNetworkAE'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmStorageID $
dcmObjectStorageID $
dcmObjectStorageCount $
Expand Down Expand Up @@ -2839,6 +2858,7 @@ olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.11 NAME 'dcmArchiveHL7Application'
hl7OutgoingLogFilePattern $
hl7OutgoingErrorLogFilePattern $
hl7NoPatientCreateMessageType $
hl7NoPatientUpdateMessageType $
hl7UseNullValue $
hl7ImportReportAdjustIUID $
hl7PrimaryAssigningAuthorityOfPatientID $
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2375,6 +2375,16 @@ olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.487 NAME 'hl7NoPatientUpdateMessageT
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.488 NAME 'dcmUPS2MWLCFindSCP'
DESC 'Indicates to feed Modality Worklist C-FIND SCP service from managed list of Unified Procedure Step (UPS) instances mapped to MWL items; false if absent.'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
SINGLE-VALUE )
olcAttributeTypes: ( 1.2.40.0.13.1.15.110.3.489 NAME 'dcmUPS2MWLScheduledStationNameCode'
DESC 'Defines list of Station Name Codes in format (CV, CSD, "CM") used to map Scheduled Station AE Titles (0040,0001) in MWL C-FIND RQ/RSPs to Station Name Code Sequence (0040,4025) items of Unified Procedure Step (UPS) instances with the AE Title in the code meaning.'
EQUALITY caseExactMatch
SUBSTR caseExactSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
DESC 'DICOM Archive Device related information'
SUP top AUXILIARY
Expand All @@ -2401,6 +2411,8 @@ olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.4 NAME 'dcmArchiveDevice'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmUPS2MWLScheduledStationNameCode $
dcmStorageID $
dcmMetadataStorageID $
dcmSeriesMetadataStorageID $
Expand Down Expand Up @@ -2688,6 +2700,7 @@ olcObjectClasses: ( 1.2.40.0.13.1.15.110.4.5 NAME 'dcmArchiveNetworkAE'
dcmUPSEventSCU $
dcmUPSEventSCUKeepAlive $
dcmUPSUpdateWithoutTransactionUID $
dcmUPS2MWLCFindSCP $
dcmStorageID $
dcmObjectStorageID $
dcmObjectStorageCount $
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -440,6 +440,8 @@ protected void storeTo(Device device, JsonWriter writer) {
writer.writeNotDef("dcmAuditHL7MsgLimit", arcDev.getAuditHL7MsgLimit(), 1000);
writer.writeNotDef("dcmMatchSOPClassOnInstanceLevel", arcDev.isMatchSOPClassOnInstanceLevel(), false);
writer.writeNotDef("dcmUPSUpdateWithoutTransactionUID", arcDev.isUPSUpdateWithoutTransactionUID(), false);
writer.writeNotDef("dcmUPS2MWLCFindSCP", arcDev.isUPS2MWLCFindSCP(), false);
writer.writeNotEmpty("dcmUPS2MWLScheduledStationNameCode", arcDev.getUPS2MWLScheduledStationNames());
writer.writeNotNullOrDef("dcmKeyValueRetentionPollingInterval",
arcDev.getKeyValueRetentionPollingInterval(), null);
writer.writeNotDef("dcmKeyValueRetentionFetchSize", arcDev.getKeyValueRetentionFetchSize(), 100);
Expand Down Expand Up @@ -1387,6 +1389,7 @@ protected void storeTo(ApplicationEntity ae, JsonWriter writer) {
writer.writeNotNull("dcmFilterByIssuerOfPatientID", arcAE.getFilterByIssuerOfPatientID());
writer.writeNotNull("dcmMatchSOPClassOnInstanceLevel", arcAE.getMatchSOPClassOnInstanceLevel());
writer.writeNotNull("dcmUPSUpdateWithoutTransactionUID", arcAE.getUPSUpdateWithoutTransactionUID());
writer.writeNotNull("dcmUPS2MWLCFindSCP", arcAE.getUPS2MWLCFindSCP());
writeExportRule(writer, arcAE.getExportRules());
writeExportPrefetchRules(writer, arcAE.getExportPriorsRules());
writeMPPSForwardRule(writer, arcAE.getMPPSForwardRules());
Expand Down Expand Up @@ -2204,6 +2207,12 @@ private void loadFrom(ArchiveDeviceExtension arcDev, JsonReader reader, Configur
case "dcmUPSUpdateWithoutTransactionUID":
arcDev.setUPSUpdateWithoutTransactionUID(reader.booleanValue());
break;
case "dcmUPS2MWLCFindSCP":
arcDev.setUPS2MWLCFindSCP(reader.booleanValue());
break;
case "dcmUPS2MWLScheduledStationNameCode":
arcDev.setUPS2MWLScheduledStationNames(reader.codeArray());
break;
case "dcmKeyValueRetentionPollingInterval":
arcDev.setKeyValueRetentionPollingInterval(Duration.valueOf(reader.stringValue()));
break;
Expand Down Expand Up @@ -4430,6 +4439,9 @@ private void loadFrom(ArchiveAEExtension arcAE, JsonReader reader, Configuration
case "dcmUPSUpdateWithoutTransactionUID":
arcAE.setUPSUpdateWithoutTransactionUID(reader.booleanValue());
break;
case "dcmUPS2MWLCFindSCP":
arcAE.setUPS2MWLCFindSCP(reader.booleanValue());
break;
case "dcmExportRule":
loadExportRule(arcAE.getExportRules(), reader);
break;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -548,6 +548,10 @@ protected void storeTo(ConfigurationChanges.ModifiedObject ldapObj, Device devic
ext.isMatchSOPClassOnInstanceLevel(), false);
LdapUtils.storeNotDef(ldapObj, attrs, "dcmUPSUpdateWithoutTransactionUID",
ext.isUPSUpdateWithoutTransactionUID(), false);
LdapUtils.storeNotDef(ldapObj, attrs, "dcmUPS2MWLCFindSCP",
ext.isUPS2MWLCFindSCP(), false);
LdapUtils.storeNotEmpty(ldapObj, attrs, "dcmUPS2MWLScheduledStationNameCode",
ext.getUPS2MWLScheduledStationNames());
LdapUtils.storeNotNullOrDef(ldapObj, attrs, "dcmKeyValueRetentionPollingInterval",
ext.getKeyValueRetentionPollingInterval(), null);
LdapUtils.storeNotDef(ldapObj, attrs, "dcmKeyValueRetentionFetchSize",
Expand Down Expand Up @@ -928,6 +932,8 @@ protected void loadFrom(Device device, Attributes attrs) throws NamingException
ext.setAuditHL7MsgLimit(LdapUtils.intValue(attrs.get("dcmAuditHL7MsgLimit"), 1000));
ext.setMatchSOPClassOnInstanceLevel(LdapUtils.booleanValue(attrs.get("dcmMatchSOPClassOnInstanceLevel"), false));
ext.setUPSUpdateWithoutTransactionUID(LdapUtils.booleanValue(attrs.get("dcmUPSUpdateWithoutTransactionUID"), false));
ext.setUPS2MWLCFindSCP(LdapUtils.booleanValue(attrs.get("dcmUPS2MWLCFindSCP"), false));
ext.setUPS2MWLScheduledStationNames(LdapUtils.codeArray(attrs.get("dcmUPS2MWLScheduledStationNameCode")));
ext.setKeyValueRetentionPollingInterval(toDuration(attrs.get("dcmKeyValueRetentionPollingInterval"), null));
ext.setKeyValueRetentionFetchSize(LdapUtils.intValue(attrs.get("dcmKeyValueRetentionFetchSize"), 100));
ext.setKeyValueRetentionPeriod(toDuration(attrs.get("dcmKeyValueRetentionPeriod"), null));
Expand Down Expand Up @@ -1609,6 +1615,12 @@ protected void storeDiffs(ConfigurationChanges.ModifiedObject ldapObj, Device pr
aa.isUPSUpdateWithoutTransactionUID(),
bb.isUPSUpdateWithoutTransactionUID(),
false);
LdapUtils.storeDiff(ldapObj, mods, "dcmUPS2MWLCFindSCP",
aa.isUPS2MWLCFindSCP(),
bb.isUPS2MWLCFindSCP(),
false);
LdapUtils.storeDiff(ldapObj, mods, "dcmUPS2MWLScheduledStationNameCode",
aa.getUPS2MWLScheduledStationNames(), bb.getUPS2MWLScheduledStationNames());
LdapUtils.storeDiffObject(ldapObj, mods, "dcmKeyValueRetentionPollingInterval",
aa.getKeyValueRetentionPollingInterval(), bb.getKeyValueRetentionPollingInterval(), null);
LdapUtils.storeDiff(ldapObj, mods, "dcmKeyValueRetentionFetchSize",
Expand Down Expand Up @@ -1983,6 +1995,8 @@ protected void storeTo(ConfigurationChanges.ModifiedObject ldapObj, ApplicationE
ext.getMatchSOPClassOnInstanceLevel(), null);
LdapUtils.storeNotNullOrDef(ldapObj, attrs, "dcmUPSUpdateWithoutTransactionUID",
ext.getUPSUpdateWithoutTransactionUID(), null);
LdapUtils.storeNotNullOrDef(ldapObj, attrs, "dcmUPS2MWLCFindSCP",
ext.getUPS2MWLCFindSCP(), null);
}

@Override
Expand Down Expand Up @@ -2157,6 +2171,7 @@ protected void loadFrom(ApplicationEntity ae, Attributes attrs) throws NamingExc
ext.setFilterByIssuerOfPatientID(LdapUtils.booleanValue(attrs.get("dcmFilterByIssuerOfPatientID"), null));
ext.setMatchSOPClassOnInstanceLevel(LdapUtils.booleanValue(attrs.get("dcmMatchSOPClassOnInstanceLevel"), null));
ext.setUPSUpdateWithoutTransactionUID(LdapUtils.booleanValue(attrs.get("dcmUPSUpdateWithoutTransactionUID"), null));
ext.setUPS2MWLCFindSCP(LdapUtils.booleanValue(attrs.get("dcmUPS2MWLCFindSCP"), null));
}

@Override
Expand Down Expand Up @@ -2439,6 +2454,8 @@ protected void storeDiffs(ConfigurationChanges.ModifiedObject ldapObj, Applicati
aa.getMatchSOPClassOnInstanceLevel(), bb.getMatchSOPClassOnInstanceLevel(), null);
LdapUtils.storeDiffObject(ldapObj, mods, "dcmUPSUpdateWithoutTransactionUID",
aa.getUPSUpdateWithoutTransactionUID(), bb.getUPSUpdateWithoutTransactionUID(), null);
LdapUtils.storeDiffObject(ldapObj, mods, "dcmUPS2MWLCFindSCP",
aa.getUPS2MWLCFindSCP(), bb.getUPS2MWLCFindSCP(), null);
if (remove)
mods.add(new ModificationItem(DirContext.REMOVE_ATTRIBUTE,
LdapUtils.attr("objectClass", "dcmArchiveNetworkAE")));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ public class ArchiveAEExtension extends AEExtension {
private String[] upsEventSCUs = {};
private int upsEventSCUKeepAlive;
private Boolean upsUpdateWithoutTransactionUID;
private Boolean ups2MWLCFindSCP;
private String[] objectStorageIDs = {};
private int objectStorageCount = 1;
private String[] metadataStorageIDs = {};
Expand Down Expand Up @@ -275,6 +276,20 @@ public boolean upsUpdateWithoutTransactionUID() {
: getArchiveDeviceExtension().isUPSUpdateWithoutTransactionUID();
}

public Boolean getUPS2MWLCFindSCP() {
return ups2MWLCFindSCP;
}

public void setUPS2MWLCFindSCP(Boolean ups2MWLCFindSCP) {
this.ups2MWLCFindSCP = ups2MWLCFindSCP;
}

public boolean ups2MWLCFindSCP() {
return ups2MWLCFindSCP != null
? ups2MWLCFindSCP
: getArchiveDeviceExtension().isUPS2MWLCFindSCP();
}

public String[] getObjectStorageIDs() {
return objectStorageIDs;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,8 @@ public class ArchiveDeviceExtension extends DeviceExtension {
private volatile String[] upsEventSCUs = {};
private volatile int upsEventSCUKeepAlive;
private volatile boolean upsUpdateWithoutTransactionUID;
private volatile boolean ups2MWLCFindSCP;
private volatile Code[] ups2MWLScheduledStationNames = {};
private volatile String fuzzyAlgorithmClass;
private volatile String bulkDataDescriptorID;
private volatile String[] seriesMetadataStorageIDs = {};
Expand Down Expand Up @@ -436,6 +438,22 @@ public void setUPSUpdateWithoutTransactionUID(boolean upsUpdateWithoutTransactio
this.upsUpdateWithoutTransactionUID = upsUpdateWithoutTransactionUID;
}

public boolean isUPS2MWLCFindSCP() {
return ups2MWLCFindSCP;
}

public void setUPS2MWLCFindSCP(boolean ups2MWLCFindSCP) {
this.ups2MWLCFindSCP = ups2MWLCFindSCP;
}

public Code[] getUPS2MWLScheduledStationNames() {
return ups2MWLScheduledStationNames;
}

public void setUPS2MWLScheduledStationNames(Code[] ups2MWLScheduledStationNames) {
this.ups2MWLScheduledStationNames = ups2MWLScheduledStationNames;
}

public String getFuzzyAlgorithmClass() {
return fuzzyAlgorithmClass;
}
Expand Down
Loading

0 comments on commit ed620ec

Please sign in to comment.