awips2/edexOsgi/com.raytheon.uf.edex.datadelivery.harvester/res/spring/harvester-datadelivery.xml
Richard Peter 5350b3eac8 Issue #2726: Edex graceful shutdown.
Refactored to use inheritance and separate logic where possible.
             Addressed comments.

Change-Id: I9e62414cd83121575bdf99a3b47466a7585bedb6

Former-commit-id: 909571ebca [formerly e4be1f24e7] [formerly dbba727f3d] [formerly 909571ebca [formerly e4be1f24e7] [formerly dbba727f3d] [formerly 17196b5dcd [formerly dbba727f3d [formerly 6e015b3f61c20635077d6e8271e9b763e5a32fe1]]]]
Former-commit-id: 17196b5dcd
Former-commit-id: b5fa843960 [formerly ff87317bd4] [formerly f202d7fc11f48792bac7d10cbb20d9ba9077aa8f [formerly 8b279966d1]]
Former-commit-id: b1349363c5b25965107de3827211c7bcc6b9e98b [formerly b3fd8e5480]
Former-commit-id: de624d87d3
2014-04-14 13:10:11 -05:00

62 lines
No EOL
2.6 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="crawlerCommunicationStrategy" class="com.raytheon.uf.edex.datadelivery.harvester.crawler.FileCommunicationStrategy" />
<bean id="MetaDataProcessor" class="com.raytheon.uf.edex.datadelivery.harvester.CrawlMetaDataHandler" depends-on="registryInit">
<constructor-arg ref="crawlerCommunicationStrategy" />
<constructor-arg ref="ProviderHandler" />
</bean>
<bean id="DataSetMetaDataPurgeLauncher" class="com.raytheon.uf.edex.datadelivery.harvester.purge.DataSetMetaDataPurgeLauncher"
factory-method="getInstance" depends-on="DbInit">
</bean>
<camelContext id="MetaData-context"
xmlns="http://camel.apache.org/schema/spring"
errorHandlerRef="errorHandler">
<endpoint id="metaDataCron" uri="quartz://datadelivery/harvester/?cron=${metadata-process.cron}"/>
<endpoint id="harvesterProcessWorkEndpoint" uri="jms-generic:queue:metaDataProcessWork?concurrentConsumers=${metadata-process.threads}&amp;threadName=harvester"/>
<endpoint id="datasetMetaDataPurgeCron" uri="quartz://datadelivery/metaDataPurge/?cron=${metadata-purge.cron}"/>
<route id="metaDataProcess">
<from uri="metaDataCron" />
<to uri="jms-generic:queue:metaDataProcessWork" />
</route>
<route id="metaDataProcessWork">
<from uri="harvesterProcessWorkEndpoint" />
<doTry>
<pipeline>
<bean ref="MetaDataProcessor" method="metaDataCheck" />
</pipeline>
<doCatch>
<exception>java.lang.Throwable</exception>
<to uri="log:metaDataProcess?level=ERROR"/>
</doCatch>
</doTry>
</route>
<route id="metaDataPurge">
<from uri="datasetMetaDataPurgeCron" />
<to uri="jms-generic:queue:metaDataPurgeWork" />
</route>
<route id="metaDataPurgeWork">
<from uri="jms-generic:queue:metaDataPurgeWork" />
<doTry>
<pipeline>
<bean ref="DataSetMetaDataPurgeLauncher" method="runPurge" />
</pipeline>
<doCatch>
<exception>java.lang.Throwable</exception>
<to uri="log:metaDataPurge?level=ERROR"/>
</doCatch>
</doTry>
</route>
</camelContext>
</beans>