awips2/edexOsgi/com.raytheon.uf.edex.datadelivery.bandwidth/res/spring/bandwidth-datadelivery.xml
Mike Duff 08bd755af0 Issue #2636 - Change how retrieval plan is updated over time.
Peer review comments

Change-Id: If7308ad0300460ed14bc4b53707b81a6eba51950

Former-commit-id: c125b9d044 [formerly 33f81d8822] [formerly 89bd047283] [formerly c125b9d044 [formerly 33f81d8822] [formerly 89bd047283] [formerly 911789b910 [formerly 89bd047283 [formerly 0144c23a35b6e7134d5c4caecbaa78f6b0c613f5]]]]
Former-commit-id: 911789b910
Former-commit-id: cddd263edc [formerly 42e6591bc8] [formerly 63198d978b2d9ab9f18c26071e586f7a38cac365 [formerly 5f9d913c6d]]
Former-commit-id: f2a50ed00c3b42b132cd818df4e07da12380595e [formerly d277c1caf1]
Former-commit-id: 2467a11a7e
2014-02-18 12:05:26 -06:00

106 lines
4.4 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="propertyPlaceholderConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:/com.raytheon.uf.edex.datadelivery.bandwidth.properties</value>
</list>
</property>
</bean>
<bean id="bandwidthDao" factory-bean="bandwidthContextFactory"
factory-method="getBandwidthDao" />
<bean id="bandwidthBucketDao" factory-bean="bandwidthContextFactory"
factory-method="getBandwidthBucketDao" />
<!-- TODO: Move the associations between a bucket and its allocations
into the database -->
<bean id="bandwidthBucketAllocationAssociator"
class="com.raytheon.uf.edex.datadelivery.bandwidth.retrieval.InMemoryBandwidthBucketAllocationAssociator">
<constructor-arg ref="bandwidthDao" />
<constructor-arg ref="bandwidthBucketDao" />
</bean>
<bean id="bandwidthDbInit" factory-bean="bandwidthContextFactory"
factory-method="getBandwidthDbInit" />
<bean id="bandwidthMapConfigFile" factory-bean="bandwidthContextFactory"
factory-method="getBandwidthMapConfigFile" />
<bean id="bandwidthManager" factory-bean="bandwidthContextFactory"
factory-method="getBandwidthManager" depends-on="bandwidthUtil"
init-method="init">
<constructor-arg ref="bandwidthDbInit" />
<constructor-arg ref="bandwidthDao" />
<constructor-arg ref="retrievalManager" />
<constructor-arg ref="bandwidthDaoUtil" />
<property name="aggregator" ref="aggregator" />
<property name="initializer" ref="bandwidthInitializer" />
</bean>
<bean id="bandwidthUtil"
class="com.raytheon.uf.edex.datadelivery.bandwidth.util.BandwidthUtil"
factory-method="getInstance" depends-on="registerDataDeliveryHandlers">
<property name="subscriptionLatencyCalculator">
<bean
class="com.raytheon.uf.edex.datadelivery.bandwidth.util.SubscriptionValueLatencyCalculator" />
</property>
<property name="subscriptionRescheduleStrategy">
<bean
class="com.raytheon.uf.edex.datadelivery.bandwidth.util.AlwaysRescheduleSubscriptions" />
</property>
</bean>
<bean id="bandwidthDaoUtil"
class="com.raytheon.uf.edex.datadelivery.bandwidth.util.BandwidthDaoUtil">
<constructor-arg ref="bandwidthDao" />
<constructor-arg ref="retrievalManager" />
</bean>
<bean id="BandwidthMap"
class="com.raytheon.uf.common.datadelivery.bandwidth.data.BandwidthMap"
factory-method="load">
<constructor-arg ref="bandwidthMapConfigFile" />
</bean>
<bean id="aggregator"
class="com.raytheon.uf.edex.datadelivery.bandwidth.processing.SimpleSubscriptionAggregator">
<constructor-arg ref="bandwidthDao" />
</bean>
<!-- The shared monitor object between the RetrievalAgentManager and
its Agents -->
<bean id="retrievalAgentNotifier" class="java.lang.Object" />
<bean id="retrievalManager"
class="com.raytheon.uf.edex.datadelivery.bandwidth.retrieval.RetrievalManager">
<constructor-arg ref="bandwidthDao" />
<constructor-arg ref="retrievalAgentNotifier" />
<property name="retrievalPlans" ref="retrievalPlans" />
</bean>
<bean id="registryBandwidthUtilizationListener"
class="com.raytheon.uf.edex.datadelivery.bandwidth.registry.RegistryBandwidthUtilizationListener"
depends-on="ebxmlRegistryWebServer, BandwidthMap, bandwidthBucketDao">
<constructor-arg ref="ebxmlRegistryWebServer"/>
<constructor-arg ref="ebxmlFederationEnabled"/>
<constructor-arg ref="BandwidthMap"/>
<constructor-arg ref="bandwidthBucketDao"/>
</bean>
<camelContext id="datadelivery-bandwidth" xmlns="http://camel.apache.org/schema/spring"
errorHandlerRef="errorHandler">
<endpoint id="scheduleBandwidthQueue"
uri="vm://scheduleBandwidth" />
<route id="scheduleSubscription">
<from uri="scheduleBandwidthQueue" />
<bean ref="bandwidthManager" method="schedule"/>
</route>
</camelContext>
</beans>