summaryrefslogtreecommitdiffstats
path: root/resource-assignment/provider/src/main/resources
diff options
context:
space:
mode:
Diffstat (limited to 'resource-assignment/provider/src/main/resources')
-rw-r--r--resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-context.xml296
-rw-r--r--resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-osgi-context.xml39
-rw-r--r--resource-assignment/provider/src/main/resources/resource-allocator.properties26
-rw-r--r--resource-assignment/provider/src/main/resources/sql/001_resource_rule_ddl.sql32
-rw-r--r--resource-assignment/provider/src/main/resources/sql/002_max_port_speed_ddl.sql29
-rw-r--r--resource-assignment/provider/src/main/resources/sql/003_max_server_speed_ddl.sql28
6 files changed, 450 insertions, 0 deletions
diff --git a/resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-context.xml b/resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-context.xml
new file mode 100644
index 000000000..b123944d3
--- /dev/null
+++ b/resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-context.xml
@@ -0,0 +1,296 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ============LICENSE_START=======================================================
+ openECOMP : SDN-C
+ ================================================================================
+ Copyright (C) 2017 ONAP Intellectual Property. All rights
+ reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+ -->
+
+<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.xsd">
+
+ <!-- JDBC setup -->
+
+ <bean id="rm.dataSource" class="org.openecomp.sdnc.util.db.DataSourceWrap">
+ <property name="dataSource" ref="dblib.dataSource" />
+ </bean>
+
+ <bean id="lock.dataSource" class="org.openecomp.sdnc.util.db.CachedDataSourceWrap">
+ <property name="dataSource" ref="rm.dataSource" />
+ </bean>
+
+ <bean id="rm.jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
+ <property name="dataSource" ref="rm.dataSource" />
+ </bean>
+
+ <bean id="lock.jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
+ <property name="dataSource" ref="lock.dataSource" />
+ </bean>
+
+ <!-- Utils Configuration -->
+
+ <bean id="speedUtil" class="org.openecomp.sdnc.util.speed.SpeedUtil">
+ <property name="unitFactor" value="1000" />
+ </bean>
+
+ <!-- Resource Lock Configuration -->
+
+ <bean id="resourceLockDao" class="org.openecomp.sdnc.lock.dao.ResourceLockDaoImpl">
+ <property name="jdbcTemplate" ref="lock.jdbcTemplate" />
+ </bean>
+
+ <bean id="lockHelper" class="org.openecomp.sdnc.lock.comp.LockHelperImpl">
+ <property name="resourceLockDao" ref="resourceLockDao" />
+ <property name="retryCount" value="10" />
+ <property name="lockWait" value="5" /> <!-- Seconds -->
+ </bean>
+
+ <!-- RM Configuration -->
+
+ <bean id="resourceJdbcDao" class="org.openecomp.sdnc.rm.dao.jdbc.ResourceJdbcDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="allocationItemJdbcDao" class="org.openecomp.sdnc.rm.dao.jdbc.AllocationItemJdbcDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="resourceLoadJdbcDao" class="org.openecomp.sdnc.rm.dao.jdbc.ResourceLoadJdbcDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="resourceDao" class="org.openecomp.sdnc.rm.dao.jdbc.ResourceDaoImpl">
+ <property name="resourceJdbcDao" ref="resourceJdbcDao" />
+ <property name="allocationItemJdbcDao" ref="allocationItemJdbcDao" />
+ <property name="resourceLoadJdbcDao" ref="resourceLoadJdbcDao" />
+ </bean>
+
+ <bean id="resourceManager" class="org.openecomp.sdnc.rm.comp.ResourceManagerImpl">
+ <property name="lockHelper" ref="lockHelper" />
+ <property name="resourceDao" ref="resourceDao" />
+ <property name="applicationId" value="SDNC" />
+ <property name="lockTimeout" value="600" /> <!-- Seconds -->
+ </bean>
+
+ <!-- Equipment DAO Configuration -->
+
+ <bean id="serverDao" class="org.openecomp.sdnc.ra.equip.dao.ServerDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="vpePortDao" class="org.openecomp.sdnc.ra.equip.dao.VpePortDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="vplspePortDao" class="org.openecomp.sdnc.ra.equip.dao.VplspePortDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <!-- Rule DAO Configuration -->
+
+ <bean id="parameterDao" class="org.openecomp.sdnc.ra.rule.dao.ParameterDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="maxPortSpeedDao" class="org.openecomp.sdnc.ra.rule.dao.MaxPortSpeedDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ <property name="speedUtil" ref="speedUtil" />
+ </bean>
+
+ <bean id="maxServerSpeedDao" class="org.openecomp.sdnc.ra.rule.dao.MaxServerSpeedDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ <property name="speedUtil" ref="speedUtil" />
+ </bean>
+
+ <bean id="resourceRuleDao" class="org.openecomp.sdnc.ra.rule.dao.ResourceRuleDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="rangeRuleDao" class="org.openecomp.sdnc.ra.rule.dao.RangeRuleDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <bean id="vpeLockDao" class="org.openecomp.sdnc.ra.rule.dao.VpeLockDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <!-- Service DAO Configuration -->
+
+ <bean id="serviceResourceDao" class="org.openecomp.sdnc.ra.service.dao.ServiceResourceDaoImpl">
+ <property name="jdbcTemplate" ref="rm.jdbcTemplate" />
+ </bean>
+
+ <!-- ResourceAllocator Configuration -->
+
+ <bean id="allocationRequestBuilder"
+ class="org.openecomp.sdnc.ra.rule.comp.AllocationRequestBuilderImpl">
+ <property name="resourceRuleDao" ref="resourceRuleDao" />
+ <property name="rangeRuleDao" ref="rangeRuleDao" />
+ </bean>
+
+ <bean id="resourceAllocator" class="org.openecomp.sdnc.ra.ResourceAllocator">
+ <property name="speedUtil" ref="speedUtil" />
+ <property name="parameterDao" ref="parameterDao" />
+ <property name="serverDao" ref="serverDao" />
+ <property name="vpePortDao" ref="vpePortDao" />
+ <property name="vplspePortDao" ref="vplspePortDao" />
+ <property name="maxPortSpeedDao" ref="maxPortSpeedDao" />
+ <property name="maxServerSpeedDao" ref="maxServerSpeedDao" />
+ <property name="serviceResourceDao" ref="serviceResourceDao" />
+ <property name="allocationRequestBuilder" ref="allocationRequestBuilder" />
+ <property name="resourceManager" ref="resourceManager" />
+ <property name="endPointAllocator" ref="endPointAllocator" />
+ </bean>
+
+ <!-- EndPointAllocator Configuration -->
+
+ <bean id="endPointAllocator" class="org.openecomp.sdnc.ra.comp.EndPointAllocatorImpl">
+ <property name="resourceManager" ref="resourceManager" />
+ <property name="endPointAllocationDefinitionMap">
+ <map>
+ <entry key="L3AVPN-PORT">
+ <list>
+ <bean class="org.openecomp.sdnc.ra.comp.EndPointAllocationDefinition">
+ <property name="serviceModel" value="L3AVPN-PORT" />
+ <property name="endPointPosition" value="VPE-Cust" />
+ <property name="equipmentReader" ref="vpePortReader" />
+ <property name="equipmentCheckList">
+ <list>
+ <ref bean="provStatusCheck" />
+ <ref bean="excludeVpeCheck" />
+ <ref bean="anyVrfPresentCheck" />
+ </list>
+ </property>
+ <property name="preferenceRuleList">
+ <list>
+ <ref bean="affinityLinkPref" />
+ </list>
+ </property>
+ <property name="allocationRuleList">
+ <list>
+ <ref bean="dbAllocationRule" />
+ <ref bean="affinityAllocationRule" />
+ </list>
+ </property>
+ </bean>
+ </list>
+ </entry>
+ <entry key="L3AVPN-EVC">
+ <list>
+ <bean class="org.openecomp.sdnc.ra.comp.EndPointAllocationDefinition">
+ <property name="serviceModel" value="L3AVPN-EVC" />
+ <property name="endPointPosition" value="VPE-Cust" />
+ <property name="equipmentReader" ref="vpePortReader" />
+ <property name="equipmentCheckList">
+ <list>
+ <ref bean="vlanSpeedCheck" />
+ <ref bean="provStatusCheck" />
+ <ref bean="excludeVpeCheck" />
+ <ref bean="vpeLockCheck" />
+ <ref bean="anyVrfPresentCheck" />
+ <ref bean="oneMVrfCheck" />
+ <ref bean="hubWithRgCheck" />
+ </list>
+ </property>
+ <property name="preferenceRuleList">
+ <list>
+ <ref bean="affinityLinkPref" />
+ </list>
+ </property>
+ <property name="allocationRuleList">
+ <list>
+ <ref bean="dbAllocationRule" />
+ <ref bean="vrfAllocationRule" />
+ <ref bean="servingSiteAllocationRule" />
+ <ref bean="affinityAllocationRule" />
+ </list>
+ </property>
+ </bean>
+ </list>
+ </entry>
+ </map>
+ </property>
+ </bean>
+
+ <!-- Equipment Readers Configuration -->
+
+ <bean id="vpePortReader" class="org.openecomp.sdnc.ra.reader.VpePortReader">
+ <property name="vpePortDao" ref="vpePortDao" />
+ </bean>
+
+ <bean id="vnfReader" class="org.openecomp.sdnc.ra.reader.VnfReader">
+ </bean>
+
+ <bean id="aicSiteReader" class="org.openecomp.sdnc.ra.reader.AicSiteReader">
+ </bean>
+
+ <bean id="uplinkCircuitReader" class="org.openecomp.sdnc.ra.reader.UplinkCircuitReader">
+ </bean>
+
+ <!-- Equipment Checks Configuration -->
+
+ <bean id="vlanSpeedCheck" class="org.openecomp.sdnc.ra.check.VlanSpeedCheck">
+ </bean>
+
+ <bean id="provStatusCheck" class="org.openecomp.sdnc.ra.check.ProvStatusCheck">
+ </bean>
+
+ <bean id="excludeVpeCheck" class="org.openecomp.sdnc.ra.check.ExcludeVpeCheck">
+ </bean>
+
+ <bean id="vpeLockCheck" class="org.openecomp.sdnc.ra.check.VpeLockCheck">
+ <property name="vpeLockDao" ref="vpeLockDao" />
+ <property name="resourceManager" ref="resourceManager" />
+ </bean>
+
+ <bean id="anyVrfPresentCheck" class="org.openecomp.sdnc.ra.check.AnyVrfPresentCheck">
+ <property name="resourceManager" ref="resourceManager" />
+ </bean>
+
+ <bean id="oneMVrfCheck" class="org.openecomp.sdnc.ra.check.OneMVrfCheck">
+ <property name="resourceManager" ref="resourceManager" />
+ </bean>
+
+ <bean id="hubWithRgCheck" class="org.openecomp.sdnc.ra.check.HubWithRgCheck">
+ <property name="resourceManager" ref="resourceManager" />
+ </bean>
+
+ <!-- Preference Rule Configuration -->
+
+ <bean id="affinityLinkPref" class="org.openecomp.sdnc.ra.pref.AffinityLinkPref">
+ <property name="resourceManager" ref="resourceManager" />
+ </bean>
+
+ <!-- Resource Allocation Rule Configuration -->
+
+ <bean id="dbAllocationRule" class="org.openecomp.sdnc.ra.alloc.DbAllocationRule">
+ <property name="resourceRuleDao" ref="resourceRuleDao" />
+ <property name="rangeRuleDao" ref="rangeRuleDao" />
+ </bean>
+
+ <bean id="vrfAllocationRule" class="org.openecomp.sdnc.ra.alloc.VrfAllocationRule">
+ </bean>
+
+ <bean id="servingSiteAllocationRule" class="org.openecomp.sdnc.ra.alloc.ServingSiteAllocationRule">
+ </bean>
+
+ <bean id="affinityAllocationRule" class="org.openecomp.sdnc.ra.alloc.AffinityAllocationRule">
+ </bean>
+
+</beans>
diff --git a/resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-osgi-context.xml b/resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-osgi-context.xml
new file mode 100644
index 000000000..bec30ce11
--- /dev/null
+++ b/resource-assignment/provider/src/main/resources/META-INF/spring/resource-assignment-osgi-context.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ============LICENSE_START=======================================================
+ openECOMP : SDN-C
+ ================================================================================
+ Copyright (C) 2017 ONAP Intellectual Property. All rights
+ reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+ -->
+
+<beans:beans xmlns="http://www.springframework.org/schema/osgi"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans"
+ xsi:schemaLocation="http://www.springframework.org/schema/osgi
+ http://www.springframework.org/schema/osgi/spring-osgi.xsd
+ http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <reference id="dblib.dataSource">
+ <interfaces>
+ <beans:value>javax.sql.DataSource</beans:value>
+ <beans:value>org.openecomp.sdnc.sli.resource.dblib.DbLibService</beans:value>
+ </interfaces>
+ </reference>
+
+ <service ref="resourceAllocator" interface="org.openecomp.sdnc.ra.ResourceAllocator" />
+
+</beans:beans>
diff --git a/resource-assignment/provider/src/main/resources/resource-allocator.properties b/resource-assignment/provider/src/main/resources/resource-allocator.properties
new file mode 100644
index 000000000..1a2cf0c78
--- /dev/null
+++ b/resource-assignment/provider/src/main/resources/resource-allocator.properties
@@ -0,0 +1,26 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 ONAP Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+org.openecomp.sdnc.sli.dbtype = jdbc
+org.openecomp.sdnc.sli.jdbc.url = jdbc:mysql://dbhost:3306/sdnctl
+org.openecomp.sdnc.sli.jdbc.database = sdnctl
+org.openecomp.sdnc.sli.jdbc.user = sdnctl
+org.openecomp.sdnc.sli.jdbc.password = gamma
diff --git a/resource-assignment/provider/src/main/resources/sql/001_resource_rule_ddl.sql b/resource-assignment/provider/src/main/resources/sql/001_resource_rule_ddl.sql
new file mode 100644
index 000000000..ea60c62dc
--- /dev/null
+++ b/resource-assignment/provider/src/main/resources/sql/001_resource_rule_ddl.sql
@@ -0,0 +1,32 @@
+---
+-- ============LICENSE_START=======================================================
+-- openECOMP : SDN-C
+-- ================================================================================
+-- Copyright (C) 2017 ONAP Intellectual Property. All rights
+-- reserved.
+-- ================================================================================
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+-- http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- ============LICENSE_END=========================================================
+---
+
+CREATE TABLE resource_rule (
+ resource_rule_id SERIAL PRIMARY KEY,
+ resource_name VARCHAR(50) NOT NULL,
+ end_point_position VARCHAR(50) NOT NULL,
+ service_expression VARCHAR(2000) NOT NULL,
+ equipment_level VARCHAR(50) NOT NULL,
+ equipment_expression VARCHAR(2000) NOT NULL,
+ allocation_expression VARCHAR(2000) NOT NULL,
+ soft_limit_expression VARCHAR(2000) NOT NULL,
+ hard_limit_expression VARCHAR(2000) NOT NULL
+);
diff --git a/resource-assignment/provider/src/main/resources/sql/002_max_port_speed_ddl.sql b/resource-assignment/provider/src/main/resources/sql/002_max_port_speed_ddl.sql
new file mode 100644
index 000000000..2aa66ac80
--- /dev/null
+++ b/resource-assignment/provider/src/main/resources/sql/002_max_port_speed_ddl.sql
@@ -0,0 +1,29 @@
+---
+-- ============LICENSE_START=======================================================
+-- openECOMP : SDN-C
+-- ================================================================================
+-- Copyright (C) 2017 ONAP Intellectual Property. All rights
+-- reserved.
+-- ================================================================================
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+-- http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- ============LICENSE_END=========================================================
+---
+
+CREATE TABLE max_port_speed (
+ max_port_speed_id SERIAL PRIMARY KEY,
+ image_file_name VARCHAR(50) NOT NULL,
+ end_point_position VARCHAR(50) NOT NULL,
+ interface_name VARCHAR(100) NOT NULL,
+ max_speed BIGINT NOT NULL,
+ unit VARCHAR(10) NOT NULL
+);
diff --git a/resource-assignment/provider/src/main/resources/sql/003_max_server_speed_ddl.sql b/resource-assignment/provider/src/main/resources/sql/003_max_server_speed_ddl.sql
new file mode 100644
index 000000000..671117e7d
--- /dev/null
+++ b/resource-assignment/provider/src/main/resources/sql/003_max_server_speed_ddl.sql
@@ -0,0 +1,28 @@
+---
+-- ============LICENSE_START=======================================================
+-- openECOMP : SDN-C
+-- ================================================================================
+-- Copyright (C) 2017 ONAP Intellectual Property. All rights
+-- reserved.
+-- ================================================================================
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+-- http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- ============LICENSE_END=========================================================
+---
+
+CREATE TABLE max_server_speed (
+ max_server_speed_id SERIAL PRIMARY KEY,
+ server_model VARCHAR(50) NOT NULL,
+ evc_count SMALLINT NOT NULL,
+ max_speed BIGINT NOT NULL,
+ unit VARCHAR(10) NOT NULL
+);