diff options
Diffstat (limited to 'resource-assignment/provider/src/main/resources')
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 +); |