<?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:aop="http://www.springframework.org/schema/aop"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">

	<!--This bean sets up property replacement so that variables can be externalized to system properties -->
	<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
	</bean>

	<!-- Beans used in test for swallowing duplicate request exception -->
	<bean id="responseErrorSectionExtractor" class="gov.va.med.cds.response.util.ResponseErrorSectionExtractor">
		<property name="severityList">
			<list value-type="java.lang.String">
				<value>errors</value>
				<value>fatalErrors</value>
				<value>warnings</value>
			</list>
		</property>
	</bean>

	<!-- CDS Aspect beans -->

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

	<!-- Configuration that does not require annotations -->
	<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>

</beans>
