Netty Replicator - improve the reconnection and keepalive mechanisms
[mdsal.git] / replicate / mdsal-replicate-netty / src / main / resources / OSGI-INF / blueprint / netty-replication-sink.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
3            xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.2.0">
4   <cm:property-placeholder persistent-id="org.opendaylight.mdsal.replicate.netty.sink" update-strategy="reload"
5                            placeholder-prefix="$(" placeholder-suffix=")">
6     <cm:default-properties>
7       <cm:property name="enabled" value="false"/>
8       <cm:property name="source-host" value="127.0.0.1"/>
9       <cm:property name="source-port" value="9999"/>
10       <cm:property name="reconnect-delay-millis" value="3000"/>
11       <cm:property name="keepalive-interval-seconds" value="$common(keepalive-interval-seconds)"/>
12       <cm:property name="max-missed-keepalives" value="$common(max-missed-keepalives)"/>
13     </cm:default-properties>
14   </cm:property-placeholder>
15
16   <bean id="reconnectDelay" class="java.time.Duration" factory-method="ofMillis">
17     <argument value="$(reconnect-delay-millis)"/>
18   </bean>
19
20   <bean id="sourceAddress" class="java.net.InetAddress" factory-method="getByName">
21     <argument value="$(source-host)"/>
22   </bean>
23
24   <bean id="keepaliveInt" class="java.time.Duration" factory-method="ofSeconds">
25     <argument value="$(keepalive-interval-seconds)"/>
26   </bean>
27
28   <bean id="nettyReplicationSink" class="org.opendaylight.mdsal.replicate.netty.NettyReplication"
29         factory-method="createSink" destroy-method="close">
30     <argument ref="bootstrapSupport"/>
31     <argument ref="dataBroker"/>
32     <argument ref="singletonServiceProvider"/>
33     <argument value="$(enabled)"/>
34     <argument ref="sourceAddress"/>
35     <argument value="$(source-port)"/>
36     <argument ref="reconnectDelay"/>
37     <argument ref="keepaliveInt"/>
38     <argument value="$(max-missed-keepalives)"/>
39   </bean>
40
41 </blueprint>