init
This commit is contained in:
@@ -0,0 +1,327 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mbean PUBLIC "DCMSCU attributes template extends jboss_xmbean_1_1.dtd" "dcm4chee-scu-xmbean.dtd">
|
||||
|
||||
<mbean>
|
||||
<description><![CDATA[<b>Modality Worklist Replication Service</b><br/>
|
||||
Provides a Service to replicate a MWL SCP with DCM4CHEE Modality worklist.<br/>.
|
||||
You can use XSL Templates to change MWL C-FIND Request for MWL SCPs.<br/>
|
||||
Therefore put either mwl-replica-rq.xsl and/or mwl-replica-rsp.xsl in conf/dcm4chee-aet/[AET].
|
||||
]]> </description>
|
||||
|
||||
<descriptors>
|
||||
<persistence persistPolicy="OnUpdate"/>
|
||||
<persistence-manager value="org.jboss.mx.persistence.DelegatingPersistenceManager" />
|
||||
</descriptors>
|
||||
|
||||
<class>org.dcm4chex.archive.tool.mwlreplica.MwlReplicaService</class>
|
||||
|
||||
<constructor>
|
||||
<description>The default constructor</description>
|
||||
<name>MwlReplicaService</name>
|
||||
</constructor>
|
||||
|
||||
<!-- Attributes -->
|
||||
&defaultAttributes;
|
||||
&defaultSCUAttributes;
|
||||
<attribute access="read-write" getMethod="getCalledAET" setMethod="setCalledAET">
|
||||
<description><![CDATA[The AE title(s) of the Modality Worklist SCP to query for replication.<br/>
|
||||
Multible AET's must be separated by \(backslash). For example, MWL_SCP1\MWL_SCP2.]]>
|
||||
</description>
|
||||
<name>CalledAET</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="MWL_SCP"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-write" getMethod="getCallingAET" setMethod="setCallingAET">
|
||||
<description>Calling AET.
|
||||
</description>
|
||||
<name>CallingAET</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="DCM4CHEE"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-write" getMethod="getTaskInterval" setMethod="setTaskInterval">
|
||||
<description><![CDATA[Interval in which to replicate local Modality Work List with remote MWL SCP.<br/>
|
||||
Format: interval (##s (in seconds), ##m (in minutes), ##h (in hours) or NEVER]]>
|
||||
</description>
|
||||
<name>TaskInterval</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="NEVER"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-write" getMethod="getTimeBefore" setMethod="setTimeBefore">
|
||||
<description><![CDATA[Time interval to calculate left border of time range.<br/>
|
||||
Format: interval (##s (in seconds), ##m (in minutes), ##h (in hours) or NONE.<br/>
|
||||
NONE means either no (time) left border or, if TimeAfter is also NONE the whole day.<br/>
|
||||
E.g.: TimeBefore = 1h, TimeAfter = 2h, current time is 13:00 -> search for all MWL with start date between 12:00 and 15:00.<br/>
|
||||
TimeBefore = 1h, TimeAfter = NONE, current time is 13:00 -> search for all MWL with start date between 12:00 and 23:59.59.<br/>
|
||||
TimeBefore = NONE, TimeAfter = 2h, current time is 13:00 -> search for all MWL with start date before 15:00.<br/>
|
||||
TimeBefore = NONE, TimeAfter = NONE, current time is 13:00 -> search for all MWL for current date.<br/>
|
||||
]]></description>
|
||||
<name>TimeBefore</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="NONE"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-write" getMethod="getTimeAfter" setMethod="setTimeAfter">
|
||||
<description><![CDATA[Time interval to calculate left border of time range.<br/>
|
||||
Format: interval (##s (in seconds), ##m (in minutes), ##h (in hours) or NONE.<br/>
|
||||
NONE means either no (time) right border or, if TimeBefore is also NONE the whole day.
|
||||
]]></description>
|
||||
<name>TimeAfter</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="NONE"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-write" getMethod="getIssuerOfPatient" setMethod="setIssuerOfPatient">
|
||||
<description>Default Issuer Of Patient ID to coerce empty IssuerOfPatient attribute in MWL results. Use NONE to disable coercion.
|
||||
</description>
|
||||
<name>IssuerOfPatient</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="NONE"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-write" getMethod="isForceIssuerCoercion" setMethod="setForceIssuerCoercion">
|
||||
<description>Force coercion of IssuerOfPatient attribute in MWL results even when result contains IssuerOfPatient.
|
||||
</description>
|
||||
<name>ForceIssuerCoercion</name>
|
||||
<type>boolean</type>
|
||||
<descriptors>
|
||||
<value value="false"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-write"
|
||||
getMethod="getCoerceConfigDir"
|
||||
setMethod="setCoerceConfigDir">
|
||||
<description><![CDATA[Directory where configuration files for attribute
|
||||
coercion are located: if XSL stylesheet "mwl-replica-rq.xsl" or
|
||||
"mwl-replica-rsp.xsl" exists in this directory or in a sub-directory equal
|
||||
to the AE Title of the MWL SCP, attributes of MWL C-FIND Request or Response
|
||||
will be coerced according these stylesheets.
|
||||
A relative path name is resolved relative to
|
||||
<i>archive-install-directory</i>/server/default/.]]>
|
||||
</description>
|
||||
<name>CoerceConfigDirectory</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="conf/dcm4chee-ae"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-write"
|
||||
getMethod="getPatientMatching"
|
||||
setMethod="setPatientMatching">
|
||||
<description><![CDATA[Defines which Patient Attributes in received HL7
|
||||
ORM messages are considered for selecting existing Patient records in the
|
||||
archive.
|
||||
<p>
|
||||
Format: 'pid'['?']',issuer'['?'][',' ['['] <i>demograhic-matches</i> [']'] ]
|
||||
<br/><i>demograhic-matches</i> ::= <i>demograhic-match</i>['|' ...]
|
||||
<br/><i>demograhic-match</i> ::= [<i>ignore</i>',']<i>demograhic-fields</i>
|
||||
<br/><i>ignore</i> ::= 'ignore("' <i>regular-expression</i> '")'
|
||||
<br/><i>demograhic-fields</i> ::= <i>demograhic-field</i>['?'][',' ...]
|
||||
<br/><i>demograhic-field</i> ::= 'familyname'['(1)'] | 'givenname'['(1)'] | 'middlename'['(1)'] | 'nameprefix'['(1)'] | 'namesuffix'['(1)'] | birthdate | sex
|
||||
<p>
|
||||
Multiple alternative <i>demograhic-matches</i> can be specified using '|' as
|
||||
delimiter.
|
||||
<p>Substrings specified by 'ignore("' <i>regular-expression</i> '")' will be ignored for matching patient name
|
||||
components.
|
||||
<p>
|
||||
A '(1)' suffix of the attribute name specifies that only the first character
|
||||
need to match.
|
||||
<p>
|
||||
A question mark('?') after a field name specifies that a missing value in
|
||||
received HL7 ORM messages will match with any value for that field in
|
||||
existing Patient Records, as Patient Records with missing values for that field
|
||||
will match with any value for that field in received HL7 ORM messages. Field
|
||||
names without question marks specifies, that HL7 ORM messages without values
|
||||
for such fields will not match any existing Patient Record, and Patient Records
|
||||
without values for such fields will not get selected on receive of any HL7 ORM
|
||||
message.
|
||||
<p>
|
||||
Surrounding <i>demograhic-match</i> by brackets('[]') defines, that
|
||||
demographic fields shall *not* be considered for the selection of an existing
|
||||
Patient record, if the Patient ID is qualified by an Issuer/Authority in the
|
||||
HL7 ORM message *and* in the matching Patient Record.
|
||||
<p><b>Attention:</b>
|
||||
<br/>Configuration of considertion of demographic fields for the selection of
|
||||
existing Patient records disables the update of such Patient Demographics
|
||||
attributes by HL7 ORM messages! => Only change the default value of
|
||||
<code>pid,issuer?</code>, if you know, what you are doing!
|
||||
<p><b>Warning:</b>Improper configuration may cause MWL assignments to wrong patient.<br/>
|
||||
<p>Default: <code>pid,issuer?</code>
|
||||
]]>
|
||||
</description>
|
||||
<name>PatientMatching</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="pid,issuer?" />
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-write" getMethod="isDebugMode" setMethod="setDebugMode">
|
||||
<description>Enable DEBUG mode. No MWL query will be performed but the Query Dataset will be logged!
|
||||
</description>
|
||||
<name>DebugMode</name>
|
||||
<type>boolean</type>
|
||||
<descriptors>
|
||||
<value value="false"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-only"
|
||||
getMethod="isRunning">
|
||||
<description>Current state if replication task is running. Used to avoid concurrency!
|
||||
</description>
|
||||
<name>isRunning</name>
|
||||
<type>boolean</type>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-write" getMethod="getPriority" setMethod="setPriority">
|
||||
<description>Priority for C-Find requests. Enumerated Values: LOW, MEDIUM, HIGH.
|
||||
Only effective for queries of a remote Modality Worlist SCP which actual
|
||||
interprets the priority attribute in the DICOM C-FIND request.
|
||||
</description>
|
||||
<name>Priority</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="MEDIUM"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-write"
|
||||
getMethod="getTemplatesServiceName"
|
||||
setMethod="setTemplatesServiceName">
|
||||
<description>Used internally. Do NOT modify.
|
||||
</description>
|
||||
<name>TemplatesServiceName</name>
|
||||
<type>javax.management.ObjectName</type>
|
||||
</attribute>
|
||||
|
||||
<attribute access="read-write"
|
||||
getMethod="getSchedulerServiceName"
|
||||
setMethod="setSchedulerServiceName">
|
||||
<description>Used internally. Do NOT modify.
|
||||
</description>
|
||||
<name>SchedulerServiceName</name>
|
||||
<type>javax.management.ObjectName</type>
|
||||
</attribute>
|
||||
<attribute access="read-write"
|
||||
getMethod="getTimerIDMwlReplica"
|
||||
setMethod="setTimerIDMwlReplica">
|
||||
<description>Used internally. Do NOT modify.
|
||||
</description>
|
||||
<name>TimerID</name>
|
||||
<type>java.lang.String</type>
|
||||
<descriptors>
|
||||
<value value="TimerIDMwlReplica"/>
|
||||
</descriptors>
|
||||
</attribute>
|
||||
<attribute access="read-only" getMethod="getErrorCount" >
|
||||
<description>ErrorCount since last reset.
|
||||
</description>
|
||||
<name>ErrorCount</name>
|
||||
<type>int</type>
|
||||
</attribute>
|
||||
<attribute access="read-only" getMethod="getTotalErrorCount" >
|
||||
<description>ErrorCount since service start.
|
||||
</description>
|
||||
<name>TotalErrorCount</name>
|
||||
<type>int</type>
|
||||
</attribute>
|
||||
|
||||
<!-- Operations -->
|
||||
|
||||
<operation impact="ACTION">
|
||||
<description>Replicate modality worklist entries for given date.
|
||||
</description>
|
||||
<name>replicateMWLEntriesForDate</name>
|
||||
<parameter>
|
||||
<description>AET of MWL SCP to query. (null means configured calledAET - must be configured in AE Managment!)</description>
|
||||
<name>aet</name>
|
||||
<type>java.lang.String</type>
|
||||
</parameter>
|
||||
<parameter>
|
||||
<description>Date for which MWL items should be replicated. Use yyyy/MM/dd or null for current date.</description>
|
||||
<name>Date</name>
|
||||
<type>java.lang.String</type>
|
||||
</parameter>
|
||||
<return-type>java.util.List</return-type>
|
||||
</operation>
|
||||
|
||||
<operation impact="ACTION">
|
||||
<description>Replicate modality worklist entries for given date.
|
||||
</description>
|
||||
<name>replicateMWLEntriesForDateRange</name>
|
||||
<parameter>
|
||||
<description>AET of MWL SCP to query. (null means configured calledAET - must be configured in AE Managment!)</description>
|
||||
<name>aet</name>
|
||||
<type>java.lang.String</type>
|
||||
</parameter>
|
||||
<parameter>
|
||||
<description>Start Date/Time for which MWL items should be replicated. Use 'yyyy/MM/dd hh:mm' or null for current date.</description>
|
||||
<name>StartDate</name>
|
||||
<type>java.lang.String</type>
|
||||
</parameter>
|
||||
<parameter>
|
||||
<description>End Date/Time for which MWL items should be replicated. Use 'yyyy/MM/dd hh:mm' or null for current date.</description>
|
||||
<name>EndDate</name>
|
||||
<type>java.lang.String</type>
|
||||
</parameter>
|
||||
<return-type>java.util.List</return-type>
|
||||
</operation>
|
||||
|
||||
<operation impact="ACTION">
|
||||
<description>Replicate modality worklist entries of aet for given queryDS.
|
||||
(MWL C-FIND Request Dataset)
|
||||
</description>
|
||||
<name>replicateMWLEntries</name>
|
||||
<parameter>
|
||||
<description>AET of MWL SCP to query. (must be configured in AE Managment!)</description>
|
||||
<name>aet</name>
|
||||
<type>java.lang.String</type>
|
||||
</parameter>
|
||||
<parameter>
|
||||
<description><![CDATA[Dataset for MWL C-Find. <br/>
|
||||
Use <null> to use a Search Dataset with almost all
|
||||
MWL attributes as return attributes, and matching SPS Start Date
|
||||
for current date.
|
||||
]]></description>
|
||||
<name>queryDS</name>
|
||||
<type>org.dcm4che.data.Dataset</type>
|
||||
</parameter>
|
||||
<return-type>java.util.List</return-type>
|
||||
</operation>
|
||||
<operation impact="ACTION">
|
||||
<description>Show error history.
|
||||
</description>
|
||||
<name>showErrorHistory</name>
|
||||
<return-type>java.lang.String</return-type>
|
||||
</operation>
|
||||
<operation impact="ACTION">
|
||||
<description>Clear error history.
|
||||
</description>
|
||||
<name>resetErrorHistory</name>
|
||||
<return-type>void</return-type>
|
||||
</operation>
|
||||
|
||||
<operation impact="ACTION">
|
||||
<description>The start lifecycle operation.
|
||||
</description>
|
||||
<name>start</name>
|
||||
<return-type>void</return-type>
|
||||
</operation>
|
||||
<operation impact="ACTION">
|
||||
<description>The stop lifecycle operation.
|
||||
</description>
|
||||
<name>stop</name>
|
||||
<return-type>void</return-type>
|
||||
</operation>
|
||||
</mbean>
|
||||
Reference in New Issue
Block a user