Files
config-pacs-docker/dcm4chee/default/conf/xmdesc/dcm4chee-filecopy-xmbean.xml
2025-02-26 14:49:25 +07:00

254 lines
9.5 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mbean PUBLIC "-//JBoss//DTD JBOSS XMBEAN 1.1//EN" "http://www.jboss.org/j2ee/dtd/jboss_xmbean_1_1.dtd">
<mbean>
<description>File Copy Service.</description>
<descriptors>
<persistence persistPolicy="OnUpdate"/>
<persistence-manager value="org.jboss.mx.persistence.DelegatingPersistenceManager"/>
</descriptors>
<class>org.dcm4chex.archive.hsm.FileCopyService</class>
<constructor>
<description>The default constructor</description>
<name>FileCopyService</name>
</constructor>
<!-- Attributes -->
<attribute access="read-write"
getMethod="getDestination"
setMethod="setDestination">
<description><![CDATA[Destination file system or NONE to disable the
service. The file system name can be prefixed by a condition
'[calling'['!']'='<i>aeTitle</i>['|'..]']' to limit/exclude copying
to/of series received from modalities with specified AE title(s).
If the file system name is a tar URI (tar:<Directory/Mount Point>),
instances of one series are packed into one tarball. Otherwise
instance files are copied individually to the destination file system.
If an external command is used for the copy of tarballs to the destination,
the destination name (after the "tar:" prefix) need not follow the syntax
of a directory path (e.g.: tar:ftp://user@pass/service).
<p><b>Attention:</b> The file system must have already been configured
by invoking operation <code>File System Management
Service#addRWFileSystem()</code>. Otherwise the copy task will
fail! If you configured a tar URI as destination file system, the name
of the configured file system has to match that URI, and not only the
<Directory/Mount Point> part! <p />
The filesystem status and/or availability may be also changed to fulfil
configured deleter criteria. <br />
(see also <code>updateFileSystemStatus and updateFileSystemAvailability in
File System Managment Service</code>)
]]>
</description>
<name>DestinationFileSystem</name>
<type>java.lang.String</type>
<descriptors>
<value value="NONE"/>
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getHSMModulServicename"
setMethod="setHSMModulServicename">
<description><![CDATA[HSM Module to store tarballs to HSM systems.<br/>
Use NONE to store files on local filesystem without additional HSM support.<br/>
Only effective if destination is a tar filesystem!<br/>
]]></description>
<name>HSMModulServicename</name>
<type>java.lang.String</type>
<descriptors>
<value value="NONE"/>
</descriptors>
</attribute>
<attribute access="read-only"
getMethod="getAvailableHSMModules">
<description>Available HSM modules.</description>
<name>AvailableHSMModules</name>
<type>java.lang.String</type>
</attribute>
<attribute access="read-only"
getMethod="isReady">
<description><![CDATA[Status if FileCopy Service is ready to process FileCopy orders.<br/>
If the destination is a tar filesystem and a HSMModule is configured, this module must be also registered!<br/>
If this status is false the processing of Filecopy orders will be delayed according NotReadyDelay to wait for
deployment/registration of the configured HSMModule.
]]></description>
<name>isReady</name>
<type>boolean</type>
</attribute>
<attribute access="read-write"
getMethod="isSeriesStoredDisabled"
setMethod="setSeriesStoredDisabled">
<description>Disable Series Stored Notification</description>
<name>SeriesStoredDisabled</name>
<type>boolean</type>
<descriptors>
<value value="false"/>
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getFileStatus"
setMethod="setFileStatus">
<description>Status of copied file. Enumerated values: DEFAULT, TO_ARCHIVE, ARCHIVED
</description>
<name>FileStatus</name>
<type>java.lang.String</type>
<descriptors>
<value value="TO_ARCHIVE"/>
</descriptors>
</attribute>
<attribute access="read-write" getMethod="isVerifyCopy" setMethod="setVerifyCopy">
<description>Verify MD5 sum of copied file.
</description>
<name>VerifyCopy</name>
<type>boolean</type>
<descriptors>
<value value="true"/>
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getRetryIntervalls"
setMethod="setRetryIntervalls">
<description><![CDATA[Number and interval of retries made for
failed Copy Requests.
<br>Format:
<br>Comma separated list of <i>number</i>x<i>interval</i> pairs.
<br>The interval can be specified in seconds (##s),
minutes (##m), hours (##h) or days (##d).
<br>Example:
<br>5x1m,10x10m means retry a total of 5 times, one minute
apart for each retry; then retry a total of 10 times, 10 minutes
apart for each retry.]]>
</description>
<name>RetryIntervals</name>
<type>java.lang.String</type>
<descriptors>
<value value="5x1m,12x5m,24x1h,7x1d" />
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getNotReadyDelay"
setMethod="setNotReadyDelay">
<description><![CDATA[Delay to reschedule FileCopy orders when the FileCopy Service is not ready.
<br>The delay can be specified in seconds (##s),
minutes (##m), hours (##h) or days (##d).]]>
</description>
<name>NotReadyDelay</name>
<type>java.lang.String</type>
<descriptors>
<value value="1m" />
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getConcurrency"
setMethod="setConcurrency">
<description>Maximum number of concurrent invoked Copy Requests.
</description>
<name>Concurrency</name>
<type>int</type>
<descriptors>
<value value="1" />
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getBufferSize"
setMethod="setBufferSize">
<description>Size of write byte buffer.
</description>
<name>BufferSize</name>
<type>int</type>
<descriptors>
<value value="8192"/>
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getFetchSize"
setMethod="setFetchSize">
<description>JDBC Fetch size.
</description>
<name>FetchSize</name>
<type>int</type>
<descriptors>
<value value="50"/>
</descriptors>
</attribute>
<attribute access="read-write"
getMethod="getQueueName"
setMethod="setQueueName">
<description>Used internally. Do NOT modify.
</description>
<name>QueueName</name>
<type>java.lang.String</type>
</attribute>
<attribute access="read-write"
getMethod="getStoreScpServiceName"
setMethod="setStoreScpServiceName">
<description>Used internally. Do NOT modify.
</description>
<name>StoreScpServiceName</name>
<type>javax.management.ObjectName</type>
</attribute>
<attribute access="read-write"
getMethod="getJmsServiceName"
setMethod="setJmsServiceName">
<description>Used internally. Do NOT modify.
</description>
<name>JMSServiceName</name>
<type>javax.management.ObjectName</type>
</attribute>
<attribute access="read-write"
getMethod="getQueryRetrieveScpServiceName"
setMethod="setQueryRetrieveScpServiceName">
<description>Used internally. Do NOT modify.
</description>
<name>QueryRetrieveScpServiceName</name>
<type>javax.management.ObjectName</type>
</attribute>
&defaultAttributes;
<!-- Operations -->
&defaultOperations;
<operation impact="ACTION">
<description>Copy files of given study</description>
<name>copyFilesOfStudy</name>
<parameter>
<description>Study Instance UID</description>
<name>studyIUID</name>
<type>java.lang.String</type>
</parameter>
<return-type>boolean</return-type>
</operation>
<operation impact="ACTION">
<description>Copy files of given series</description>
<name>copyFilesOfSeries</name>
<parameter>
<description>Series Instance UID</description>
<name>seriesIUID</name>
<type>java.lang.String</type>
</parameter>
<return-type>boolean</return-type>
</operation>
<operation impact="ACTION">
<description>Schedule Filecopy Order for given IAN Dataset</description>
<name>scheduleByIAN</name>
<parameter>
<description>IAN Dataset</description>
<name>ianDataset</name>
<type>org.dcm4che.data.Dataset</type>
</parameter>
<parameter>
<description><![CDATA[Schedule delivery time as long.<br />
Note: -1 means default behaviour (after business hours configured in destination: &lt;destination&gt;!&lt;from&gt;-&lt;to&gt;).
]]></description>
<name>scheduleTime</name>
<type>long</type>
</parameter>
<return-type>boolean</return-type>
</operation>
</mbean>