awips2/edexOsgi/com.raytheon.uf.edex.purgesrv/res/spring/purge-spring.xml
Dave Hladky ba0db0d7d7 Issue #1959 MADIS implementation peice in AWIPS II baseline
Change-Id: Ice4af1f640cd9c8fb92ed129402b7300b92f65da

Former-commit-id: f833c4cc35 [formerly a770e2fb99] [formerly 0869f14084 [formerly d5ad257cb446a8605bb4df56cc1dba319f0e5abe]]
Former-commit-id: 0869f14084
Former-commit-id: d677614620
2013-05-02 11:30:32 -05:00

88 lines
No EOL
3.2 KiB
XML

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:amq="http://activemq.apache.org/schema/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
<bean id="purge" class="com.raytheon.uf.edex.purgesrv.PurgeSrv">
<constructor-arg ref = "purgeManager"/>
</bean>
<!-- Register database plugin -->
<bean id="purgeDatabaseProperties" class="com.raytheon.uf.edex.database.DatabasePluginProperties">
<property name="pluginFQN" value="com.raytheon.uf.edex.purgesrv" />
<property name="database" value="metadata" />
</bean>
<bean factory-bean="dbPluginRegistry" factory-method="register">
<constructor-arg value="com.raytheon.uf.edex.purgesrv"/>
<constructor-arg ref="purgeDatabaseProperties"/>
</bean>
<bean id="purgeOutgoing" class="com.raytheon.uf.edex.purgesrv.PurgeOutgoing" >
<property name="outgoingDirectory" value="${edex.home}/data/outgoing"/>
</bean>
<bean id="purgeLogs" class="com.raytheon.uf.edex.purgesrv.PurgeLogs" >
<property name="logDirectory" value="${edex.home}/logs"/>
</bean>
<camelContext id="clusteredpurgeContext" xmlns="http://camel.apache.org/schema/spring"
errorHandlerRef="errorHandler" autoStartup="false">
<endpoint id="purgeOutgoingCron" uri="quartz://purge/purgeOutgoingScheduled/?cron=${purge.outgoing.cron}"/>
<route id="purgeByRequest">
<from uri="jms-generic:queue:purgeRequest" />
<doTry>
<bean ref="purge" method="purge" />
<doCatch>
<exception>java.lang.Throwable</exception>
<to
uri="log:purge?level=ERROR&amp;showBody=false&amp;showCaughtException=true&amp;showStackTrace=true" />
</doCatch>
</doTry>
</route>
<!-- schedule the timer to purge outgoing directory -->
<route id="purgeOutgoingScheduled">
<from ref="purgeOutgoingCron" />
<bean ref="purgeOutgoing" method="purge" />
</route>
</camelContext>
<camelContext id="purgeContext" xmlns="http://camel.apache.org/schema/spring"
errorHandlerRef="errorHandler">
<endpoint id="purgeCron" uri="quartz://purge/purgeScheduled/?cron=${purge.cron}"/>
<endpoint id="purgeLogsCron" uri="quartz://purge/purgeLogScheduled/?cron=${purge.logs.cron}"/>
<!-- Purge on Scheduled timer -->
<route id="purgeScheduled">
<from ref="purgeCron" />
<doTry>
<bean ref="purgeManager" method="executePurge" />
<doCatch>
<exception>java.lang.Throwable</exception>
<to
uri="log:purge?level=ERROR&amp;showBody=false&amp;showCaughtException=true&amp;showStackTrace=true" />
</doCatch>
</doTry>
</route>
<!-- schedule the timer to purge log directories -->
<route id="purgeLogScheduled">
<from ref="purgeLogsCron" />
<bean ref="purgeLogs" method="purge" />
</route>
</camelContext>
<bean factory-bean="clusteredCamelContextMgr"
factory-method="register">
<constructor-arg ref="clusteredpurgeContext" />
</bean>
</beans>