Teach NETCONF about YANG 1.1 actions in cluster topology
[netconf.git] / netconf / netconf-topology-singleton / src / main / resources / OSGI-INF / blueprint / netconf-topology-singleton.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4 Copyright © 2016 Cisco Systems, Inc. and others. All rights reserved.
5
6 This program and the accompanying materials are made available under the
7 terms of the Eclipse Public License v1.0 which accompanies this distribution,
8 and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
11            xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
12            xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0"
13            odl:use-default-for-reference-types="true">
14
15     <reference id="dataBroker"
16                interface="org.opendaylight.mdsal.binding.api.DataBroker"/>
17     <reference id="rpcRegistry"
18                interface="org.opendaylight.mdsal.dom.api.DOMRpcProviderService"/>
19     <reference id="actionRegistry"
20                interface="org.opendaylight.mdsal.dom.api.DOMActionProviderService"/>
21     <reference id="clusterSingletonService"
22                interface="org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider"/>
23     <reference id="keepAliveExecutor"
24                interface="org.opendaylight.controller.config.threadpool.ScheduledThreadPool"
25                odl:type="global-netconf-ssh-scheduled-executor"/>
26     <reference id="processingExecutor"
27                interface="org.opendaylight.controller.config.threadpool.ThreadPool"
28                odl:type="global-netconf-processing-executor"/>
29     <reference id="actorSystemProvider"
30                interface="org.opendaylight.controller.cluster.ActorSystemProvider"/>
31     <reference id="eventExecutor"
32                interface="io.netty.util.concurrent.EventExecutor"
33                odl:type="global-event-executor"/>
34     <reference id="clientDispatcherDependency"
35                interface="org.opendaylight.netconf.client.NetconfClientDispatcher"
36                odl:type="netconf-client-dispatcher"/>
37     <reference id="mountPointService"
38                interface="org.opendaylight.mdsal.dom.api.DOMMountPointService"
39                odl:type="default"/>
40     <reference id="deviceActionFactory"
41                interface="org.opendaylight.netconf.sal.connect.api.DeviceActionFactory"/>
42     <odl:clustered-app-config
43             id="singletonConfig"
44             binding-class="org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.topology.singleton.config.rev170419.Config"
45     />
46
47     <cm:property-placeholder persistent-id="org.opendaylight.netconf.topology.sb.keypair" update-strategy="none">
48         <cm:default-properties>
49             <cm:property name="private-key-path" value=""/>
50             <cm:property name="private-key-passphrase" value=""/>
51         </cm:default-properties>
52     </cm:property-placeholder>
53
54     <reference id="encryptionService"
55                interface="org.opendaylight.aaa.encrypt.AAAEncryptionService" />
56
57     <bean id="netconfTopologyManager"
58           class="org.opendaylight.netconf.topology.singleton.impl.NetconfTopologyManager"
59           init-method="init" destroy-method="close">
60         <cm:managed-properties persistent-id="org.opendaylight.netconf.topology.sb.keypair"
61                                update-strategy="container-managed"/>
62         <argument ref="dataBroker"/>
63         <argument ref="rpcRegistry"/>
64         <argument ref="actionRegistry"/>
65         <argument ref="clusterSingletonService"/>
66         <argument ref="keepAliveExecutor"/>
67         <argument ref="processingExecutor"/>
68         <argument ref="actorSystemProvider"/>
69         <argument ref="eventExecutor"/>
70         <argument ref="clientDispatcherDependency"/>
71         <argument value="topology-netconf"/>
72         <argument ref="singletonConfig"/>
73         <argument ref="mountPointService"/>
74         <property name="privateKeyPath" value="${private-key-path}"/>
75         <property name="privateKeyPassphrase" value="${private-key-passphrase}"/>
76         <argument ref="encryptionService" />
77         <argument ref="deviceActionFactory"/>
78     </bean>
79     <service ref="netconfTopologyManager"
80              interface="org.opendaylight.netconf.topology.singleton.api.NetconfTopologySingletonService"/>
81
82     <bean id="netconfNodeRegisterEncryptedRPC"
83           class="org.opendaylight.netconf.sal.connect.util.NetconfTopologyRPCProvider"
84           >
85         <argument value="topology-netconf"/>
86         <argument ref="dataBroker"/>
87         <argument ref="encryptionService"/>
88     </bean>
89
90     <odl:rpc-implementation ref="netconfNodeRegisterEncryptedRPC"/>
91
92     <bean id="netconfKeystoreProvider"
93           class="org.opendaylight.netconf.sal.connect.util.NetconfSalKeystoreService">
94         <argument ref="dataBroker"/>
95         <argument ref="encryptionService"/>
96     </bean>
97
98     <odl:rpc-implementation ref="netconfKeystoreProvider"/>
99
100 </blueprint>