c3b09a1f5aa9d1cb9f550540115829106626ffdb
[ccsdk/sli/adaptors.git] / resource-assignment / provider / src / test / resources / test-context.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3   ============LICENSE_START=======================================================
4   openECOMP : SDN-C
5   ================================================================================
6   Copyright (C) 2017 AT&T Intellectual Property. All rights
7                           reserved.
8   ================================================================================
9   Licensed under the Apache License, Version 2.0 (the "License");
10   you may not use this file except in compliance with the License.
11   You may obtain a copy of the License at
12   
13        http://www.apache.org/licenses/LICENSE-2.0
14   
15   Unless required by applicable law or agreed to in writing, software
16   distributed under the License is distributed on an "AS IS" BASIS,
17   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18   See the License for the specific language governing permissions and
19   limitations under the License.
20   ============LICENSE_END=========================================================
21   -->
22
23 <beans xmlns="http://www.springframework.org/schema/beans"
24     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jdbc="http://www.springframework.org/schema/jdbc"
25     xmlns:context="http://www.springframework.org/schema/context"
26     xsi:schemaLocation="http://www.springframework.org/schema/beans
27     http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
28     http://www.springframework.org/schema/jdbc
29     http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
30     http://www.springframework.org/schema/context
31     http://www.springframework.org/schema/context/spring-context-3.1.xsd
32                     ">
33
34     <context:annotation-config />
35
36     <!-- JDBC setup -->
37
38     <bean id="test.dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" lazy-init="false">
39         <property name="driverClassName" value="org.h2.Driver" />
40         <property name="url" value="jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;MODE=MySQL" />
41     </bean>
42
43     <jdbc:initialize-database data-source="test.dataSource">
44         <jdbc:script location="sql/schema.sql" />
45         <jdbc:script location="sql/data.sql" />
46     </jdbc:initialize-database>
47
48     <bean id="rm.jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
49         <property name="dataSource" ref="test.dataSource" />
50     </bean>
51
52     <bean id="testDb" class="jtest.util.org.onap.ccsdk.sli.adaptors.ra.TestDb">
53         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
54     </bean>
55
56     <bean id="dataSetup" class="jtest.org.onap.ccsdk.sli.adaptors.ra.DataSetup">
57         <property name="testDb" ref="testDb" />
58     </bean>
59
60     <!-- Utils Configuration -->
61
62     <bean id="speedUtil" class="org.onap.ccsdk.sli.adaptors.util.speed.SpeedUtil">
63         <property name="unitFactor" value="1000" />
64     </bean>
65
66     <!-- Resource Lock Configuration -->
67
68     <bean id="resourceLockDao" class="org.onap.ccsdk.sli.adaptors.lock.dao.ResourceLockDaoImpl">
69         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
70         <property name="testing" value="true" />
71     </bean>
72
73     <bean id="lockHelper" class="org.onap.ccsdk.sli.adaptors.lock.comp.LockHelperImpl">
74         <property name="resourceLockDao" ref="resourceLockDao" />
75         <property name="retryCount" value="10" />
76         <property name="lockWait" value="5" /> <!-- Seconds -->
77     </bean>
78
79     <!-- RM Configuration -->
80
81     <bean id="resourceJdbcDao" class="org.onap.ccsdk.sli.adaptors.rm.dao.jdbc.ResourceJdbcDaoImpl">
82         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
83     </bean>
84
85     <bean id="allocationItemJdbcDao" class="org.onap.ccsdk.sli.adaptors.rm.dao.jdbc.AllocationItemJdbcDaoImpl">
86         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
87     </bean>
88
89     <bean id="resourceLoadJdbcDao" class="org.onap.ccsdk.sli.adaptors.rm.dao.jdbc.ResourceLoadJdbcDaoImpl">
90         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
91     </bean>
92
93     <bean id="resourceDao" class="org.onap.ccsdk.sli.adaptors.rm.dao.jdbc.ResourceDaoImpl">
94         <property name="resourceJdbcDao" ref="resourceJdbcDao" />
95         <property name="allocationItemJdbcDao" ref="allocationItemJdbcDao" />
96         <property name="resourceLoadJdbcDao" ref="resourceLoadJdbcDao" />
97     </bean>
98
99     <bean id="resourceManager" class="org.onap.ccsdk.sli.adaptors.rm.comp.ResourceManagerImpl">
100         <property name="lockHelper" ref="lockHelper" />
101         <property name="resourceDao" ref="resourceDao" />
102         <property name="applicationId" value="SDNC" />
103         <property name="lockTimeout" value="600" /> <!-- Seconds -->
104     </bean>
105
106     <!-- Equipment DAO Configuration -->
107
108     <bean id="serverDao" class="org.onap.ccsdk.sli.adaptors.ra.equip.dao.ServerDaoImpl">
109         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
110     </bean>
111
112     <bean id="vpePortDao" class="org.onap.ccsdk.sli.adaptors.ra.equip.dao.VpePortDaoImpl">
113         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
114     </bean>
115
116     <bean id="vplspePortDao" class="org.onap.ccsdk.sli.adaptors.ra.equip.dao.VplspePortDaoImpl">
117         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
118     </bean>
119
120     <!-- Rule DAO Configuration -->
121
122     <bean id="maxPortSpeedDao" class="org.onap.ccsdk.sli.adaptors.ra.rule.dao.MaxPortSpeedDaoImpl">
123         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
124         <property name="speedUtil" ref="speedUtil" />
125     </bean>
126
127     <bean id="maxServerSpeedDao" class="org.onap.ccsdk.sli.adaptors.ra.rule.dao.MaxServerSpeedDaoImpl">
128         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
129         <property name="speedUtil" ref="speedUtil" />
130     </bean>
131
132     <bean id="resourceRuleDao" class="org.onap.ccsdk.sli.adaptors.ra.rule.dao.ResourceRuleDaoImpl">
133         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
134     </bean>
135
136     <bean id="rangeRuleDao" class="org.onap.ccsdk.sli.adaptors.ra.rule.dao.RangeRuleDaoImpl">
137         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
138     </bean>
139
140     <bean id="vpeLockDao" class="org.onap.ccsdk.sli.adaptors.ra.rule.dao.VpeLockDaoImpl">
141         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
142     </bean>
143
144     <bean id="parameterDao" class="org.onap.ccsdk.sli.adaptors.ra.rule.dao.ParameterDaoImpl">
145         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
146     </bean>
147
148     <!-- Service DAO Configuration -->
149
150     <bean id="serviceResourceDao" class="org.onap.ccsdk.sli.adaptors.ra.service.dao.ServiceResourceDaoImpl">
151         <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
152     </bean>
153
154     <!-- ResourceAllocator Configuration -->
155
156     <bean id="allocationRequestBuilder" class="org.onap.ccsdk.sli.adaptors.ra.rule.comp.AllocationRequestBuilderImpl">
157         <property name="resourceRuleDao" ref="resourceRuleDao" />
158         <property name="rangeRuleDao" ref="rangeRuleDao" />
159     </bean>
160
161     <bean id="resourceAllocator" class="org.onap.ccsdk.sli.adaptors.ra.ResourceAllocator">
162         <property name="speedUtil" ref="speedUtil" />
163         <property name="parameterDao" ref="parameterDao" />
164         <property name="serverDao" ref="serverDao" />
165         <property name="vpePortDao" ref="vpePortDao" />
166         <property name="vplspePortDao" ref="vplspePortDao" />
167         <property name="maxPortSpeedDao" ref="maxPortSpeedDao" />
168         <property name="maxServerSpeedDao" ref="maxServerSpeedDao" />
169         <property name="serviceResourceDao" ref="serviceResourceDao" />
170         <property name="allocationRequestBuilder" ref="allocationRequestBuilder" />
171         <property name="resourceManager" ref="resourceManager" />
172         <property name="endPointAllocator" ref="endPointAllocator" />
173     </bean>
174
175     <!-- EndPointAllocator Configuration -->
176
177     <bean id="endPointAllocator" class="org.onap.ccsdk.sli.adaptors.ra.comp.EndPointAllocatorImpl">
178         <property name="resourceManager" ref="resourceManager" />
179         <property name="endPointAllocationDefinitionMap">
180             <map>
181                 <entry key="L3AVPN-PORT">
182                     <list>
183                         <bean class="org.onap.ccsdk.sli.adaptors.ra.comp.EndPointAllocationDefinition">
184                             <property name="serviceModel" value="L3AVPN-PORT" />
185                             <property name="endPointPosition" value="VPE-Cust" />
186                             <property name="equipmentReader" ref="vpePortReader" />
187                             <property name="equipmentCheckList">
188                                 <list>
189                                     <ref bean="provStatusCheck" />
190                                     <ref bean="excludeVpeCheck" />
191                                     <ref bean="anyVrfPresentCheck" />
192                                 </list>
193                             </property>
194                             <property name="preferenceRuleList">
195                                 <list>
196                                     <ref bean="affinityLinkPref" />
197                                 </list>
198                             </property>
199                             <property name="allocationRuleList">
200                                 <list>
201                                     <ref bean="dbAllocationRule" />
202                                     <ref bean="affinityAllocationRule" />
203                                 </list>
204                             </property>
205                         </bean>
206                     </list>
207                 </entry>
208                 <entry key="L3AVPN-EVC">
209                     <list>
210                         <bean class="org.onap.ccsdk.sli.adaptors.ra.comp.EndPointAllocationDefinition">
211                             <property name="serviceModel" value="L3AVPN-EVC" />
212                             <property name="endPointPosition" value="VPE-Cust" />
213                             <property name="equipmentReader" ref="vpePortReader" />
214                             <property name="equipmentCheckList">
215                                 <list>
216                                     <ref bean="provStatusCheck" />
217                                     <ref bean="excludeVpeCheck" />
218                                     <ref bean="vpeLockCheck" />
219                                     <ref bean="anyVrfPresentCheck" />
220                                     <ref bean="oneMVrfCheck" />
221                                     <ref bean="hubWithRgCheck" />
222                                 </list>
223                             </property>
224                             <property name="preferenceRuleList">
225                                 <list>
226                                     <ref bean="affinityLinkPref" />
227                                 </list>
228                             </property>
229                             <property name="allocationRuleList">
230                                 <list>
231                                     <ref bean="dbAllocationRule" />
232                                     <ref bean="vrfAllocationRule" />
233                                     <ref bean="servingSiteAllocationRule" />
234                                     <ref bean="affinityAllocationRule" />
235                                 </list>
236                             </property>
237                         </bean>
238                     </list>
239                 </entry>
240             </map>
241         </property>
242     </bean>
243
244     <!-- Equipment Readers Configuration -->
245
246     <bean id="vpePortReader" class="org.onap.ccsdk.sli.adaptors.ra.reader.VpePortReader">
247         <property name="vpePortDao" ref="vpePortDao" />
248     </bean>
249
250     <!-- Equipment Checks Configuration -->
251
252     <bean id="provStatusCheck" class="org.onap.ccsdk.sli.adaptors.ra.check.ProvStatusCheck">
253     </bean>
254
255     <bean id="excludeVpeCheck" class="org.onap.ccsdk.sli.adaptors.ra.check.ExcludeVpeCheck">
256     </bean>
257
258     <bean id="vpeLockCheck" class="org.onap.ccsdk.sli.adaptors.ra.check.VpeLockCheck">
259         <property name="vpeLockDao" ref="vpeLockDao" />
260         <property name="resourceManager" ref="resourceManager" />
261     </bean>
262
263     <bean id="anyVrfPresentCheck" class="org.onap.ccsdk.sli.adaptors.ra.check.AnyVrfPresentCheck">
264         <property name="resourceManager" ref="resourceManager" />
265     </bean>
266
267     <bean id="oneMVrfCheck" class="org.onap.ccsdk.sli.adaptors.ra.check.OneMVrfCheck">
268         <property name="resourceManager" ref="resourceManager" />
269     </bean>
270
271     <bean id="hubWithRgCheck" class="org.onap.ccsdk.sli.adaptors.ra.check.HubWithRgCheck">
272         <property name="resourceManager" ref="resourceManager" />
273     </bean>
274
275     <!-- Preference Rule Configuration -->
276
277     <bean id="affinityLinkPref" class="org.onap.ccsdk.sli.adaptors.ra.pref.AffinityLinkPref">
278         <property name="resourceManager" ref="resourceManager" />
279     </bean>
280
281     <!-- Resource Allocation Rule Configuration -->
282
283     <bean id="dbAllocationRule" class="org.onap.ccsdk.sli.adaptors.ra.alloc.DbAllocationRule">
284         <property name="resourceRuleDao" ref="resourceRuleDao" />
285         <property name="rangeRuleDao" ref="rangeRuleDao" />
286     </bean>
287
288     <bean id="vrfAllocationRule" class="org.onap.ccsdk.sli.adaptors.ra.alloc.VrfAllocationRule">
289     </bean>
290
291     <bean id="servingSiteAllocationRule" class="org.onap.ccsdk.sli.adaptors.ra.alloc.ServingSiteAllocationRule">
292     </bean>
293
294     <bean id="affinityAllocationRule" class="org.onap.ccsdk.sli.adaptors.ra.alloc.AffinityAllocationRule">
295     </bean>
296
297 </beans>