2012-01-06 08:55:05 -06:00
|
|
|
<beans xmlns="http://www.springframework.org/schema/beans"
|
2013-06-10 15:17:17 -04:00
|
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
2013-06-28 09:46:25 -04:00
|
|
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
|
2012-01-06 08:55:05 -06:00
|
|
|
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
|
|
|
|
|
|
|
|
<bean id="textDecoder" class="com.raytheon.edex.plugin.text.TextDecoder">
|
|
|
|
<property name="pluginName" value="text" />
|
|
|
|
<property name="decoderMode" value="STD" />
|
|
|
|
</bean>
|
|
|
|
|
|
|
|
<bean id="textDistRegistry" factory-bean="distributionSrv"
|
|
|
|
factory-method="register">
|
|
|
|
<constructor-arg value="text" />
|
2013-10-28 10:55:16 -04:00
|
|
|
<constructor-arg value="jms-dist:queue:Ingest.Text"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</bean>
|
|
|
|
|
|
|
|
<bean id="textHandleoupDistRegistry" factory-bean="handleoupDistributionSrv"
|
|
|
|
factory-method="register">
|
|
|
|
<constructor-arg value="text" />
|
2013-10-28 10:55:16 -04:00
|
|
|
<constructor-arg value="jms-dist:queue:Ingest.Text"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</bean>
|
|
|
|
|
|
|
|
<!-- define the bean that handles automatic faxing of products. -->
|
|
|
|
<bean id="autoFaxManager" class="com.raytheon.edex.plugin.text.subscription.AutoFaxManager">
|
|
|
|
</bean>
|
|
|
|
|
|
|
|
<!-- verify text product info for site, spawns in separate thread to not delay start up -->
|
|
|
|
<bean id="textVersionPurge" class="com.raytheon.edex.plugin.text.TextVersionPurge" depends-on="textRegistered"/>
|
|
|
|
|
|
|
|
<bean id="jms-text" class="org.apache.camel.component.jms.JmsComponent">
|
2013-10-28 10:55:16 -04:00
|
|
|
<constructor-arg ref="jmsTextConfig" />
|
2012-01-06 08:55:05 -06:00
|
|
|
<property name="taskExecutor" ref="textThreadPool" />
|
|
|
|
</bean>
|
2013-10-28 10:55:16 -04:00
|
|
|
<bean id="jmsTextConfig" class="org.apache.camel.component.jms.JmsConfiguration"
|
|
|
|
factory-bean="jmsDurableConfig" factory-method="copy"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
<bean id="textThreadPool"
|
|
|
|
class="com.raytheon.uf.edex.esb.camel.spring.JmsThreadPoolTaskExecutor">
|
|
|
|
<property name="corePoolSize" value="2" />
|
|
|
|
<property name="maxPoolSize" value="2" />
|
|
|
|
</bean>
|
2012-08-21 15:27:03 -05:00
|
|
|
|
|
|
|
<!-- Special handler for text plugin archives that bases filenames off
|
|
|
|
creation time-->
|
|
|
|
<bean id="textArchiveNamer" class="com.raytheon.edex.plugin.text.maintenance.archiver.TextArchiveFileNameFormatter" />
|
|
|
|
<bean factory-bean="databaseArchiver" factory-method="registerPluginArchiveFormatter" depends-on="databaseArchiver">
|
|
|
|
<constructor-arg value="text" />
|
|
|
|
<constructor-arg ref="textArchiveNamer" />
|
|
|
|
</bean>
|
2012-01-06 08:55:05 -06:00
|
|
|
|
2014-01-06 14:02:30 -05:00
|
|
|
<bean factory-bean="databaseArchiver" factory-method="registerPluginBatchSize" depends-on="databaseArchiver">
|
|
|
|
<constructor-arg value="text" />
|
|
|
|
<constructor-arg value="1000" type="java.lang.Integer"/>
|
|
|
|
</bean>
|
2012-01-06 08:55:05 -06:00
|
|
|
|
|
|
|
<camelContext id="text-camel"
|
|
|
|
xmlns="http://camel.apache.org/schema/spring"
|
|
|
|
errorHandlerRef="errorHandler">
|
|
|
|
<!--
|
|
|
|
<endpoint id="textFileEndpoint" uri="file:${edex.home}/data/sbn/text?noop=true&idempotent=false" />
|
|
|
|
|
|
|
|
<route id="textFileConsumerRoute">
|
|
|
|
<from ref="textFileEndpoint" />
|
|
|
|
<bean ref="fileToString" />
|
|
|
|
<setHeader headerName="pluginName">
|
|
|
|
<constant>text</constant>
|
|
|
|
</setHeader>
|
2013-10-28 10:55:16 -04:00
|
|
|
<to uri="jms-durable:queue:Ingest.Text" />
|
2012-01-06 08:55:05 -06:00
|
|
|
</route>
|
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
|
|
|
Text routes
|
|
|
|
-->
|
|
|
|
<route id="textDirectDecodedIngestRoute">
|
2013-06-10 15:17:17 -04:00
|
|
|
<from uri="direct-vm:textDirectDecodedIngestRoute" />
|
2012-01-06 08:55:05 -06:00
|
|
|
<setHeader headerName="pluginName">
|
|
|
|
<constant>text</constant>
|
|
|
|
</setHeader>
|
|
|
|
<doTry>
|
|
|
|
<pipeline>
|
|
|
|
<bean ref="textDecoder" method="writeTextProduct" />
|
|
|
|
<bean ref="processUtil" method="log"/>
|
|
|
|
<multicast>
|
|
|
|
<to uri="direct:textToWatchWarn"/>
|
|
|
|
<to uri="direct:textSerializeRoute" />
|
|
|
|
<to uri="direct:textPurgeAccumulate" />
|
|
|
|
<to uri="vm:autoFaxRoute" />
|
|
|
|
</multicast>
|
|
|
|
</pipeline>
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:text?level=INFO"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
|
|
|
|
<route id="textDirectUndecodedIngestRoute">
|
2013-06-10 15:17:17 -04:00
|
|
|
<from uri="direct-vm:textDirectUndecodedIngestRoute" />
|
2012-01-06 08:55:05 -06:00
|
|
|
<setHeader headerName="pluginName">
|
|
|
|
<constant>text</constant>
|
|
|
|
</setHeader>
|
|
|
|
<doTry>
|
|
|
|
<pipeline>
|
|
|
|
<bean ref="textDecoder" method="decode" />
|
|
|
|
<bean ref="processUtil" method="log"/>
|
|
|
|
<multicast>
|
|
|
|
<to uri="direct:textToWatchWarn"/>
|
|
|
|
<to uri="direct:textSerializeRoute" />
|
|
|
|
<to uri="direct:textPurgeAccumulate" />
|
|
|
|
<to uri="vm:autoFaxRoute" />
|
|
|
|
</multicast>
|
|
|
|
</pipeline>
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:text?level=INFO"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
|
|
|
|
<route id="textUndecodedIngestRoute">
|
2013-10-28 10:55:16 -04:00
|
|
|
<from uri="jms-text:queue:Ingest.Text?concurrentConsumers=2" />
|
2012-01-06 08:55:05 -06:00
|
|
|
<setHeader headerName="pluginName">
|
|
|
|
<constant>text</constant>
|
|
|
|
</setHeader>
|
|
|
|
<doTry>
|
|
|
|
<pipeline>
|
|
|
|
<bean ref="stringToFile" />
|
|
|
|
<bean ref="textDecoder" method="decodeFile" />
|
|
|
|
<bean ref="processUtil" method="log"/>
|
|
|
|
<multicast>
|
|
|
|
<!-- This route needs to go to Mark's -->
|
|
|
|
<to uri="direct:textToWatchWarn"/>
|
|
|
|
<to uri="direct:textSerializeRoute" />
|
|
|
|
<to uri="direct:textPurgeAccumulate" />
|
|
|
|
<to uri="vm:autoFaxRoute" />
|
|
|
|
</multicast>
|
|
|
|
</pipeline>
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:text?level=INFO"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
|
|
|
|
<route id="textToWatchWarnRoute">
|
|
|
|
<from uri="direct:textToWatchWarn" />
|
|
|
|
<bean ref="textDecoder" method="transformToProductIds" />
|
2013-10-28 10:55:16 -04:00
|
|
|
<to uri="jms-text:queue:watchwarn" />
|
2012-01-06 08:55:05 -06:00
|
|
|
</route>
|
|
|
|
|
|
|
|
<route id="textSerializationRoute">
|
|
|
|
<from uri="direct:textSerializeRoute" />
|
|
|
|
<split streaming="true" >
|
|
|
|
<method bean="textDecoder" method="separator" />
|
|
|
|
<bean ref="textDecoder" method="transformToSimpleString" />
|
|
|
|
<bean ref="serializationUtil" method="transformToThrift"/>
|
2013-10-28 10:55:16 -04:00
|
|
|
<to uri="jms-generic:topic:edex.alarms.msg?timeToLive=60000" />
|
2012-01-06 08:55:05 -06:00
|
|
|
</split>
|
|
|
|
</route>
|
|
|
|
|
|
|
|
<route id="textPurgeAccumulateRoute">
|
|
|
|
<from uri="direct:textPurgeAccumulate" />
|
|
|
|
<bean ref="textVersionPurge" method="accumulateAfosIdToPurge" />
|
|
|
|
</route>
|
|
|
|
|
|
|
|
<route id="textPurgeSendRoute">
|
|
|
|
<from uri="timer://textPurgeSend?period=60s" />
|
|
|
|
<doTry>
|
|
|
|
<bean ref="textVersionPurge" method="getAfosIdsToPurge"/>
|
|
|
|
<to uri="jms-generic:queue:textPurgeRequest" />
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:purge?level=ERROR"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
|
|
|
|
<!-- AutoFax route -->
|
|
|
|
<route id="autoFaxRoute">
|
|
|
|
<from uri="vm:autoFaxRoute" />
|
|
|
|
<doTry>
|
|
|
|
<bean ref="autoFaxManager" method="processEvent" />
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:autoFax?level=ERROR"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
</camelContext>
|
|
|
|
|
|
|
|
<camelContext id="clustered-text-camel"
|
|
|
|
xmlns="http://camel.apache.org/schema/spring"
|
|
|
|
errorHandlerRef="errorHandler"
|
|
|
|
autoStartup="false">
|
|
|
|
<!-- TextPurge route -->
|
|
|
|
<route id="textPurgeRequestRoute">
|
|
|
|
<from uri="jms-generic:queue:textPurgeRequest" />
|
|
|
|
<doTry>
|
|
|
|
<bean ref="textVersionPurge" method="addAfosIdsToPurge"/>
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:purge?level=ERROR"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
<route id="textPurgeRoute">
|
|
|
|
<from uri="timer://textPurge?period=60s" />
|
|
|
|
<doTry>
|
|
|
|
<bean ref="textVersionPurge" method="purgeAfosIds"/>
|
|
|
|
<doCatch>
|
|
|
|
<exception>java.lang.Throwable</exception>
|
2013-06-28 09:46:25 -04:00
|
|
|
<to uri="log:purge?level=ERROR"/>
|
2012-01-06 08:55:05 -06:00
|
|
|
</doCatch>
|
|
|
|
</doTry>
|
|
|
|
</route>
|
|
|
|
</camelContext>
|
|
|
|
|
|
|
|
<bean factory-bean="clusteredCamelContextMgr"
|
|
|
|
factory-method="register">
|
|
|
|
<constructor-arg ref="clustered-text-camel" />
|
|
|
|
</bean>
|
|
|
|
</beans>
|