Change-Id: I2ec99fadbe2f383bb0892c59601350395f1e5277 Former-commit-id:f2d99af20e
[formerly5905c5d08d
] [formerly2085a9cd33
] [formerlyfbda83aeb9
[formerly2085a9cd33
[formerly 081a19d5cfca3d717a332357dbaead199767e0b8]]] Former-commit-id:fbda83aeb9
Former-commit-id: 92cc0eed5d5ca22d3b43329858c1619c9363e66a [formerlyf7f9a4e57c
] Former-commit-id:670e63d0dd
97 lines
4.8 KiB
XML
97 lines
4.8 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="vtecFilter" class="com.raytheon.edex.plugin.warning.util.WarningHasVTECFilter" />
|
|
|
|
<bean id="activeTableSrv" class="com.raytheon.uf.edex.activetable.ActiveTableSrv" />
|
|
<bean id="activeTable" class="com.raytheon.uf.edex.activetable.ActiveTable" />
|
|
<bean id="activeTableDatabaseProperties" class="com.raytheon.uf.edex.database.DatabasePluginProperties">
|
|
<property name="pluginFQN" value="com.raytheon.uf.common.activetable" />
|
|
<property name="database" value="metadata" />
|
|
</bean>
|
|
<bean factory-bean="dbPluginRegistry" factory-method="register">
|
|
<constructor-arg value="com.raytheon.uf.common.activetable"/>
|
|
<constructor-arg ref="activeTableDatabaseProperties"/>
|
|
</bean>
|
|
<bean id="jms-activetable" class="org.apache.camel.component.jms.JmsComponent">
|
|
<constructor-arg ref="jmsActiveTableConfig" />
|
|
<property name="taskExecutor" ref="activeTableMergeThreadPool" />
|
|
</bean>
|
|
<bean id="jmsActiveTableConfig" class="org.apache.camel.component.jms.JmsConfiguration"
|
|
factory-bean="jmsConfig" factory-method="copy" />
|
|
<bean id="activeTableMergeThreadPool"
|
|
class="com.raytheon.uf.edex.esb.camel.spring.JmsThreadPoolTaskExecutor">
|
|
<property name="corePoolSize" value="2" />
|
|
<property name="maxPoolSize" value="2" />
|
|
</bean>
|
|
<bean id="timeOffsetDecoder" class="com.raytheon.uf.edex.python.decoder.TimeOffsetDecoder">
|
|
<property name="pluginName" value="warning" />
|
|
<property name="pluginFQN" value="com.raytheon.edex.plugin.warning" />
|
|
<property name="moduleName" value="WarningDecoder" />
|
|
<property name="cache" value="false"/>
|
|
<property name="recordClassname"
|
|
value="com.raytheon.uf.common.dataplugin.warning.WarningRecord" />
|
|
</bean>
|
|
<bean id="practiceProductOfftimeHandler" class="com.raytheon.uf.edex.activetable.PracticeProductOfftimeHandler"/>
|
|
<bean id="toDataURI" class="com.raytheon.uf.edex.ingest.notification.ToDataURI" />
|
|
<camelContext id="activetable-camel"
|
|
xmlns="http://camel.apache.org/schema/spring"
|
|
errorHandlerRef="errorHandler">
|
|
<route id="vtecNotify">
|
|
<from uri="vm:edex.vtecAlert" />
|
|
<bean ref="serializationUtil" method="transformToThrift" />
|
|
<to uri="jms-generic:topic:edex.alerts.vtec?timeToLive=60000" />
|
|
</route>
|
|
<route id="practiceVtecRoute">
|
|
<from uri="jms-activetable:queue:practiceActiveTable?concurrentConsumers=1" />
|
|
<doTry>
|
|
<bean ref="activeTable" method="dumpProductToTempFile" />
|
|
<bean ref="practiceWarningDecoder" method="decode" />
|
|
<bean ref="index" method="index" />
|
|
<filter>
|
|
<method bean="vtecFilter" method="hasVTEC" />
|
|
<bean ref="activeTableSrv" method="practiceVtecArrived" />
|
|
<bean ref="toDataURI" method="toPracticeNotificationMsg"/>
|
|
<bean ref="serializationUtil" method="transformToThrift" />
|
|
<to uri="jms-generic:topic:edex.alerts.practicewarning?timeToLive=60000&deliveryPersistent=false"/>
|
|
</filter>
|
|
<doCatch>
|
|
<exception>java.lang.Throwable</exception>
|
|
<to uri="log:practiceActiveTable?level=ERROR"/>
|
|
</doCatch>
|
|
</doTry>
|
|
</route>
|
|
<route id="practiceVtecOffsetRoute">
|
|
<from uri="vm:edex.vtecDecoder" />
|
|
<doTry>
|
|
<pipeline>
|
|
<setHeader headerName="drtstring">
|
|
<simple>${body?.drtString}</simple>
|
|
</setHeader>
|
|
<setHeader headerName="offsetseconds">
|
|
<simple>${body?.offsetSeconds}</simple>
|
|
</setHeader>
|
|
<setHeader headerName="notifygfe">
|
|
<simple>${body?.notifyGFE}</simple>
|
|
</setHeader>
|
|
<bean ref="practiceProductOfftimeHandler" method="process"/>
|
|
<bean ref="activeTable" method="dumpProductToTempFile"/>
|
|
<bean ref="timeOffsetDecoder" method="decode"/>
|
|
<multicast parallelProcessing="false">
|
|
<bean ref="activeTableSrv" method="practiceVtecArrived"/>
|
|
<filter>
|
|
<simple>${header?.notifygfe.booleanValue}</simple>
|
|
<to uri="jms-generic:queue:practiceNotify"/>
|
|
</filter>
|
|
</multicast>
|
|
</pipeline>
|
|
<doCatch>
|
|
<exception>java.lang.Throwable</exception>
|
|
<to uri="log:practiceActiveTable?level=ERROR"/>
|
|
</doCatch>
|
|
</doTry>
|
|
</route>
|
|
</camelContext>
|
|
</beans>
|