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>