awips2/edexOsgi/com.raytheon.uf.edex.metartohmdbsrv/res/spring/metartohmdb-spring.xml
2017-04-21 18:33:55 -06:00

51 lines
No EOL
2 KiB
XML

<beans xmlns="http://www.springframework.org/schema/beans"
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-3.1.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
<bean id="hmdbBloatMonitor" class="com.raytheon.uf.edex.database.health.DatabaseBloatMonitor">
<constructor-arg>
<bean class="com.raytheon.uf.edex.database.health.PostgresBloatDao">
<constructor-arg value="hmdb"/>
</bean>
</constructor-arg>
<constructor-arg ref="warningThresholds"/>
<constructor-arg ref="criticalThresholds"/>
</bean>
<bean factory-bean="dbMonitorRegistry" factory-method="registerMonitor">
<constructor-arg value="hmdbBloatMonitor" />
<constructor-arg ref="hmdbBloatMonitor" />
</bean>
<bean id="metarToHMDBPurger" class="com.raytheon.uf.edex.metartohmdb.HMDBPurger">
<property name="purgeHours" value="48" />
</bean>
<camelContext id="metarToHMDBsrv-camel"
xmlns="http://camel.apache.org/schema/spring"
errorHandlerRef="errorHandler">
<endpoint id="hmdbCron" uri="clusteredquartz://metartohmdb/hmdbpurge/?cron=${metartohmdb.cron}"/>
<!-- purge hmdb.rpt table -->
<route id="hmdbPurge">
<!-- Set the minutes explicitly -->
<from uri="hmdbCron" />
<to uri="jms-generic:queue:hmdbPurgeWork" />
</route>
<route id="hmdbPurgeWork">
<from uri="jms-generic:queue:hmdbPurgeWork" />
<doTry>
<bean ref="metarToHMDBPurger" method="purgeHMDBRpt" />
<doCatch>
<exception>java.lang.Throwable</exception>
<to uri="log:metartohmdb?level=ERROR"/>
</doCatch>
</doTry>
</route>
</camelContext>
</beans>