<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xmlns:aop="http://www.springframework.org/schema/aop"
	xsi:schemaLocation="
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">


	<bean id="workFlow" class="gov.va.med.cds.mediator.work.RequestResponseWorkFlow">
		<property name="wsnInputMessage" value="INPUT-MESSAGE" />
		<property name="wsnPersistOriginal" value="PERSIST-ORIGINAL" />
		<property name="wsnOutputMessage" value="OUTPUT-MESSAGE" />
		<property name="work">
			<list>
				<!-- Work responsible for creating and registering the HL7 Support instance in the Work State. -->
				<ref bean="registerHL7SupportWork" />

				<!-- Work that reads the incoming messages sending application and stores it in the Work State. -->
				<ref bean="registerHL7DataWithWorkStateWork" />

				<!-- Work responsible for determining whether the incoming request is for a read or a write. -->
				<ref bean="stringComparisonConditionalForkingWorkFlow" />
			</list>
		</property>
	</bean>


	<bean id="registerHL7SupportWork" class="gov.va.med.cds.mediator.work.hapi.RegisterHL7SupportWork">
		<property name="wsnMessage" value="INPUT-MESSAGE" />
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnMsgCtrlId" value="MSG-CTRL-ID" />
	</bean>


	<bean id="registerHL7DataWithWorkStateWork" class="gov.va.med.cds.mediator.work.hapi.RegisterHL7DataWithWorkStateWork">
		<property name="terserPath" value="/MSH-3" />
		<property name="wsnDataName" value="SENDING-APPLICATION" />
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
	</bean>


	<bean id="stringComparisonConditionalForkingWorkFlow" class="gov.va.med.cds.mediator.work.StringComparisonConditionalForkingWorkFlow">
		<property name="comparisonType" value="ENDS_WITH" />
		<property name="compareWithString" value="SENDER" />
		<property name="wsnWorkStateToCompare" value="SENDING-APPLICATION" />
		<property name="trueFork">
			<list>
				<!-- Read work controller. -->
				<!-- Get the start time and stick it in the workflow data. -->
				<ref bean="readRequestAuditLogStartWork" />

				<!-- Work responsible for converting the HL7-XML into FILTER XML and storing it in the Work State. -->
				<ref bean="hl7XmlToFilterXmlWork" />

				<!-- Read work controller. -->
				<ref bean="clinicalDataReadMessageWork" />

				<!-- Transform Read response back to ER7 encoded HL7 for legacy clients. -->
				<ref bean="vhimXmlReadResponseToHl7Er7Work" />

				<!-- Work responsible for auditing the read request to the CDS Audit Log. -->
				<ref bean="readRequestAuditLogEndWork" />
			</list>
		</property>
		<property name="falseFork">
			<list>
				<!-- Write work controller. -->
				<!-- Work responsible for converting the HL7-XML into VHIM and storing it in the Work State. -->
				<ref bean="hL7XmlToVhimCreateXmlWork" />

				<!-- Persists audit clob to CDS -->
				<ref bean="clinicalDataAuditClobWork" />

				<!-- Call CDS to create the clinical data. -->
				<ref bean="clinicalDataCreateMessageWork" />

				<!-- Transform write ack response back to an ER7 encoded Ack for legacy clients. -->
				<ref bean="vhimXmlWriteAckToEr7Work" />
			</list>
		</property>
	</bean>


	<bean id="hL7XmlToVhimCreateXmlWork" class="gov.va.med.cds.mediator.work.hapi.HL7XmlToVhimCreateXmlWork">
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnTemplateInformation" value="TEMPLATE-INFO" />
		<property name="wsnVhimRequest" value="VHIM-REQUEST" />
		<property name="templateInformationMap" ref="sendingApplicationToTemplateInfoMap" />
		<property name="xsltHelper" ref="xsltHelper" />
		<property name="validator" ref="templateValidator" />
	</bean>


	<bean id="hl7XmlToFilterXmlWork" class="gov.va.med.cds.mediator.work.hapi.HL7XmlToFilterXmlWork">
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnVhimRequest" value="VHIM-REQUEST" />
		<property name="wsnFilterInformation" value="FILTER-INFO" />
		<property name="templateInformationMap" ref="sendingApplicationToTemplateInfoMap" />
		<property name="xsltHelper" ref="xsltHelper" />
		<property name="whatCodeToFilterInformationMap" ref="whatCodeToFilterInformationMap" />
	</bean>


	<bean id="clinicalDataCreateMessageWork" class="gov.va.med.cds.mediator.work.cds.ClinicalDataCreateMessageWork">
		<property name="cdsSynchronous" ref="cdsServiceExt" />
		<property name="templateInformationMap" ref="sendingApplicationToTemplateInfoMap" />
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnCdsVhimRequest" value="VHIM-REQUEST" />
		<property name="wsnCdsVhimResponse" value="OUTPUT-MESSAGE" />
		<property name="wsnClobNOTPersistedFlag" value="AUDIT_CLOB_NOT_PERSISTED" />
		<property name="auditVhimRequest" value="false" />
	</bean>


	<bean id="clinicalDataReadMessageWork" class="gov.va.med.cds.mediator.work.cds.ClinicalDataReadMessageWork">
		<property name="cdsSynchronous" ref="cdsServiceExt" />
		<property name="wsnFilterInformation" value="FILTER-INFO" />
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnCdsVhimRequest" value="VHIM-REQUEST" />
		<property name="wsnCdsVhimResponse" value="VHIM-RESPONSE" />
	</bean>


	<bean id="vhimXmlReadResponseToHl7Er7Work" class="gov.va.med.cds.mediator.work.hapi.VhimXmlReadResponseToHl7Er7Work">
		<property name="wsnCdsVhimReadResponse" value="VHIM-RESPONSE" />
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnFilterInformation" value="FILTER-INFO" />
		<property name="wsnHl7Er7Response" value="OUTPUT-MESSAGE" />
	</bean>


	<bean id="vhimXmlWriteAckToEr7Work" class="gov.va.med.cds.mediator.work.ApplicationAcknowledgementWork">
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnCdsVhimResponse" value="OUTPUT-MESSAGE" />
		<property name="clientProxiesMap" ref="clientProxiesMap" />
		<property name="hl7AuditDaoMap">
			<map>
				<entry key="VA_DATA" value-ref="vaHibernateHl7AuditDao" />
				<entry key="DOD_DATA" value-ref="dodHibernateHl7AuditDao" />
			</map>
		</property>
		<property name="ignoreAppAckSendingApps">
			<list>
				<value>HTAPPL-CENSUS</value>
			</list>
		</property>
	</bean>


	<bean id="readRequestAuditLogStartWork" class="gov.va.med.cds.mediator.work.ReadRequestAuditLogStartWork">
		<property name="wsnStartTimeInMillis" value="START-TIME" />
	</bean>


	<bean id="readRequestAuditLogEndWork" class="gov.va.med.cds.mediator.work.ReadRequestAuditLogEndWork">
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="wsnFilterInformation" value="FILTER-INFO" />
		<property name="wsnMessage" value="INPUT-MESSAGE" />
		<property name="wsnCdsLegacyResponse" value="OUTPUT-MESSAGE" />
		<property name="wsnStartTimeInMillis" value="START-TIME" />
		<property name="auditLogPersistenceManager" ref="auditLogPersistenceManager" />
	</bean>


	<bean id="clinicalDataAuditClobWork" class="gov.va.med.cds.mediator.work.AuditClobWork">
		<property name="wsnMessage" value="INPUT-MESSAGE" />
		<property name="wsnPersistFlag" value="PERSIST-ORIGINAL" />
		<property name="wsnHl7Support" value="HL7-SUPPORT" />
		<property name="cdsAuditClobStore" ref="cdsAuditClobStore" />
		<property name="wsnClobNOTPersistedFlag" value="AUDIT_CLOB_NOT_PERSISTED" />
		<property name="wsnTemplateInformation" value="TEMPLATE-INFO" />
	</bean>


	<bean id="cdsAuditClobStore" class="gov.va.med.cds.audit.persistence.hibernate.PersistAuditStore">
		<property name="hibernateTemplate" ref="auditLogHibernateTemplate" />
	</bean>


	<bean id="messageMediator" class="gov.va.med.cds.mediator.MessageMediator">
		<property name="messageProcessor" ref="workFlow" />
	</bean>


	<util:map id="sendingApplicationToTemplateInfoMap">
		<entry key="HDRPRES">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToPharmacy.xsl" />
				<property name="templateName" value="PharmacyCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HDRPREF">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToPharmacy.xsl" />
				<property name="templateName" value="PharmacyCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HDRPPAR">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToPharmacy.xsl" />
				<property name="templateName" value="PharmacyCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HDRVTLS">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToVitalSigns.xsl" />
				<property name="templateName" value="VitalsignsCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HDRALGY">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToAllergyIntoleranceCondition.xsl" />
				<property name="templateName" value="IntoleranceConditionCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HDRADAS">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToAllergyAssement.xsl" />
				<property name="templateName" value="AllergyAssessmentCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HDRVTLS-HTH">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToHTH.xsl" />
				<property name="templateName" value="VitalsignsCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="LA7LAB">

			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToLabChemHem.xsl" />
				<property name="templateName" value="LabCreateOrUpdate40060" />
			</bean>
		</entry>
		<entry key="HTAPPL-ADL">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToADLSurveyCreate40024.xsl" />
				<property name="templateName" value="ADLSurveyCreate40024" />
			</bean>
		</entry>
		<entry key="HTAPPL-PS1.0">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToPSSurveyCreate40023.xsl" />
				<property name="templateName" value="PSSurveyCreate40023" />
			</bean>
		</entry>
		<entry key="HTAPPL-PS2.0">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToPSSurveyCreate40025.xsl" />
				<property name="templateName" value="PSSurveyCreate40025" />
			</bean>
		</entry>
		<entry key="HTAPPL-DMP">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToDMPSurveyCreate40024.xsl" />
				<property name="templateName" value="DMPSurveyCreate40024" />
			</bean>
		</entry>
		<entry key="HTAPPL-CENSUS">
			<bean class="gov.va.med.cds.mediator.work.TemplateInformation">
				<property name="stylesheet" value="HL7ToCensusSurveyCreate40024.xsl" />
				<property name="templateName" value="CensusSurveyCreate40024" />
			</bean>
		</entry>
	</util:map>


	<util:map id="whatCodeToFilterInformationMap">
		<entry key="CHDR_ALGY">
			<bean class="gov.va.med.cds.mediator.work.FilterInformation">
				<property name="filterId" value="CHDR_ALLERGY_SINGLE_PATIENT_FILTER" />
				<property name="templateId" value="AllergiesRead40010" />
				<property name="hl7ToVhimFilterTransform" value="ChdrAllergySinglePatientFilter.xsl" />
				<property name="responseFormatter" ref="chdrAllergyBatchResponseFormatter" />
			</bean>
		</entry>
		<entry key="CHDR_RXOP">
			<bean class="gov.va.med.cds.mediator.work.FilterInformation">
				<property name="filterId" value="CHDR_RX_SINGLE_PATIENT_FILTER" />
				<property name="templateId" value="PharmacyRead40010" />
				<property name="hl7ToVhimFilterTransform" value="ChdrRxSinglePatientFilter.xsl" />
				<property name="responseFormatter" ref="chdrPharmacyBatchResponseFormatter" />
			</bean>
		</entry>
		<entry key="CHDR_LAB">
			<bean class="gov.va.med.cds.mediator.work.FilterInformation">
				<property name="filterId" value="CHDR_LAB_SINGLE_PATIENT_FILTER" />
				<property name="templateId" value="LabRead40010" />
				<property name="hl7ToVhimFilterTransform" value="ChdrLabSinglePatientFilter.xsl" />
				<property name="responseFormatter" ref="chdrLabBatchResponseFormatter" />
			</bean>
		</entry>
		<entry key="OC_AL">
			<bean class="gov.va.med.cds.mediator.work.FilterInformation">
				<property name="filterId" value="ALLERGY_SINGLE_PATIENT_ALL_DATA_FILTER" />
				<property name="templateId" value="AllergyRead40010" />
				<property name="hl7ToVhimFilterTransform" value="AllergySinglePatientAllDataFilter.xsl" />
				<property name="responseFormatter" ref="chdrAllergyBatchResponseFormatter" />
			</bean>
		</entry>
		<entry key="OC_RXOP">
			<bean class="gov.va.med.cds.mediator.work.FilterInformation">
				<property name="filterId" value="RX_SINGLE_PATIENT_ALL_DATA_FILTER" />
				<property name="templateId" value="PharmacyRead40010" />
				<property name="hl7ToVhimFilterTransform" value="RxSinglePatientAllDataFilter.xsl" />
				<property name="responseFormatter" ref="chdrPharmacyBatchResponseFormatter" />
			</bean>
		</entry>
	</util:map>


	<bean id="abstractXsltToHl7ResponseFormatter" abstract="true" class="gov.va.med.cds.mediator.formatter.AbstractXsltToHl7ResponseFormatter" parent="abstractXsltResponseFormatter">
		<property name="hl7Utility" ref="hl7Utility" />
	</bean>


	<bean id="abstractXsltResponseFormatter" abstract="true" class="gov.va.med.cds.mediator.formatter.AbstractXsltResponseFormatter">
		<property name="xsltHelper" ref="xsltHelper" />
	</bean>


	<bean id="chdrAllergyBatchResponseFormatter" class="gov.va.med.cds.mediator.formatter.ChdrBatchResponseFormatter" parent="abstractXsltToHl7ResponseFormatter">
		<property name="stylesheet" value="VHIMIntoleranceConditionToHL7.xsl" />
	</bean>


	<bean id="chdrPharmacyBatchResponseFormatter" class="gov.va.med.cds.mediator.formatter.ChdrBatchResponseFormatter" parent="abstractXsltToHl7ResponseFormatter">
		<property name="stylesheet" value="VHIMPharmacyToHL7.xsl" />
	</bean>


	<bean id="chdrLabBatchResponseFormatter" class="gov.va.med.cds.mediator.formatter.ChdrBatchResponseFormatter" parent="abstractXsltToHl7ResponseFormatter">
		<property name="stylesheet" value="VHIMLabChemHemToHL7.xsl" />
	</bean>


	<bean id="templateValidator" class="gov.va.med.cds.mediator.work.TemplateValidator">
		<constructor-arg>
			<list>
				<value>DMPSurveyCreate40024</value>
				<value>ADLSurveyCreate40024</value>
				<value>PSSurveyCreate40023</value>
				<value>PSSurveyCreate40025</value>
				<value>CensusSurveyCreate40024</value>
			</list>
		</constructor-arg>
	</bean>


	<util:map id="clientProxiesMap">
		<entry key="HDRVTLS-HTH" value-ref="dnsSocketProxy" />
		<entry key="HTAPPL-ADL" value-ref="dnsSocketProxy" />
		<entry key="HTAPPL-PS1.0" value-ref="dnsSocketProxy" />
		<entry key="HTAPPL-PS2.0" value-ref="dnsSocketProxy" />
		<entry key="HTAPPL-DMP" value-ref="dnsSocketProxy" />
		<entry key="HTAPPL-CENSUS" value-ref="dnsSocketProxy" />
	</util:map>


	<bean id="getReadWriteChannel" class="gov.va.med.cds.client.proxy.GetReadWriteChannel" />


	<bean id="abstractMllpSocketBasedClientProxy" class="gov.va.med.cds.client.proxy.AbstractMllpSocketBasedClientProxy" abstract="true">
		<property name="blockingConnectionFactory" ref="blockingConnectionFactory" />
		<property name="port" value="5121" />
		<property name="getReadWriteChannel" ref="getReadWriteChannel" />
	</bean>


	<bean id="dnsSocketProxy" class="gov.va.med.cds.client.proxy.MllpDnsSocketBasedClientProxy" parent="abstractMllpSocketBasedClientProxy" />


	<bean id="blockingConnectionFactory" class="gov.va.med.cds.client.proxy.BlockingConnectionFactory">
		<property name="connectionTimeoutMillis" value="10000" />
		<property name="readTimeoutMillis" value="10000" />
		<property name="idleTimeoutMillis" value="10000" />
	</bean>


	<bean id="springContextAccessor" class="gov.va.med.cds.mediator.config.SpringApplicationContextAccessorFactory" factory-method="getInstance" lazy-init="false" />


	<util:map id="facilityIdMap" map-class="java.util.HashMap">
		<entry key="521" value="BIRMINGHAMURL        " />
		<entry key="619" value="CENTRAL-ALABAMAURL        " />
		<entry key="679" value="TUSCALOOSAURL        " />
		<entry key="463" value="ANCHORAGEURL        " />
		<entry key="644" value="PHOENIXURL        " />
		<entry key="649" value="PRESCOTTURL        " />
		<entry key="678" value="TUCSONURL        " />
		<entry key="564" value="FAYETTVL-ARURL        " />
		<entry key="598" value="LITTLE-ROCKURL        " />
		<entry key="570" value="FRESNOURL        " />
		<entry key="605" value="LOMA-LINDAURL        " />
		<entry key="600" value="LONG-BEACHURL        " />
		<entry key="612" value="MARTINEZURL        " />
		<entry key="640" value="PALO-ALTOURL        " />
		<entry key="664" value="SAN-DIEGOURL        " />
		<entry key="662" value="SANFRANCISCOURL        " />
		<entry key="691" value="WEST-LAURL        " />
		<entry key="554" value="DENVERURL        " />
		<entry key="575" value="GRAND-JUNCTURL        " />
		<entry key="689" value="WEST-HAVENURL        " />
		<entry key="460" value="WILMINGTONURL        " />
		<entry key="516" value="BAY-PINESURL        " />
		<entry key="546" value="MIAMIURL        " />
		<entry key="573" value="NORTH-FLORIDAURL        " />
		<entry key="673" value="TAMPAURL        " />
		<entry key="548" value="WEST-PALMURL        " />
		<entry key="508" value="ATLANTAURL        " />
		<entry key="509" value="AUGUSTAURL        " />
		<entry key="557" value="DUBLINURL        " />
		<entry key="459" value="HONOLULUURL        " />
		<entry key="531" value="BOISEURL        " />
		<entry key="537" value="CHICAGO-WESTURL        " />
		<entry key="550" value="DANVILLEURL        " />
		<entry key="578" value="HINESURL        " />
		<entry key="556" value="N-CHICAGOURL        " />
		<entry key="610" value="NORTHERN-INDIANAURL        " />
		<entry key="583" value="INDIANAPOLISURL        " />
		<entry key="596" value="LEXINGTONURL        " />
		<entry key="603" value="LOUISVILLEURL        " />
		<entry key="502" value="ALEXANDRIAURL        " />
		<entry key="629" value="NEW-ORLEANSURL        " />
		<entry key="667" value="SHREVEPORTURL        " />
		<entry key="402" value="TOGUSURL        " />
		<entry key="512" value="BALTIMOREURL        " />
		<entry key="518" value="BEDFORD.VA.GOV" />
		<entry key="523" value="BOSTONURL        " />
		<entry key="631" value="NORTHAMPTONURL        " />
		<entry key="506" value="ANN-ARBORURL        " />
		<entry key="515" value="BATTLE-CREEKURL        " />
		<entry key="553" value="DETROITURL        " />
		<entry key="585" value="IRON-MTNURL        " />
		<entry key="655" value="SAGINAWURL        " />
		<entry key="618" value="MINNEAPOLISURL        " />
		<entry key="656" value="ST-CLOUDURL        " />
		<entry key="520" value="BILOXIURL        " />
		<entry key="586" value="JACKSONURL        " />
		<entry key="589" value="KANSAS-CITYURL        " />
		<entry key="657" value="ST-LOUISURL        " />
		<entry key="436" value="MONTANAURL        " />
		<entry key="636" value="CENTRAL-PLAINSURL        " />
		<entry key="593" value="LAS-VEGASURL        " />
		<entry key="654" value="RENOURL        " />
		<entry key="608" value="MANCHESTERURL        " />
		<entry key="561" value="EAST-ORANGEURL        " />
		<entry key="501" value="ALBUQUERQUEURL        " />
		<entry key="526" value="BRONXURL        " />
		<entry key="620" value="MONTROSEURL        " />
		<entry key="632" value="NORTHPORTURL        " />
		<entry key="630" value="NY-HARBORURL        " />
		<entry key="528" value="V02URL        " />
		<entry key="637" value="ASHEVILLEURL        " />
		<entry key="558" value="DURHAMURL        " />
		<entry key="565" value="FAYETTVL-NCURL        " />
		<entry key="659" value="SALISBURYURL        " />
		<entry key="437" value="FARGOURL        " />
		<entry key="538" value="CHILLICOTHEURL        " />
		<entry key="539" value="CINCINNATIURL        " />
		<entry key="541" value="CLEVELANDURL        " />
		<entry key="757" value="COLUMBUSURL        " />
		<entry key="552" value="DAYTONURL        " />
		<entry key="623" value="MUSKOGEEURL        " />
		<entry key="635" value="OKLAHOMAURL        " />
		<entry key="648" value="PORTLANDURL        " />
		<entry key="653" value="ROSEBURGURL        " />
		<entry key="692" value="WHITE-CITYURL        " />
		<entry key="503" value="ALTOONAURL        " />
		<entry key="529" value="BUTLERURL        " />
		<entry key="542" value="COATESVILLEURL        " />
		<entry key="562" value="ERIEURL        " />
		<entry key="595" value="LEBANONURL        " />
		<entry key="642" value="PHILADELPHIAURL        " />
		<entry key="646" value="PITTSBURGHURL        " />
		<entry key="693" value="WILKES-BARREURL        " />
		<entry key="650" value="PROVIDENCEURL        " />
		<entry key="534" value="CHARLESTONURL        " />
		<entry key="544" value="COLUMBIA-SCURL        " />
		<entry key="568" value="BLACK-HILLSURL        " />
		<entry key="438" value="SIOUX-FALLSURL        " />
		<entry key="614" value="MEMPHISURL        " />
		<entry key="621" value="MTN-HOMEURL        " />
		<entry key="626" value="TENNESSEEVALLEYURL        " />
		<entry key="504" value="AMARILLOURL        " />
		<entry key="519" value="BIG-SPRINGURL        " />
		<entry key="674" value="CENTRAL-TEXASURL        " />
		<entry key="549" value="DALLASURL        " />
		<entry key="756" value="EL-PASOURL        " />
		<entry key="580" value="HOUSTONURL        " />
		<entry key="671" value="SAN-ANTONIOURL        " />
		<entry key="660" value="SALT-LAKEURL        " />
		<entry key="405" value="WHITE-RIVERURL        " />
		<entry key="590" value="HAMPTONURL        " />
		<entry key="652" value="RICHMONDURL        " />
		<entry key="658" value="SALEMURL        " />
		<entry key="663" value="PUGET-SOUNDURL        " />
		<entry key="668" value="SPOKANEURL        " />
		<entry key="687" value="WALLA-WALLAURL        " />
		<entry key="517" value="BECKLEYURL        " />
		<entry key="540" value="CLARKSBURGURL        " />
		<entry key="581" value="HUNTINGTONURL        " />
		<entry key="613" value="MARTINSBURGURL        " />
		<entry key="607" value="MADISONURL        " />
		<entry key="695" value="MILWAUKEEURL        " />
		<entry key="676" value="TOMAHURL        " />
		<entry key="442" value="DNS ENNEURL        " />
		<entry key="666" value="SHERIDANURL        " />
		<entry key="688" value="WASHINGTONURL        " />
		<entry key="358" value="MANILAURL        " />
		<entry key="672" value="SAN-JUANURL        " />
		<entry key="675" value="ORLANDOURL        " />
		<entry key="992" value="DNS                URL        " />
		<entry key="993" value="CHYETS.DNS        URL        " />
		<entry key="0" value="DNS .VITERION.CCURL        " />
	</util:map>



	<bean id="appAckMBeanExporter" class="org.springframework.jmx.export.MBeanExporter" lazy-init="false">
		<property name="beans">
			<map>
				<entry key="gov.va.med.cds.appack:name=cds-application-acknowledgement-processor" value-ref="vhimXmlWriteAckToEr7Work" />
			</map>
		</property>
		<property name="assembler">
			<bean class="org.springframework.jmx.export.assembler.InterfaceBasedMBeanInfoAssembler">
				<property name="interfaceMappings">
					<props>
						<prop key="gov.va.med.cds.appack:name=cds-application-acknowledgement-processor">
							gov.va.med.cds.mediator.work.ApplicationAcknowledgementMBeanInterface
						</prop>
					</props>
				</property>
			</bean>
		</property>
		<property name="server" ref="mbeanServer" />
		<property name="registrationBehaviorName" value="REGISTRATION_REPLACE_EXISTING" />
	</bean>


	<bean id="responseErrorSectionExtractor" class="gov.va.med.cds.response.util.ResponseErrorSectionExtractor">
		<property name="severityList">
			<list>
				<value>errors</value>
				<value>fatalErrors</value>
				<value>warnings</value>
			</list>
		</property>
	</bean>


	<!--Start HL7Utility.createMessageControlId( )configuration settings -->

	<bean id="hl7Utility" class="gov.va.med.cds.hapi.HL7Utility">
		<property name="jdbcTemplateForMessageControlId" ref="jdbcTemplateForMessageControlId" />
		<property name="facilityIdMap" ref="facilityIdMap" />
	</bean>

	<!--End HL7Utility.createMessageControlId( )configuration settings -->


	<!-- Aspect definitions -->

	<bean id="duplicateLogAndSwallowAspect" class="gov.va.med.cds.aspects.exception.SwallowAspect">
		<property name="criteria" value="ORA-00001" /> <!-- Unique constraint violation -->
		<property name="criteriaType" value="MESSAGE" />
	</bean>


	<aop:config>
		<aop:aspect ref="duplicateLogAndSwallowAspect">
			<aop:pointcut id="executionOfErrorCheck" expression="execution(* *..*.response.util.ResponseErrorSectionExtractor.check*(..))" />
			<aop:around pointcut-ref="executionOfErrorCheck" method="doAround" />
		</aop:aspect>
	</aop:config>


	<bean id="loggingFilter" class="org.apache.mina.filter.logging.LoggingFilter" />


	<bean id="textLineCodecFilter" class="org.apache.mina.filter.codec.ProtocolCodecFilter">
		<constructor-arg ref="textLineCodec" />
	</bean>


	<bean id="textLineCodec" class="org.apache.mina.filter.codec.textline.TextLineCodecFactory">
		<constructor-arg>
			<bean class="java.nio.charset.Charset" factory-method="forName">
				<constructor-arg type="java.lang.String" value="UTF-8" />
			</bean>
		</constructor-arg>
	</bean>


	<bean id="textLineCodec-setDecoderMaxLineLength" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
		<property name="targetObject" ref="textLineCodec" />
		<property name="targetMethod" value="setDecoderMaxLineLength" />
		<property name="arguments">
			<list>
				<value>2147483647</value>
			</list>
		</property>
	</bean>


	<bean id="filterChainBuilder" class="org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder">
		<property name="filters">
			<map>
				<entry key="loggingFilter" value-ref="loggingFilter" />
				<entry key="textLineCodecFilter" value-ref="textLineCodecFilter" />
			</map>
		</property>
	</bean>


	<bean id="socketAddress" class="java.net.InetSocketAddress">
		<constructor-arg>
			<bean class="java.lang.Integer" factory-method="parseInt">
				<constructor-arg type="java.lang.String" value="5121" />
			</bean>
		</constructor-arg>
	</bean>


	<bean id="acknowledgementHandler" class="gov.va.med.cds.client.proxy.AcknowledgementHandler" />


	<bean id="socketConnector" class="org.apache.mina.transport.socket.nio.NioSocketConnector">
		<property name="handler" ref="acknowledgementHandler" />
		<property name="filterChainBuilder" ref="filterChainBuilder" />
	</bean>

	<!-- consumed by the quartz job to send acks after the census transformation -->
	<bean id="censusAcknowledgementWork" class="gov.va.med.cds.scheduler.CensusAcknowledgementWork">
		<!-- <property name="wsnHl7Support" value="HL7-SUPPORT" /> -->
		<property name="clientProxiesMap" ref="clientProxiesMap" />
		<property name="hl7AuditDaoMap">
			<map>
				<entry key="VA_DATA" value-ref="vaHibernateHl7AuditDao" />
				<entry key="DOD_DATA" value-ref="dodHibernateHl7AuditDao" />
			</map>
		</property>
	</bean>

</beans>

