Former-commit-id:be96282207
[formerly0be473728a
] [formerlyaaac0b51e5
[formerly 1f109861760e5fbc9d7a13cc4f518341cbc31276]] Former-commit-id:aaac0b51e5
Former-commit-id:bc439aee4f
145 lines
No EOL
6.3 KiB
XML
145 lines
No EOL
6.3 KiB
XML
<beans xmlns="http://www.springframework.org/schema/beans"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util"
|
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
|
|
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd
|
|
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
|
|
|
|
<bean id="ddRetrievalDatabaseProperties"
|
|
class="com.raytheon.uf.edex.database.DatabasePluginProperties">
|
|
<property name="pluginFQN"
|
|
value="com.raytheon.uf.edex.datadelivery.retrieval" />
|
|
<property name="database" value="metadata" />
|
|
</bean>
|
|
<bean factory-bean="dbPluginRegistry" factory-method="register">
|
|
<constructor-arg value="com.raytheon.uf.edex.datadelivery.retrieval" />
|
|
<constructor-arg ref="ddRetrievalDatabaseProperties" />
|
|
</bean>
|
|
|
|
<bean id="subNotifyTask"
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.SubscriptionNotifyTask">
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
|
|
<!-- A RetrievalTask takes three constructor arguments:
|
|
1) How to find retrievals, in this case perform the actual retrieval and return it
|
|
2) What to do with found retrievals, in this case process it and send a notification event
|
|
3) How to complete retrievals, in this case update the database and send a notification event
|
|
-->
|
|
<bean id="opsnetRetrievalTask"
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalTask">
|
|
<constructor-arg value="OPSNET" />
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.PerformRetrievalsThenReturnFinder">
|
|
<constructor-arg value="OPSNET" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.StoreRetrievedData">
|
|
<constructor-arg value="directvm:dataDeliveryNotify" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalResponseCompleter">
|
|
<constructor-arg ref="subNotifyTask" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
|
|
<!--
|
|
Comment out version above and uncomment this version to test out basic SBN directory drop-off and
|
|
pickup from a directory
|
|
-->
|
|
<!--
|
|
<bean id="opsnetRetrievalTask"
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalTask">
|
|
<constructor-arg value="OPSNET" />
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.PerformRetrievalsThenReturnFinder">
|
|
<constructor-arg value="OPSNET" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.SerializeRetrievedDataToDirectory">
|
|
<constructor-arg value="/awips2/crawl" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg>
|
|
<util:constant
|
|
static-field="com.raytheon.uf.edex.datadelivery.retrieval.handlers.IRetrievalResponseCompleter.NULL" />
|
|
</constructor-arg>
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
-->
|
|
|
|
<bean id="sbnRetrievalTask"
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalTask">
|
|
<constructor-arg value="SBN" />
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.DeserializeRetrievedDataFromDirectory">
|
|
<constructor-arg value="/awips2/crawl" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.StoreRetrievedData">
|
|
<constructor-arg value="directvm:dataDeliveryNotify" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg>
|
|
<bean
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalResponseCompleter">
|
|
<constructor-arg ref="subNotifyTask" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
</constructor-arg>
|
|
<constructor-arg ref="retrievalDao" />
|
|
</bean>
|
|
|
|
<bean id="scheduledExecutorService" class="java.util.concurrent.Executors"
|
|
factory-method="newScheduledThreadPool">
|
|
<constructor-arg value="3" />
|
|
</bean>
|
|
|
|
<bean id="retrievalHandler"
|
|
class="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalHandler">
|
|
<constructor-arg ref="scheduledExecutorService" />
|
|
<constructor-arg ref="retrievalDao" />
|
|
<constructor-arg>
|
|
<util:list
|
|
value-type="com.raytheon.uf.edex.datadelivery.retrieval.handlers.RetrievalTask.RetrievalTask">
|
|
<ref bean="opsnetRetrievalTask" />
|
|
<ref bean="sbnRetrievalTask" />
|
|
</util:list>
|
|
</constructor-arg>
|
|
<constructor-arg ref="subNotifyTask" />
|
|
</bean>
|
|
|
|
<camelContext id="dataDeliveryNotify-camel"
|
|
xmlns="http://camel.apache.org/schema/spring" errorHandlerRef="errorHandler">
|
|
<!-- Wake retrieval threads if were not running -->
|
|
<route id="notifyRetrieval">
|
|
<!-- If data delivery clustered, move this to topic -->
|
|
<from uri="directvm:notifyRetrieval" />
|
|
<bean ref="retrievalHandler" method="notify" />
|
|
</route>
|
|
|
|
<route id="dataDeliveryNotify">
|
|
<from uri="directvm:dataDeliveryNotify" />
|
|
<bean ref="toDataURI" method="toDataURI" />
|
|
<to uri="vm:stageNotification" />
|
|
</route>
|
|
</camelContext>
|
|
|
|
</beans> |