Initial OpenECOMP MSO commit
Change-Id: Ia6a7574859480717402cc2f22534d9973a78fa6d
Signed-off-by: ChrisC <cc697w@intl.att.com>
diff --git a/mso-catalog-db/src/main/resources/VnfResource.hbm.xml b/mso-catalog-db/src/main/resources/VnfResource.hbm.xml
new file mode 100644
index 0000000..4c9e3b5
--- /dev/null
+++ b/mso-catalog-db/src/main/resources/VnfResource.hbm.xml
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ============LICENSE_START=======================================================
+ ECOMP MSO
+ ================================================================================
+ Copyright (C) 2017 AT&T 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=========================================================
+ -->
+
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping package="org.openecomp.mso.db.catalog.beans">
+ <class name="VnfResource" table="VNF_RESOURCE">
+ <meta attribute="class-description">
+ This class describes a VNF Resource
+ </meta>
+
+ <id name="id" type="int" column="id">
+ <generator class="native"/>
+ </id>
+ <properties name="uk1" unique="true">
+ <property name="vnfType" type="string" >
+ <column name="VNF_TYPE" not-null="true" length="200"/>
+ </property>
+ <property name="version" type="string" >
+ <column name="ASDC_SERVICE_MODEL_VERSION" not-null="true" length="20"/>
+ </property>
+ </properties>
+ <property name="orchestrationMode" type="string" >
+ <column name="ORCHESTRATION_MODE" not-null="true" length="20"/>
+ </property>
+ <property name="description" type="string" >
+ <column name="DESCRIPTION" not-null="false" length="1200"/>
+ </property>
+
+ <property name="templateId" type="int" not-null="false">
+ <column name="TEMPLATE_ID" not-null="false"/>
+ </property>
+ <property name="environmentId" type="int">
+ <column name="ENVIRONMENT_ID" not-null="false"/>
+ </property>
+ <property name="created" type="timestamp" generated="insert" update="false" insert="false" >
+ <column name="CREATION_TIMESTAMP" not-null="true"/>
+ </property>
+ <property name="asdcUuid" type="string" >
+ <column name="ASDC_UUID" not-null="false" length="200"/>
+ </property>
+ <property name="aicVersionMin" type="string" >
+ <column name="AIC_VERSION_MIN" not-null="false" length="20"/>
+ </property>
+ <property name="aicVersionMax" type="string" >
+ <column name="AIC_VERSION_MAX" not-null="false" length="20"/>
+ </property>
+ <property name="modelInvariantUuid" type="string" >
+ <column name="MODEL_INVARIANT_UUID" not-null="false" length="200"/>
+ </property>
+ <property name="modelVersion" type="string" >
+ <column name="MODEL_VERSION" not-null="true" length="20"/>
+ </property>
+ <property name="modelCustomizationName" type="string" >
+ <column name="MODEL_CUSTOMIZATION_NAME" not-null="false" length="200"/>
+ </property>
+ <property name="modelName" type="string" >
+ <column name="MODEL_NAME" not-null="false" length="200"/>
+ </property>
+ <property name="serviceModelInvariantUUID" type="string" >
+ <column name="SERVICE_MODEL_INVARIANT_UUID" not-null="false" length="200"/>
+ </property>
+
+ <map name="heatFiles" cascade="all">
+ <key column="VNF_RESOURCE_ID" foreign-key="none"/>
+ <map-key column="FILE_NAME" type="string"/>
+ <one-to-many class="HeatFiles"/>
+ </map>
+
+ </class>
+
+ <class name="HeatFiles" table="HEAT_FILES">
+ <meta attribute="class-description">
+ This class describes a HEAT Template File
+ </meta>
+
+ <id name="id" type="int" column="id">
+ <generator class="native"/>
+ </id>
+
+ <properties name="uk_heat_files" unique="true">
+ <property name="fileName" type="string" >
+ <column name="FILE_NAME" not-null="true" length="200"/>
+ </property>
+ <property name="asdcResourceName" type="string" >
+ <column name="ASDC_RESOURCE_NAME" not-null="true" length="100"/>
+ </property>
+ <property name="version" type="string" >
+ <column name="VERSION" not-null="true" length="20"/>
+ </property>
+ </properties>
+
+ <property name="vnfResourceId" type="int">
+ <column name="VNF_RESOURCE_ID" not-null="false"/>
+ </property>
+ <property name="description" type="string" >
+ <column name="DESCRIPTION" not-null="false" length="1200"/>
+ </property>
+ <property name="fileBody" type="text">
+ <column name="FILE_BODY" not-null="true"/>
+ </property>
+ <property name="created" type="timestamp" generated="insert" update="false" insert="false">
+ <column name="CREATION_TIMESTAMP" not-null="true"/>
+ </property>
+
+ <property name="asdcUuid" type="string" >
+ <column name="ASDC_UUID" not-null="false" length="200"/>
+ </property>
+ <property name="asdcLabel" type="string" >
+ <column name="ASDC_LABEL" not-null="false" length="200"/>
+ </property>
+
+
+ </class>
+
+</hibernate-mapping>