Difference between revisions of "MIRC Pipelines"

From MircWiki
Jump to navigation Jump to search
Line 3: Line 3:
 
MIRC is implemented as a plug-in to CTP. Most of the functionality is provided through servlets that the plug-in inserts into the CTP servlet container, but certain asynchronous functions are deployed as CTP pipelines. A CTP pipeline is a sequence of processing steps called pipeline stages. Pipelines start with one or more ImportServices that receive data objects from outside the program and queue them for processing by subsequent stages.
 
MIRC is implemented as a plug-in to CTP. Most of the functionality is provided through servlets that the plug-in inserts into the CTP servlet container, but certain asynchronous functions are deployed as CTP pipelines. A CTP pipeline is a sequence of processing steps called pipeline stages. Pipelines start with one or more ImportServices that receive data objects from outside the program and queue them for processing by subsequent stages.
  
Pipelines are defined in the <b><tt>CTP/config.xml</tt></b> file. A graphical editor for this file is planned, but for now, if you wish to reconfigure the pipelines, you must edit the file with a text editor. If you choose to do so, you may wish to refer to the CTP article that describes all the standard stages, [[CTP-The RSNA Clinical Trial Processor]].  
+
==The CTP config.xml File==
 +
Pipelines are defined in the <b><tt>CTP/config.xml</tt></b> file. A default configuration is provided when the system is first installed. Subsequent upgrades do overwrite this file. Thus, changes to this file will not be lost.
 +
 
 +
A graphical editor for this file is planned, but for now, if you wish to reconfigure the pipelines, you must edit the file with a text editor. If you choose to do so, you may wish to refer to the CTP article that describes all the standard stages, [[CTP-The RSNA Clinical Trial Processor]].  
 
:<em>Editing an XML file must be done carefully to keep it well-formed. If you are not familiar with XML, this article may be helpful, [[XML Primer]].</em>
 
:<em>Editing an XML file must be done carefully to keep it well-formed. If you are not familiar with XML, this article may be helpful, [[XML Primer]].</em>
  
Line 86: Line 89:
  
 
The meanings of all the attributes is described in the article referenced above. In this article the intent is to describe the flexibility you have in configuring this file.
 
The meanings of all the attributes is described in the article referenced above. In this article the intent is to describe the flexibility you have in configuring this file.
 +
 +
==The MIRC Plug-in==
 +
The <b><tt>root</tt></b> attribute of the MIRC <b><tt>Plugin</tt></b> element specifies the root directory under which the entire MIRC site is located. This is the parent directory, for example, of all the storage libraries that contain teaching file cases. The default configuration places this directory under the <b><tt>CTP</tt></b> directory. You can change this attribute to point to any directory visible to the system. If you move it outside the <b><tt>CTP</tt></b> directory tree, however, you must include an absolute path to the desired directory. In the <b><tt>config.xml</tt></b> file, relative paths are always relative to the <b><tt>CTP</tt></b> directory.

Revision as of 12:08, 25 April 2011

This article describes the pipelines used in the CTP MIRC plug-in to implement various DICOM and HTTP functions. It is intended for administrators configuring or upgrading their systems. This article does not apply to the Tomcat MIRC version.

MIRC is implemented as a plug-in to CTP. Most of the functionality is provided through servlets that the plug-in inserts into the CTP servlet container, but certain asynchronous functions are deployed as CTP pipelines. A CTP pipeline is a sequence of processing steps called pipeline stages. Pipelines start with one or more ImportServices that receive data objects from outside the program and queue them for processing by subsequent stages.

1 The CTP config.xml File

Pipelines are defined in the CTP/config.xml file. A default configuration is provided when the system is first installed. Subsequent upgrades do overwrite this file. Thus, changes to this file will not be lost.

A graphical editor for this file is planned, but for now, if you wish to reconfigure the pipelines, you must edit the file with a text editor. If you choose to do so, you may wish to refer to the CTP article that describes all the standard stages, CTP-The RSNA Clinical Trial Processor.

Editing an XML file must be done carefully to keep it well-formed. If you are not familiar with XML, this article may be helpful, XML Primer.

The standard MIRC config.xml file is shown below:

<Configuration>
    <Server port="80"/>
    <Plugin
        class="mirc.MIRC"
        name="MIRC Site"
        root="mircsite"/>
    <Pipeline name="File Service Pipeline">
        <ImportService
            calledAETTag="00120010"
            class="org.rsna.ctp.stdstages.DicomImportService"
            logConnections="rejected"
            name="File Service DicomImportService"
            port="1081"
            quarantine="quarantines/FileService/DicomImportService"
            root="roots/FileService/DicomImportService"/>
        <Anonymizer
            class="org.rsna.ctp.stdstages.DicomAnonymizer"
            lookupTable="scripts/lookup-table.properties"
            name="File Service DicomAnonymizer"
            quarantine="quarantines/FileService/DicomAnonymizer"
            root="roots/FileService/DicomAnonymizer"
            script="scripts/FileService/MircFileServiceAnonymizer.script"/>
        <StorageService
            class="mirc.stages.MircFileStorageService"
            fsNameTag="00120010"
            name="MircFileStorageService"
            quarantine="quarantines/FileService/MircFileStorageService"
            root="roots/FileService/MircFileStorageService"/>
    </Pipeline>
    <Pipeline name="DICOM Service Pipeline">
        <ImportService
            class="org.rsna.ctp.stdstages.DicomImportService"
            logConnections="rejected"
            name="DICOM Service DicomImportService"
            port="1082"
            quarantine="quarantines/DicomService/DicomImportService"
            root="roots/DicomService/DicomImportService"/>
        <Anonymizer
            class="org.rsna.ctp.stdstages.DicomAnonymizer"
            lookupTable="scripts/lookup-table.properties"
            name="DICOM Service DicomAnonymizer"
            quarantine="quarantines/DicomService/DicomAnonymizer"
            root="roots/DicomService/DicomAnonymizer"
            script="scripts/DicomServiceAnonymizer.script"/>
        <StorageService
            class="mirc.stages.MircDocumentStorageService"
            name="MircFileStorageService"
            ssid="ss1"
            quarantine="quarantines/DicomService/MircDocumentStorageService"
            root="roots/DicomService/MircFileStorageService"/>
    </Pipeline>
    <Pipeline name="TCE Service Pipeline">
        <ImportService
            class="org.rsna.ctp.stdstages.DicomImportService"
            logConnections="rejected"
            name="TCE Service DicomImportService"
            port="1083"
            quarantine="quarantines/TCEService/DicomImportService"
            root="roots/TCEService/DicomImportService"/>
        <ImportService
            class="org.rsna.ctp.stdstages.HttpImportService"
            logConnections="rejected"
            name="TCE Service HttpImportService"
            port="1084"
            quarantine="quarantines/TCEService/HttpImportService"
            root="roots/TCEService/HttpImportService"/>
        <StorageService
            class="mirc.stages.TCEStorageService"
            name="TCEStorageService"
            ssid="ss1"
            quarantine="quarantines/TCEService/TCEStorageService"
            root="roots/TCEService/TCEStorageService"/>
    </Pipeline>
</Configuration>

The meanings of all the attributes is described in the article referenced above. In this article the intent is to describe the flexibility you have in configuring this file.

2 The MIRC Plug-in

The root attribute of the MIRC Plugin element specifies the root directory under which the entire MIRC site is located. This is the parent directory, for example, of all the storage libraries that contain teaching file cases. The default configuration places this directory under the CTP directory. You can change this attribute to point to any directory visible to the system. If you move it outside the CTP directory tree, however, you must include an absolute path to the desired directory. In the config.xml file, relative paths are always relative to the CTP directory.