aboutsummaryrefslogtreecommitdiffstats
path: root/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core
diff options
context:
space:
mode:
Diffstat (limited to 'ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core')
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CoreFactory.java90
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CorePackage.java999
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenStackRequest.java71
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestDelete.java97
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestPoll.java38
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRule.java155
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRuleProtocol.java283
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/VirtualMachineType.java354
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CoreFactoryImpl.java200
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CorePackageImpl.java519
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenStackRequestImpl.java184
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestDeleteImpl.java237
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestPollImpl.java60
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/SecurityRuleImpl.java348
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/VirtualMachineTypeImpl.java760
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreAdapterFactory.java233
-rw-r--r--ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreSwitch.java236
17 files changed, 4864 insertions, 0 deletions
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CoreFactory.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CoreFactory.java
new file mode 100644
index 0000000..6724e3c
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CoreFactory.java
@@ -0,0 +1,90 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.CorePackage
+ * @generated
+ */
+public interface CoreFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CoreFactory eINSTANCE = org.openecomp.ncomp.openstack.core.impl.CoreFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Openstack Request Delete</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Openstack Request Delete</em>'.
+ * @generated
+ */
+ OpenstackRequestDelete createOpenstackRequestDelete();
+
+ /**
+ * Returns a new object of class '<em>Openstack Request Poll</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Openstack Request Poll</em>'.
+ * @generated
+ */
+ OpenstackRequestPoll createOpenstackRequestPoll();
+
+ /**
+ * Returns a new object of class '<em>Virtual Machine Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Virtual Machine Type</em>'.
+ * @generated
+ */
+ VirtualMachineType createVirtualMachineType();
+
+ /**
+ * Returns a new object of class '<em>Security Rule</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Security Rule</em>'.
+ * @generated
+ */
+ SecurityRule createSecurityRule();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ CorePackage getCorePackage();
+
+} //CoreFactory
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CorePackage.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CorePackage.java
new file mode 100644
index 0000000..a67d8db
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/CorePackage.java
@@ -0,0 +1,999 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.CoreFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/ncomp-openstack-model/src/main/xcore-gen' basePackage='org.openecomp.ncomp.openstack'"
+ * @generated
+ */
+public interface CorePackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "core";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.ncomp.openstack.core";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "core";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CorePackage eINSTANCE = org.openecomp.ncomp.openstack.core.impl.CorePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.ncomp.openstack.core.impl.OpenStackRequestImpl <em>Open Stack Request</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.OpenStackRequestImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getOpenStackRequest()
+ * @generated
+ */
+ int OPEN_STACK_REQUEST = 0;
+
+ /**
+ * The feature id for the '<em><b>Project Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPEN_STACK_REQUEST__PROJECT_NAME = 0;
+
+ /**
+ * The number of structural features of the '<em>Open Stack Request</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPEN_STACK_REQUEST_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Open Stack Request</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPEN_STACK_REQUEST_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.ncomp.openstack.core.impl.OpenstackRequestDeleteImpl <em>Openstack Request Delete</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.OpenstackRequestDeleteImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getOpenstackRequestDelete()
+ * @generated
+ */
+ int OPENSTACK_REQUEST_DELETE = 1;
+
+ /**
+ * The feature id for the '<em><b>Project Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_DELETE__PROJECT_NAME = OPEN_STACK_REQUEST__PROJECT_NAME;
+
+ /**
+ * The feature id for the '<em><b>Object Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_DELETE__OBJECT_TYPE = OPEN_STACK_REQUEST_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Object Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_DELETE__OBJECT_NAME = OPEN_STACK_REQUEST_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Openstack Request Delete</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_DELETE_FEATURE_COUNT = OPEN_STACK_REQUEST_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Openstack Request Delete</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_DELETE_OPERATION_COUNT = OPEN_STACK_REQUEST_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.ncomp.openstack.core.impl.OpenstackRequestPollImpl <em>Openstack Request Poll</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.OpenstackRequestPollImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getOpenstackRequestPoll()
+ * @generated
+ */
+ int OPENSTACK_REQUEST_POLL = 2;
+
+ /**
+ * The feature id for the '<em><b>Project Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_POLL__PROJECT_NAME = OPEN_STACK_REQUEST__PROJECT_NAME;
+
+ /**
+ * The number of structural features of the '<em>Openstack Request Poll</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_POLL_FEATURE_COUNT = OPEN_STACK_REQUEST_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Openstack Request Poll</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPENSTACK_REQUEST_POLL_OPERATION_COUNT = OPEN_STACK_REQUEST_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl <em>Virtual Machine Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getVirtualMachineType()
+ * @generated
+ */
+ int VIRTUAL_MACHINE_TYPE = 3;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__NAME = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__LAST_POLLED = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__LAST_CHANGED = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__CREATED = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__DESCRIPTION = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Number Of Cores</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Memory Size MB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Root Disk Size GB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Disk Size GB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Volume Size GB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Image Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__IMAGE_NAME = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Flavor Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__FLAVOR_NAME = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Need Public Ip</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the '<em><b>Deployment Status</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the '<em><b>Incoming Security Rules</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the '<em><b>Outbound Security Rules</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 11;
+
+ /**
+ * The number of structural features of the '<em>Virtual Machine Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE_FEATURE_COUNT = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 12;
+
+ /**
+ * The number of operations of the '<em>Virtual Machine Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIRTUAL_MACHINE_TYPE_OPERATION_COUNT = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl <em>Security Rule</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getSecurityRule()
+ * @generated
+ */
+ int SECURITY_RULE = 4;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__NAME = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__LAST_POLLED = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__LAST_CHANGED = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__CREATED = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Port Range Start</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__PORT_RANGE_START = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Port Range End</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__PORT_RANGE_END = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__PREFIX = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Ip Protocol</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE__IP_PROTOCOL = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Security Rule</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE_FEATURE_COUNT = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The number of operations of the '<em>Security Rule</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_RULE_OPERATION_COUNT = org.openecomp.ncomp.core.CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.ncomp.openstack.core.SecurityRuleProtocol <em>Security Rule Protocol</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.SecurityRuleProtocol
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getSecurityRuleProtocol()
+ * @generated
+ */
+ int SECURITY_RULE_PROTOCOL = 5;
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.ncomp.openstack.core.OpenStackRequest <em>Open Stack Request</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Open Stack Request</em>'.
+ * @see org.openecomp.ncomp.openstack.core.OpenStackRequest
+ * @generated
+ */
+ EClass getOpenStackRequest();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.OpenStackRequest#getProjectName <em>Project Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Project Name</em>'.
+ * @see org.openecomp.ncomp.openstack.core.OpenStackRequest#getProjectName()
+ * @see #getOpenStackRequest()
+ * @generated
+ */
+ EAttribute getOpenStackRequest_ProjectName();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete <em>Openstack Request Delete</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Openstack Request Delete</em>'.
+ * @see org.openecomp.ncomp.openstack.core.OpenstackRequestDelete
+ * @generated
+ */
+ EClass getOpenstackRequestDelete();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectType <em>Object Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Object Type</em>'.
+ * @see org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectType()
+ * @see #getOpenstackRequestDelete()
+ * @generated
+ */
+ EAttribute getOpenstackRequestDelete_ObjectType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectName <em>Object Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Object Name</em>'.
+ * @see org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectName()
+ * @see #getOpenstackRequestDelete()
+ * @generated
+ */
+ EAttribute getOpenstackRequestDelete_ObjectName();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestPoll <em>Openstack Request Poll</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Openstack Request Poll</em>'.
+ * @see org.openecomp.ncomp.openstack.core.OpenstackRequestPoll
+ * @generated
+ */
+ EClass getOpenstackRequestPoll();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType <em>Virtual Machine Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Virtual Machine Type</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType
+ * @generated
+ */
+ EClass getVirtualMachineType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getDescription()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_Description();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getNumberOfCores <em>Number Of Cores</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Number Of Cores</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getNumberOfCores()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_NumberOfCores();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getMemorySizeMB <em>Memory Size MB</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Memory Size MB</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getMemorySizeMB()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_MemorySizeMB();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getRootDiskSizeGB <em>Root Disk Size GB</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Root Disk Size GB</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getRootDiskSizeGB()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_RootDiskSizeGB();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDiskSizeGB <em>Disk Size GB</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Disk Size GB</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getDiskSizeGB()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_DiskSizeGB();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getVolumeSizeGB <em>Volume Size GB</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Volume Size GB</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getVolumeSizeGB()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_VolumeSizeGB();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getImageName <em>Image Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Image Name</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getImageName()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_ImageName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getFlavorName <em>Flavor Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Flavor Name</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getFlavorName()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_FlavorName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#isNeedPublicIp <em>Need Public Ip</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Need Public Ip</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#isNeedPublicIp()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_NeedPublicIp();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDeploymentStatus <em>Deployment Status</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Deployment Status</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getDeploymentStatus()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EAttribute getVirtualMachineType_DeploymentStatus();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getIncomingSecurityRules <em>Incoming Security Rules</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Incoming Security Rules</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getIncomingSecurityRules()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EReference getVirtualMachineType_IncomingSecurityRules();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getOutboundSecurityRules <em>Outbound Security Rules</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Outbound Security Rules</em>'.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType#getOutboundSecurityRules()
+ * @see #getVirtualMachineType()
+ * @generated
+ */
+ EReference getVirtualMachineType_OutboundSecurityRules();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.ncomp.openstack.core.SecurityRule <em>Security Rule</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Security Rule</em>'.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRule
+ * @generated
+ */
+ EClass getSecurityRule();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeStart <em>Port Range Start</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Port Range Start</em>'.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeStart()
+ * @see #getSecurityRule()
+ * @generated
+ */
+ EAttribute getSecurityRule_PortRangeStart();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeEnd <em>Port Range End</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Port Range End</em>'.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeEnd()
+ * @see #getSecurityRule()
+ * @generated
+ */
+ EAttribute getSecurityRule_PortRangeEnd();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPrefix <em>Prefix</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Prefix</em>'.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRule#getPrefix()
+ * @see #getSecurityRule()
+ * @generated
+ */
+ EAttribute getSecurityRule_Prefix();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getIpProtocol <em>Ip Protocol</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Ip Protocol</em>'.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRule#getIpProtocol()
+ * @see #getSecurityRule()
+ * @generated
+ */
+ EAttribute getSecurityRule_IpProtocol();
+
+ /**
+ * Returns the meta object for enum '{@link org.openecomp.ncomp.openstack.core.SecurityRuleProtocol <em>Security Rule Protocol</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Security Rule Protocol</em>'.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRuleProtocol
+ * @generated
+ */
+ EEnum getSecurityRuleProtocol();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ CoreFactory getCoreFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.ncomp.openstack.core.impl.OpenStackRequestImpl <em>Open Stack Request</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.OpenStackRequestImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getOpenStackRequest()
+ * @generated
+ */
+ EClass OPEN_STACK_REQUEST = eINSTANCE.getOpenStackRequest();
+
+ /**
+ * The meta object literal for the '<em><b>Project Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute OPEN_STACK_REQUEST__PROJECT_NAME = eINSTANCE.getOpenStackRequest_ProjectName();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.ncomp.openstack.core.impl.OpenstackRequestDeleteImpl <em>Openstack Request Delete</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.OpenstackRequestDeleteImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getOpenstackRequestDelete()
+ * @generated
+ */
+ EClass OPENSTACK_REQUEST_DELETE = eINSTANCE.getOpenstackRequestDelete();
+
+ /**
+ * The meta object literal for the '<em><b>Object Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute OPENSTACK_REQUEST_DELETE__OBJECT_TYPE = eINSTANCE.getOpenstackRequestDelete_ObjectType();
+
+ /**
+ * The meta object literal for the '<em><b>Object Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute OPENSTACK_REQUEST_DELETE__OBJECT_NAME = eINSTANCE.getOpenstackRequestDelete_ObjectName();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.ncomp.openstack.core.impl.OpenstackRequestPollImpl <em>Openstack Request Poll</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.OpenstackRequestPollImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getOpenstackRequestPoll()
+ * @generated
+ */
+ EClass OPENSTACK_REQUEST_POLL = eINSTANCE.getOpenstackRequestPoll();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl <em>Virtual Machine Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getVirtualMachineType()
+ * @generated
+ */
+ EClass VIRTUAL_MACHINE_TYPE = eINSTANCE.getVirtualMachineType();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__DESCRIPTION = eINSTANCE.getVirtualMachineType_Description();
+
+ /**
+ * The meta object literal for the '<em><b>Number Of Cores</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES = eINSTANCE.getVirtualMachineType_NumberOfCores();
+
+ /**
+ * The meta object literal for the '<em><b>Memory Size MB</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB = eINSTANCE.getVirtualMachineType_MemorySizeMB();
+
+ /**
+ * The meta object literal for the '<em><b>Root Disk Size GB</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB = eINSTANCE.getVirtualMachineType_RootDiskSizeGB();
+
+ /**
+ * The meta object literal for the '<em><b>Disk Size GB</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB = eINSTANCE.getVirtualMachineType_DiskSizeGB();
+
+ /**
+ * The meta object literal for the '<em><b>Volume Size GB</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB = eINSTANCE.getVirtualMachineType_VolumeSizeGB();
+
+ /**
+ * The meta object literal for the '<em><b>Image Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__IMAGE_NAME = eINSTANCE.getVirtualMachineType_ImageName();
+
+ /**
+ * The meta object literal for the '<em><b>Flavor Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__FLAVOR_NAME = eINSTANCE.getVirtualMachineType_FlavorName();
+
+ /**
+ * The meta object literal for the '<em><b>Need Public Ip</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP = eINSTANCE.getVirtualMachineType_NeedPublicIp();
+
+ /**
+ * The meta object literal for the '<em><b>Deployment Status</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS = eINSTANCE.getVirtualMachineType_DeploymentStatus();
+
+ /**
+ * The meta object literal for the '<em><b>Incoming Security Rules</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES = eINSTANCE.getVirtualMachineType_IncomingSecurityRules();
+
+ /**
+ * The meta object literal for the '<em><b>Outbound Security Rules</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES = eINSTANCE.getVirtualMachineType_OutboundSecurityRules();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl <em>Security Rule</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getSecurityRule()
+ * @generated
+ */
+ EClass SECURITY_RULE = eINSTANCE.getSecurityRule();
+
+ /**
+ * The meta object literal for the '<em><b>Port Range Start</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECURITY_RULE__PORT_RANGE_START = eINSTANCE.getSecurityRule_PortRangeStart();
+
+ /**
+ * The meta object literal for the '<em><b>Port Range End</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECURITY_RULE__PORT_RANGE_END = eINSTANCE.getSecurityRule_PortRangeEnd();
+
+ /**
+ * The meta object literal for the '<em><b>Prefix</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECURITY_RULE__PREFIX = eINSTANCE.getSecurityRule_Prefix();
+
+ /**
+ * The meta object literal for the '<em><b>Ip Protocol</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECURITY_RULE__IP_PROTOCOL = eINSTANCE.getSecurityRule_IpProtocol();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.ncomp.openstack.core.SecurityRuleProtocol <em>Security Rule Protocol</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.SecurityRuleProtocol
+ * @see org.openecomp.ncomp.openstack.core.impl.CorePackageImpl#getSecurityRuleProtocol()
+ * @generated
+ */
+ EEnum SECURITY_RULE_PROTOCOL = eINSTANCE.getSecurityRuleProtocol();
+
+ }
+
+} //CorePackage
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenStackRequest.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenStackRequest.java
new file mode 100644
index 0000000..9bd9329
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenStackRequest.java
@@ -0,0 +1,71 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Open Stack Request</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.OpenStackRequest#getProjectName <em>Project Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getOpenStackRequest()
+ * @model abstract="true"
+ * @generated
+ */
+public interface OpenStackRequest extends EObject {
+ /**
+ * Returns the value of the '<em><b>Project Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Project Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Project Name</em>' attribute.
+ * @see #setProjectName(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getOpenStackRequest_ProjectName()
+ * @model unique="false"
+ * @generated
+ */
+ String getProjectName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.OpenStackRequest#getProjectName <em>Project Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Project Name</em>' attribute.
+ * @see #getProjectName()
+ * @generated
+ */
+ void setProjectName(String value);
+
+} // OpenStackRequest
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestDelete.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestDelete.java
new file mode 100644
index 0000000..ec7b0ba
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestDelete.java
@@ -0,0 +1,97 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Openstack Request Delete</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectType <em>Object Type</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectName <em>Object Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getOpenstackRequestDelete()
+ * @model
+ * @generated
+ */
+public interface OpenstackRequestDelete extends OpenStackRequest {
+ /**
+ * Returns the value of the '<em><b>Object Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Object Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Object Type</em>' attribute.
+ * @see #setObjectType(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getOpenstackRequestDelete_ObjectType()
+ * @model unique="false"
+ * @generated
+ */
+ String getObjectType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectType <em>Object Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Object Type</em>' attribute.
+ * @see #getObjectType()
+ * @generated
+ */
+ void setObjectType(String value);
+
+ /**
+ * Returns the value of the '<em><b>Object Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Object Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Object Name</em>' attribute.
+ * @see #setObjectName(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getOpenstackRequestDelete_ObjectName()
+ * @model unique="false"
+ * @generated
+ */
+ String getObjectName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete#getObjectName <em>Object Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Object Name</em>' attribute.
+ * @see #getObjectName()
+ * @generated
+ */
+ void setObjectName(String value);
+
+} // OpenstackRequestDelete
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestPoll.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestPoll.java
new file mode 100644
index 0000000..2b7db9a
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/OpenstackRequestPoll.java
@@ -0,0 +1,38 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Openstack Request Poll</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getOpenstackRequestPoll()
+ * @model
+ * @generated
+ */
+public interface OpenstackRequestPoll extends OpenStackRequest {
+} // OpenstackRequestPoll
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRule.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRule.java
new file mode 100644
index 0000000..ed5b13c
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRule.java
@@ -0,0 +1,155 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Security Rule</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeStart <em>Port Range Start</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeEnd <em>Port Range End</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPrefix <em>Prefix</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.SecurityRule#getIpProtocol <em>Ip Protocol</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getSecurityRule()
+ * @model
+ * @generated
+ */
+public interface SecurityRule extends NamedEntity {
+ /**
+ * Returns the value of the '<em><b>Port Range Start</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Port Range Start</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Port Range Start</em>' attribute.
+ * @see #setPortRangeStart(Integer)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getSecurityRule_PortRangeStart()
+ * @model unique="false"
+ * @generated
+ */
+ Integer getPortRangeStart();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeStart <em>Port Range Start</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Port Range Start</em>' attribute.
+ * @see #getPortRangeStart()
+ * @generated
+ */
+ void setPortRangeStart(Integer value);
+
+ /**
+ * Returns the value of the '<em><b>Port Range End</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Port Range End</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Port Range End</em>' attribute.
+ * @see #setPortRangeEnd(Integer)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getSecurityRule_PortRangeEnd()
+ * @model unique="false"
+ * @generated
+ */
+ Integer getPortRangeEnd();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPortRangeEnd <em>Port Range End</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Port Range End</em>' attribute.
+ * @see #getPortRangeEnd()
+ * @generated
+ */
+ void setPortRangeEnd(Integer value);
+
+ /**
+ * Returns the value of the '<em><b>Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Prefix</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Prefix</em>' attribute.
+ * @see #setPrefix(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getSecurityRule_Prefix()
+ * @model unique="false"
+ * @generated
+ */
+ String getPrefix();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getPrefix <em>Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Prefix</em>' attribute.
+ * @see #getPrefix()
+ * @generated
+ */
+ void setPrefix(String value);
+
+ /**
+ * Returns the value of the '<em><b>Ip Protocol</b></em>' attribute.
+ * The literals are from the enumeration {@link org.openecomp.ncomp.openstack.core.SecurityRuleProtocol}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Ip Protocol</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Ip Protocol</em>' attribute.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRuleProtocol
+ * @see #setIpProtocol(SecurityRuleProtocol)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getSecurityRule_IpProtocol()
+ * @model unique="false"
+ * @generated
+ */
+ SecurityRuleProtocol getIpProtocol();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.SecurityRule#getIpProtocol <em>Ip Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Ip Protocol</em>' attribute.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRuleProtocol
+ * @see #getIpProtocol()
+ * @generated
+ */
+ void setIpProtocol(SecurityRuleProtocol value);
+
+} // SecurityRule
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRuleProtocol.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRuleProtocol.java
new file mode 100644
index 0000000..1650fbb
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/SecurityRuleProtocol.java
@@ -0,0 +1,283 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Security Rule Protocol</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getSecurityRuleProtocol()
+ * @model
+ * @generated
+ */
+public enum SecurityRuleProtocol implements Enumerator {
+ /**
+ * The '<em><b>None</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #NONE_VALUE
+ * @generated
+ * @ordered
+ */
+ NONE(1000, "none", "none"),
+
+ /**
+ * The '<em><b>Tcp</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #TCP_VALUE
+ * @generated
+ * @ordered
+ */
+ TCP(17, "tcp", "tcp"),
+
+ /**
+ * The '<em><b>Udp</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UDP_VALUE
+ * @generated
+ * @ordered
+ */
+ UDP(6, "udp", "udp"),
+
+ /**
+ * The '<em><b>Imcp</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #IMCP_VALUE
+ * @generated
+ * @ordered
+ */
+ IMCP(0, "imcp", "imcp");
+
+ /**
+ * The '<em><b>None</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>None</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #NONE
+ * @model name="none"
+ * @generated
+ * @ordered
+ */
+ public static final int NONE_VALUE = 1000;
+
+ /**
+ * The '<em><b>Tcp</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Tcp</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #TCP
+ * @model name="tcp"
+ * @generated
+ * @ordered
+ */
+ public static final int TCP_VALUE = 17;
+
+ /**
+ * The '<em><b>Udp</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Udp</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UDP
+ * @model name="udp"
+ * @generated
+ * @ordered
+ */
+ public static final int UDP_VALUE = 6;
+
+ /**
+ * The '<em><b>Imcp</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Imcp</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #IMCP
+ * @model name="imcp"
+ * @generated
+ * @ordered
+ */
+ public static final int IMCP_VALUE = 0;
+
+ /**
+ * An array of all the '<em><b>Security Rule Protocol</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final SecurityRuleProtocol[] VALUES_ARRAY =
+ new SecurityRuleProtocol[] {
+ NONE,
+ TCP,
+ UDP,
+ IMCP,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Security Rule Protocol</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<SecurityRuleProtocol> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Security Rule Protocol</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static SecurityRuleProtocol get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ SecurityRuleProtocol result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Security Rule Protocol</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static SecurityRuleProtocol getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ SecurityRuleProtocol result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Security Rule Protocol</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static SecurityRuleProtocol get(int value) {
+ switch (value) {
+ case NONE_VALUE: return NONE;
+ case TCP_VALUE: return TCP;
+ case UDP_VALUE: return UDP;
+ case IMCP_VALUE: return IMCP;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private SecurityRuleProtocol(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //SecurityRuleProtocol
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/VirtualMachineType.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/VirtualMachineType.java
new file mode 100644
index 0000000..131f6e8
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/VirtualMachineType.java
@@ -0,0 +1,354 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core;
+
+import org.openecomp.ncomp.core.DeploymentStatus;
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Virtual Machine Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDescription <em>Description</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getNumberOfCores <em>Number Of Cores</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getMemorySizeMB <em>Memory Size MB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getRootDiskSizeGB <em>Root Disk Size GB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDiskSizeGB <em>Disk Size GB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getVolumeSizeGB <em>Volume Size GB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getImageName <em>Image Name</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getFlavorName <em>Flavor Name</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#isNeedPublicIp <em>Need Public Ip</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDeploymentStatus <em>Deployment Status</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getIncomingSecurityRules <em>Incoming Security Rules</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getOutboundSecurityRules <em>Outbound Security Rules</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType()
+ * @model
+ * @generated
+ */
+public interface VirtualMachineType extends NamedEntity {
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Description</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_Description()
+ * @model unique="false"
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
+ /**
+ * Returns the value of the '<em><b>Number Of Cores</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Number Of Cores</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Number Of Cores</em>' attribute.
+ * @see #setNumberOfCores(int)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_NumberOfCores()
+ * @model unique="false"
+ * @generated
+ */
+ int getNumberOfCores();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getNumberOfCores <em>Number Of Cores</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Number Of Cores</em>' attribute.
+ * @see #getNumberOfCores()
+ * @generated
+ */
+ void setNumberOfCores(int value);
+
+ /**
+ * Returns the value of the '<em><b>Memory Size MB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Memory Size MB</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Memory Size MB</em>' attribute.
+ * @see #setMemorySizeMB(int)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_MemorySizeMB()
+ * @model unique="false"
+ * @generated
+ */
+ int getMemorySizeMB();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getMemorySizeMB <em>Memory Size MB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Memory Size MB</em>' attribute.
+ * @see #getMemorySizeMB()
+ * @generated
+ */
+ void setMemorySizeMB(int value);
+
+ /**
+ * Returns the value of the '<em><b>Root Disk Size GB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Root Disk Size GB</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Root Disk Size GB</em>' attribute.
+ * @see #setRootDiskSizeGB(int)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_RootDiskSizeGB()
+ * @model unique="false"
+ * @generated
+ */
+ int getRootDiskSizeGB();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getRootDiskSizeGB <em>Root Disk Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Root Disk Size GB</em>' attribute.
+ * @see #getRootDiskSizeGB()
+ * @generated
+ */
+ void setRootDiskSizeGB(int value);
+
+ /**
+ * Returns the value of the '<em><b>Disk Size GB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Disk Size GB</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Disk Size GB</em>' attribute.
+ * @see #setDiskSizeGB(int)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_DiskSizeGB()
+ * @model unique="false"
+ * @generated
+ */
+ int getDiskSizeGB();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDiskSizeGB <em>Disk Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Disk Size GB</em>' attribute.
+ * @see #getDiskSizeGB()
+ * @generated
+ */
+ void setDiskSizeGB(int value);
+
+ /**
+ * Returns the value of the '<em><b>Volume Size GB</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Volume Size GB</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Volume Size GB</em>' attribute.
+ * @see #setVolumeSizeGB(int)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_VolumeSizeGB()
+ * @model unique="false"
+ * @generated
+ */
+ int getVolumeSizeGB();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getVolumeSizeGB <em>Volume Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Volume Size GB</em>' attribute.
+ * @see #getVolumeSizeGB()
+ * @generated
+ */
+ void setVolumeSizeGB(int value);
+
+ /**
+ * Returns the value of the '<em><b>Image Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Image Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Image Name</em>' attribute.
+ * @see #setImageName(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_ImageName()
+ * @model unique="false"
+ * @generated
+ */
+ String getImageName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getImageName <em>Image Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Image Name</em>' attribute.
+ * @see #getImageName()
+ * @generated
+ */
+ void setImageName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Flavor Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Flavor Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Flavor Name</em>' attribute.
+ * @see #setFlavorName(String)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_FlavorName()
+ * @model unique="false"
+ * @generated
+ */
+ String getFlavorName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getFlavorName <em>Flavor Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Flavor Name</em>' attribute.
+ * @see #getFlavorName()
+ * @generated
+ */
+ void setFlavorName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Need Public Ip</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Need Public Ip</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Need Public Ip</em>' attribute.
+ * @see #setNeedPublicIp(boolean)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_NeedPublicIp()
+ * @model unique="false"
+ * @generated
+ */
+ boolean isNeedPublicIp();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#isNeedPublicIp <em>Need Public Ip</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Need Public Ip</em>' attribute.
+ * @see #isNeedPublicIp()
+ * @generated
+ */
+ void setNeedPublicIp(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Deployment Status</b></em>' attribute.
+ * The literals are from the enumeration {@link org.openecomp.ncomp.core.DeploymentStatus}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Deployment Status</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Deployment Status</em>' attribute.
+ * @see org.openecomp.ncomp.core.DeploymentStatus
+ * @see #setDeploymentStatus(DeploymentStatus)
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_DeploymentStatus()
+ * @model unique="false"
+ * @generated
+ */
+ DeploymentStatus getDeploymentStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType#getDeploymentStatus <em>Deployment Status</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Deployment Status</em>' attribute.
+ * @see org.openecomp.ncomp.core.DeploymentStatus
+ * @see #getDeploymentStatus()
+ * @generated
+ */
+ void setDeploymentStatus(DeploymentStatus value);
+
+ /**
+ * Returns the value of the '<em><b>Incoming Security Rules</b></em>' containment reference list.
+ * The list contents are of type {@link org.openecomp.ncomp.openstack.core.SecurityRule}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Incoming Security Rules</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Incoming Security Rules</em>' containment reference list.
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_IncomingSecurityRules()
+ * @model containment="true"
+ * @generated
+ */
+ EList<SecurityRule> getIncomingSecurityRules();
+
+ /**
+ * Returns the value of the '<em><b>Outbound Security Rules</b></em>' containment reference list.
+ * The list contents are of type {@link org.openecomp.ncomp.openstack.core.SecurityRule}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Outbound Security Rules</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Outbound Security Rules</em>' containment reference list.
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#getVirtualMachineType_OutboundSecurityRules()
+ * @model containment="true"
+ * @generated
+ */
+ EList<SecurityRule> getOutboundSecurityRules();
+
+} // VirtualMachineType
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CoreFactoryImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CoreFactoryImpl.java
new file mode 100644
index 0000000..e01fe4f
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CoreFactoryImpl.java
@@ -0,0 +1,200 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.openstack.core.*;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CoreFactoryImpl extends EFactoryImpl implements CoreFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CoreFactory init() {
+ try {
+ CoreFactory theCoreFactory = (CoreFactory)EPackage.Registry.INSTANCE.getEFactory(CorePackage.eNS_URI);
+ if (theCoreFactory != null) {
+ return theCoreFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new CoreFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CoreFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case CorePackage.OPENSTACK_REQUEST_DELETE: return createOpenstackRequestDelete();
+ case CorePackage.OPENSTACK_REQUEST_POLL: return createOpenstackRequestPoll();
+ case CorePackage.VIRTUAL_MACHINE_TYPE: return createVirtualMachineType();
+ case CorePackage.SECURITY_RULE: return createSecurityRule();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case CorePackage.SECURITY_RULE_PROTOCOL:
+ return createSecurityRuleProtocolFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case CorePackage.SECURITY_RULE_PROTOCOL:
+ return convertSecurityRuleProtocolToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OpenstackRequestDelete createOpenstackRequestDelete() {
+ OpenstackRequestDeleteImpl openstackRequestDelete = new OpenstackRequestDeleteImpl();
+ return openstackRequestDelete;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OpenstackRequestPoll createOpenstackRequestPoll() {
+ OpenstackRequestPollImpl openstackRequestPoll = new OpenstackRequestPollImpl();
+ return openstackRequestPoll;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VirtualMachineType createVirtualMachineType() {
+ VirtualMachineTypeImpl virtualMachineType = new VirtualMachineTypeImpl();
+ return virtualMachineType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SecurityRule createSecurityRule() {
+ SecurityRuleImpl securityRule = new SecurityRuleImpl();
+ return securityRule;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SecurityRuleProtocol createSecurityRuleProtocolFromString(EDataType eDataType, String initialValue) {
+ SecurityRuleProtocol result = SecurityRuleProtocol.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertSecurityRuleProtocolToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CorePackage getCorePackage() {
+ return (CorePackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static CorePackage getPackage() {
+ return CorePackage.eINSTANCE;
+ }
+
+} //CoreFactoryImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CorePackageImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CorePackageImpl.java
new file mode 100644
index 0000000..220d828
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/CorePackageImpl.java
@@ -0,0 +1,519 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.openstack.core.CoreFactory;
+import org.openecomp.ncomp.openstack.core.CorePackage;
+import org.openecomp.ncomp.openstack.core.OpenStackRequest;
+import org.openecomp.ncomp.openstack.core.OpenstackRequestDelete;
+import org.openecomp.ncomp.openstack.core.OpenstackRequestPoll;
+import org.openecomp.ncomp.openstack.core.SecurityRule;
+import org.openecomp.ncomp.openstack.core.SecurityRuleProtocol;
+import org.openecomp.ncomp.openstack.core.VirtualMachineType;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CorePackageImpl extends EPackageImpl implements CorePackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass openStackRequestEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass openstackRequestDeleteEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass openstackRequestPollEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass virtualMachineTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass securityRuleEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum securityRuleProtocolEEnum = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.ncomp.openstack.core.CorePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private CorePackageImpl() {
+ super(eNS_URI, CoreFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link CorePackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static CorePackage init() {
+ if (isInited) return (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+
+ // Obtain or create and register package
+ CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CorePackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ org.openecomp.ncomp.core.CorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theCorePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theCorePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theCorePackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(CorePackage.eNS_URI, theCorePackage);
+ return theCorePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOpenStackRequest() {
+ return openStackRequestEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getOpenStackRequest_ProjectName() {
+ return (EAttribute)openStackRequestEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOpenstackRequestDelete() {
+ return openstackRequestDeleteEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getOpenstackRequestDelete_ObjectType() {
+ return (EAttribute)openstackRequestDeleteEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getOpenstackRequestDelete_ObjectName() {
+ return (EAttribute)openstackRequestDeleteEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOpenstackRequestPoll() {
+ return openstackRequestPollEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVirtualMachineType() {
+ return virtualMachineTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_Description() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_NumberOfCores() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_MemorySizeMB() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_RootDiskSizeGB() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_DiskSizeGB() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_VolumeSizeGB() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_ImageName() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_FlavorName() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_NeedPublicIp() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVirtualMachineType_DeploymentStatus() {
+ return (EAttribute)virtualMachineTypeEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVirtualMachineType_IncomingSecurityRules() {
+ return (EReference)virtualMachineTypeEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVirtualMachineType_OutboundSecurityRules() {
+ return (EReference)virtualMachineTypeEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSecurityRule() {
+ return securityRuleEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSecurityRule_PortRangeStart() {
+ return (EAttribute)securityRuleEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSecurityRule_PortRangeEnd() {
+ return (EAttribute)securityRuleEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSecurityRule_Prefix() {
+ return (EAttribute)securityRuleEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSecurityRule_IpProtocol() {
+ return (EAttribute)securityRuleEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getSecurityRuleProtocol() {
+ return securityRuleProtocolEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CoreFactory getCoreFactory() {
+ return (CoreFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ openStackRequestEClass = createEClass(OPEN_STACK_REQUEST);
+ createEAttribute(openStackRequestEClass, OPEN_STACK_REQUEST__PROJECT_NAME);
+
+ openstackRequestDeleteEClass = createEClass(OPENSTACK_REQUEST_DELETE);
+ createEAttribute(openstackRequestDeleteEClass, OPENSTACK_REQUEST_DELETE__OBJECT_TYPE);
+ createEAttribute(openstackRequestDeleteEClass, OPENSTACK_REQUEST_DELETE__OBJECT_NAME);
+
+ openstackRequestPollEClass = createEClass(OPENSTACK_REQUEST_POLL);
+
+ virtualMachineTypeEClass = createEClass(VIRTUAL_MACHINE_TYPE);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__DESCRIPTION);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__IMAGE_NAME);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__FLAVOR_NAME);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP);
+ createEAttribute(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS);
+ createEReference(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES);
+ createEReference(virtualMachineTypeEClass, VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES);
+
+ securityRuleEClass = createEClass(SECURITY_RULE);
+ createEAttribute(securityRuleEClass, SECURITY_RULE__PORT_RANGE_START);
+ createEAttribute(securityRuleEClass, SECURITY_RULE__PORT_RANGE_END);
+ createEAttribute(securityRuleEClass, SECURITY_RULE__PREFIX);
+ createEAttribute(securityRuleEClass, SECURITY_RULE__IP_PROTOCOL);
+
+ // Create enums
+ securityRuleProtocolEEnum = createEEnum(SECURITY_RULE_PROTOCOL);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+ org.openecomp.ncomp.core.CorePackage theCorePackage_1 = (org.openecomp.ncomp.core.CorePackage)EPackage.Registry.INSTANCE.getEPackage(org.openecomp.ncomp.core.CorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ openstackRequestDeleteEClass.getESuperTypes().add(this.getOpenStackRequest());
+ openstackRequestPollEClass.getESuperTypes().add(this.getOpenStackRequest());
+ virtualMachineTypeEClass.getESuperTypes().add(theCorePackage_1.getNamedEntity());
+ securityRuleEClass.getESuperTypes().add(theCorePackage_1.getNamedEntity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(openStackRequestEClass, OpenStackRequest.class, "OpenStackRequest", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getOpenStackRequest_ProjectName(), theEcorePackage.getEString(), "projectName", null, 0, 1, OpenStackRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(openstackRequestDeleteEClass, OpenstackRequestDelete.class, "OpenstackRequestDelete", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getOpenstackRequestDelete_ObjectType(), theEcorePackage.getEString(), "objectType", null, 0, 1, OpenstackRequestDelete.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getOpenstackRequestDelete_ObjectName(), theEcorePackage.getEString(), "objectName", null, 0, 1, OpenstackRequestDelete.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(openstackRequestPollEClass, OpenstackRequestPoll.class, "OpenstackRequestPoll", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(virtualMachineTypeEClass, VirtualMachineType.class, "VirtualMachineType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getVirtualMachineType_Description(), theEcorePackage.getEString(), "description", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_NumberOfCores(), theEcorePackage.getEInt(), "numberOfCores", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_MemorySizeMB(), theEcorePackage.getEInt(), "memorySizeMB", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_RootDiskSizeGB(), theEcorePackage.getEInt(), "rootDiskSizeGB", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_DiskSizeGB(), theEcorePackage.getEInt(), "diskSizeGB", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_VolumeSizeGB(), theEcorePackage.getEInt(), "volumeSizeGB", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_ImageName(), theEcorePackage.getEString(), "imageName", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_FlavorName(), theEcorePackage.getEString(), "flavorName", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_NeedPublicIp(), theEcorePackage.getEBoolean(), "needPublicIp", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVirtualMachineType_DeploymentStatus(), theCorePackage_1.getDeploymentStatus(), "deploymentStatus", null, 0, 1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVirtualMachineType_IncomingSecurityRules(), this.getSecurityRule(), null, "incomingSecurityRules", null, 0, -1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVirtualMachineType_OutboundSecurityRules(), this.getSecurityRule(), null, "outboundSecurityRules", null, 0, -1, VirtualMachineType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(securityRuleEClass, SecurityRule.class, "SecurityRule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getSecurityRule_PortRangeStart(), theEcorePackage.getEIntegerObject(), "portRangeStart", null, 0, 1, SecurityRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getSecurityRule_PortRangeEnd(), theEcorePackage.getEIntegerObject(), "portRangeEnd", null, 0, 1, SecurityRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getSecurityRule_Prefix(), theEcorePackage.getEString(), "prefix", null, 0, 1, SecurityRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getSecurityRule_IpProtocol(), this.getSecurityRuleProtocol(), "ipProtocol", null, 0, 1, SecurityRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(securityRuleProtocolEEnum, SecurityRuleProtocol.class, "SecurityRuleProtocol");
+ addEEnumLiteral(securityRuleProtocolEEnum, SecurityRuleProtocol.NONE);
+ addEEnumLiteral(securityRuleProtocolEEnum, SecurityRuleProtocol.TCP);
+ addEEnumLiteral(securityRuleProtocolEEnum, SecurityRuleProtocol.UDP);
+ addEEnumLiteral(securityRuleProtocolEEnum, SecurityRuleProtocol.IMCP);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //CorePackageImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenStackRequestImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenStackRequestImpl.java
new file mode 100644
index 0000000..e83f9ec
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenStackRequestImpl.java
@@ -0,0 +1,184 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.openstack.core.CorePackage;
+import org.openecomp.ncomp.openstack.core.OpenStackRequest;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Open Stack Request</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.OpenStackRequestImpl#getProjectName <em>Project Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class OpenStackRequestImpl extends MinimalEObjectImpl.Container implements OpenStackRequest {
+ /**
+ * The default value of the '{@link #getProjectName() <em>Project Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProjectName()
+ * @generated
+ * @ordered
+ */
+ protected static final String PROJECT_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getProjectName() <em>Project Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProjectName()
+ * @generated
+ * @ordered
+ */
+ protected String projectName = PROJECT_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OpenStackRequestImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CorePackage.Literals.OPEN_STACK_REQUEST;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getProjectName() {
+ return projectName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setProjectName(String newProjectName) {
+ String oldProjectName = projectName;
+ projectName = newProjectName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.OPEN_STACK_REQUEST__PROJECT_NAME, oldProjectName, projectName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CorePackage.OPEN_STACK_REQUEST__PROJECT_NAME:
+ return getProjectName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CorePackage.OPEN_STACK_REQUEST__PROJECT_NAME:
+ setProjectName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CorePackage.OPEN_STACK_REQUEST__PROJECT_NAME:
+ setProjectName(PROJECT_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CorePackage.OPEN_STACK_REQUEST__PROJECT_NAME:
+ return PROJECT_NAME_EDEFAULT == null ? projectName != null : !PROJECT_NAME_EDEFAULT.equals(projectName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (projectName: ");
+ result.append(projectName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //OpenStackRequestImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestDeleteImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestDeleteImpl.java
new file mode 100644
index 0000000..18291e7
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestDeleteImpl.java
@@ -0,0 +1,237 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.openstack.core.CorePackage;
+import org.openecomp.ncomp.openstack.core.OpenstackRequestDelete;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Openstack Request Delete</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.OpenstackRequestDeleteImpl#getObjectType <em>Object Type</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.OpenstackRequestDeleteImpl#getObjectName <em>Object Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class OpenstackRequestDeleteImpl extends OpenStackRequestImpl implements OpenstackRequestDelete {
+ /**
+ * The default value of the '{@link #getObjectType() <em>Object Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getObjectType()
+ * @generated
+ * @ordered
+ */
+ protected static final String OBJECT_TYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getObjectType() <em>Object Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getObjectType()
+ * @generated
+ * @ordered
+ */
+ protected String objectType = OBJECT_TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getObjectName() <em>Object Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getObjectName()
+ * @generated
+ * @ordered
+ */
+ protected static final String OBJECT_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getObjectName() <em>Object Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getObjectName()
+ * @generated
+ * @ordered
+ */
+ protected String objectName = OBJECT_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OpenstackRequestDeleteImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CorePackage.Literals.OPENSTACK_REQUEST_DELETE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getObjectType() {
+ return objectType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setObjectType(String newObjectType) {
+ String oldObjectType = objectType;
+ objectType = newObjectType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_TYPE, oldObjectType, objectType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getObjectName() {
+ return objectName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setObjectName(String newObjectName) {
+ String oldObjectName = objectName;
+ objectName = newObjectName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_NAME, oldObjectName, objectName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_TYPE:
+ return getObjectType();
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_NAME:
+ return getObjectName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_TYPE:
+ setObjectType((String)newValue);
+ return;
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_NAME:
+ setObjectName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_TYPE:
+ setObjectType(OBJECT_TYPE_EDEFAULT);
+ return;
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_NAME:
+ setObjectName(OBJECT_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_TYPE:
+ return OBJECT_TYPE_EDEFAULT == null ? objectType != null : !OBJECT_TYPE_EDEFAULT.equals(objectType);
+ case CorePackage.OPENSTACK_REQUEST_DELETE__OBJECT_NAME:
+ return OBJECT_NAME_EDEFAULT == null ? objectName != null : !OBJECT_NAME_EDEFAULT.equals(objectName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (objectType: ");
+ result.append(objectType);
+ result.append(", objectName: ");
+ result.append(objectName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //OpenstackRequestDeleteImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestPollImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestPollImpl.java
new file mode 100644
index 0000000..a28f3c8
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/OpenstackRequestPollImpl.java
@@ -0,0 +1,60 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.openstack.core.CorePackage;
+import org.openecomp.ncomp.openstack.core.OpenstackRequestPoll;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Openstack Request Poll</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class OpenstackRequestPollImpl extends OpenStackRequestImpl implements OpenstackRequestPoll {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OpenstackRequestPollImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CorePackage.Literals.OPENSTACK_REQUEST_POLL;
+ }
+
+} //OpenstackRequestPollImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/SecurityRuleImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/SecurityRuleImpl.java
new file mode 100644
index 0000000..4b85fff
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/SecurityRuleImpl.java
@@ -0,0 +1,348 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+
+import org.openecomp.ncomp.openstack.core.CorePackage;
+import org.openecomp.ncomp.openstack.core.SecurityRule;
+import org.openecomp.ncomp.openstack.core.SecurityRuleProtocol;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Security Rule</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl#getPortRangeStart <em>Port Range Start</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl#getPortRangeEnd <em>Port Range End</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl#getPrefix <em>Prefix</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.SecurityRuleImpl#getIpProtocol <em>Ip Protocol</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SecurityRuleImpl extends NamedEntityImpl implements SecurityRule {
+ /**
+ * The default value of the '{@link #getPortRangeStart() <em>Port Range Start</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPortRangeStart()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer PORT_RANGE_START_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPortRangeStart() <em>Port Range Start</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPortRangeStart()
+ * @generated
+ * @ordered
+ */
+ protected Integer portRangeStart = PORT_RANGE_START_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPortRangeEnd() <em>Port Range End</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPortRangeEnd()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer PORT_RANGE_END_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPortRangeEnd() <em>Port Range End</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPortRangeEnd()
+ * @generated
+ * @ordered
+ */
+ protected Integer portRangeEnd = PORT_RANGE_END_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPrefix() <em>Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPrefix()
+ * @generated
+ * @ordered
+ */
+ protected static final String PREFIX_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPrefix() <em>Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPrefix()
+ * @generated
+ * @ordered
+ */
+ protected String prefix = PREFIX_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIpProtocol() <em>Ip Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIpProtocol()
+ * @generated
+ * @ordered
+ */
+ protected static final SecurityRuleProtocol IP_PROTOCOL_EDEFAULT = SecurityRuleProtocol.NONE;
+
+ /**
+ * The cached value of the '{@link #getIpProtocol() <em>Ip Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIpProtocol()
+ * @generated
+ * @ordered
+ */
+ protected SecurityRuleProtocol ipProtocol = IP_PROTOCOL_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SecurityRuleImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CorePackage.Literals.SECURITY_RULE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getPortRangeStart() {
+ return portRangeStart;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPortRangeStart(Integer newPortRangeStart) {
+ Integer oldPortRangeStart = portRangeStart;
+ portRangeStart = newPortRangeStart;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.SECURITY_RULE__PORT_RANGE_START, oldPortRangeStart, portRangeStart));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getPortRangeEnd() {
+ return portRangeEnd;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPortRangeEnd(Integer newPortRangeEnd) {
+ Integer oldPortRangeEnd = portRangeEnd;
+ portRangeEnd = newPortRangeEnd;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.SECURITY_RULE__PORT_RANGE_END, oldPortRangeEnd, portRangeEnd));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPrefix() {
+ return prefix;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPrefix(String newPrefix) {
+ String oldPrefix = prefix;
+ prefix = newPrefix;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.SECURITY_RULE__PREFIX, oldPrefix, prefix));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SecurityRuleProtocol getIpProtocol() {
+ return ipProtocol;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIpProtocol(SecurityRuleProtocol newIpProtocol) {
+ SecurityRuleProtocol oldIpProtocol = ipProtocol;
+ ipProtocol = newIpProtocol == null ? IP_PROTOCOL_EDEFAULT : newIpProtocol;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.SECURITY_RULE__IP_PROTOCOL, oldIpProtocol, ipProtocol));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CorePackage.SECURITY_RULE__PORT_RANGE_START:
+ return getPortRangeStart();
+ case CorePackage.SECURITY_RULE__PORT_RANGE_END:
+ return getPortRangeEnd();
+ case CorePackage.SECURITY_RULE__PREFIX:
+ return getPrefix();
+ case CorePackage.SECURITY_RULE__IP_PROTOCOL:
+ return getIpProtocol();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CorePackage.SECURITY_RULE__PORT_RANGE_START:
+ setPortRangeStart((Integer)newValue);
+ return;
+ case CorePackage.SECURITY_RULE__PORT_RANGE_END:
+ setPortRangeEnd((Integer)newValue);
+ return;
+ case CorePackage.SECURITY_RULE__PREFIX:
+ setPrefix((String)newValue);
+ return;
+ case CorePackage.SECURITY_RULE__IP_PROTOCOL:
+ setIpProtocol((SecurityRuleProtocol)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CorePackage.SECURITY_RULE__PORT_RANGE_START:
+ setPortRangeStart(PORT_RANGE_START_EDEFAULT);
+ return;
+ case CorePackage.SECURITY_RULE__PORT_RANGE_END:
+ setPortRangeEnd(PORT_RANGE_END_EDEFAULT);
+ return;
+ case CorePackage.SECURITY_RULE__PREFIX:
+ setPrefix(PREFIX_EDEFAULT);
+ return;
+ case CorePackage.SECURITY_RULE__IP_PROTOCOL:
+ setIpProtocol(IP_PROTOCOL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CorePackage.SECURITY_RULE__PORT_RANGE_START:
+ return PORT_RANGE_START_EDEFAULT == null ? portRangeStart != null : !PORT_RANGE_START_EDEFAULT.equals(portRangeStart);
+ case CorePackage.SECURITY_RULE__PORT_RANGE_END:
+ return PORT_RANGE_END_EDEFAULT == null ? portRangeEnd != null : !PORT_RANGE_END_EDEFAULT.equals(portRangeEnd);
+ case CorePackage.SECURITY_RULE__PREFIX:
+ return PREFIX_EDEFAULT == null ? prefix != null : !PREFIX_EDEFAULT.equals(prefix);
+ case CorePackage.SECURITY_RULE__IP_PROTOCOL:
+ return ipProtocol != IP_PROTOCOL_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (portRangeStart: ");
+ result.append(portRangeStart);
+ result.append(", portRangeEnd: ");
+ result.append(portRangeEnd);
+ result.append(", prefix: ");
+ result.append(prefix);
+ result.append(", ipProtocol: ");
+ result.append(ipProtocol);
+ result.append(')');
+ return result.toString();
+ }
+
+} //SecurityRuleImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/VirtualMachineTypeImpl.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/VirtualMachineTypeImpl.java
new file mode 100644
index 0000000..014c99d
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/impl/VirtualMachineTypeImpl.java
@@ -0,0 +1,760 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.impl;
+
+import org.openecomp.ncomp.core.DeploymentStatus;
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+import org.openecomp.ncomp.openstack.core.CorePackage;
+import org.openecomp.ncomp.openstack.core.SecurityRule;
+import org.openecomp.ncomp.openstack.core.VirtualMachineType;
+import java.util.Collection;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Virtual Machine Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getDescription <em>Description</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getNumberOfCores <em>Number Of Cores</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getMemorySizeMB <em>Memory Size MB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getRootDiskSizeGB <em>Root Disk Size GB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getDiskSizeGB <em>Disk Size GB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getVolumeSizeGB <em>Volume Size GB</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getImageName <em>Image Name</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getFlavorName <em>Flavor Name</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#isNeedPublicIp <em>Need Public Ip</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getDeploymentStatus <em>Deployment Status</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getIncomingSecurityRules <em>Incoming Security Rules</em>}</li>
+ * <li>{@link org.openecomp.ncomp.openstack.core.impl.VirtualMachineTypeImpl#getOutboundSecurityRules <em>Outbound Security Rules</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VirtualMachineTypeImpl extends NamedEntityImpl implements VirtualMachineType {
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected String description = DESCRIPTION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getNumberOfCores() <em>Number Of Cores</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNumberOfCores()
+ * @generated
+ * @ordered
+ */
+ protected static final int NUMBER_OF_CORES_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getNumberOfCores() <em>Number Of Cores</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNumberOfCores()
+ * @generated
+ * @ordered
+ */
+ protected int numberOfCores = NUMBER_OF_CORES_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getMemorySizeMB() <em>Memory Size MB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMemorySizeMB()
+ * @generated
+ * @ordered
+ */
+ protected static final int MEMORY_SIZE_MB_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getMemorySizeMB() <em>Memory Size MB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMemorySizeMB()
+ * @generated
+ * @ordered
+ */
+ protected int memorySizeMB = MEMORY_SIZE_MB_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getRootDiskSizeGB() <em>Root Disk Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRootDiskSizeGB()
+ * @generated
+ * @ordered
+ */
+ protected static final int ROOT_DISK_SIZE_GB_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getRootDiskSizeGB() <em>Root Disk Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRootDiskSizeGB()
+ * @generated
+ * @ordered
+ */
+ protected int rootDiskSizeGB = ROOT_DISK_SIZE_GB_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDiskSizeGB() <em>Disk Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDiskSizeGB()
+ * @generated
+ * @ordered
+ */
+ protected static final int DISK_SIZE_GB_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getDiskSizeGB() <em>Disk Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDiskSizeGB()
+ * @generated
+ * @ordered
+ */
+ protected int diskSizeGB = DISK_SIZE_GB_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getVolumeSizeGB() <em>Volume Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVolumeSizeGB()
+ * @generated
+ * @ordered
+ */
+ protected static final int VOLUME_SIZE_GB_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getVolumeSizeGB() <em>Volume Size GB</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVolumeSizeGB()
+ * @generated
+ * @ordered
+ */
+ protected int volumeSizeGB = VOLUME_SIZE_GB_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getImageName() <em>Image Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImageName()
+ * @generated
+ * @ordered
+ */
+ protected static final String IMAGE_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getImageName() <em>Image Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImageName()
+ * @generated
+ * @ordered
+ */
+ protected String imageName = IMAGE_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getFlavorName() <em>Flavor Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFlavorName()
+ * @generated
+ * @ordered
+ */
+ protected static final String FLAVOR_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFlavorName() <em>Flavor Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFlavorName()
+ * @generated
+ * @ordered
+ */
+ protected String flavorName = FLAVOR_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isNeedPublicIp() <em>Need Public Ip</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isNeedPublicIp()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean NEED_PUBLIC_IP_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isNeedPublicIp() <em>Need Public Ip</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isNeedPublicIp()
+ * @generated
+ * @ordered
+ */
+ protected boolean needPublicIp = NEED_PUBLIC_IP_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDeploymentStatus() <em>Deployment Status</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDeploymentStatus()
+ * @generated
+ * @ordered
+ */
+ protected static final DeploymentStatus DEPLOYMENT_STATUS_EDEFAULT = DeploymentStatus.UNDEPLOYED;
+
+ /**
+ * The cached value of the '{@link #getDeploymentStatus() <em>Deployment Status</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDeploymentStatus()
+ * @generated
+ * @ordered
+ */
+ protected DeploymentStatus deploymentStatus = DEPLOYMENT_STATUS_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getIncomingSecurityRules() <em>Incoming Security Rules</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIncomingSecurityRules()
+ * @generated
+ * @ordered
+ */
+ protected EList<SecurityRule> incomingSecurityRules;
+
+ /**
+ * The cached value of the '{@link #getOutboundSecurityRules() <em>Outbound Security Rules</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOutboundSecurityRules()
+ * @generated
+ * @ordered
+ */
+ protected EList<SecurityRule> outboundSecurityRules;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VirtualMachineTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CorePackage.Literals.VIRTUAL_MACHINE_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDescription(String newDescription) {
+ String oldDescription = description;
+ description = newDescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__DESCRIPTION, oldDescription, description));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getNumberOfCores() {
+ return numberOfCores;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNumberOfCores(int newNumberOfCores) {
+ int oldNumberOfCores = numberOfCores;
+ numberOfCores = newNumberOfCores;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES, oldNumberOfCores, numberOfCores));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getMemorySizeMB() {
+ return memorySizeMB;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMemorySizeMB(int newMemorySizeMB) {
+ int oldMemorySizeMB = memorySizeMB;
+ memorySizeMB = newMemorySizeMB;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB, oldMemorySizeMB, memorySizeMB));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getRootDiskSizeGB() {
+ return rootDiskSizeGB;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRootDiskSizeGB(int newRootDiskSizeGB) {
+ int oldRootDiskSizeGB = rootDiskSizeGB;
+ rootDiskSizeGB = newRootDiskSizeGB;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB, oldRootDiskSizeGB, rootDiskSizeGB));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getDiskSizeGB() {
+ return diskSizeGB;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDiskSizeGB(int newDiskSizeGB) {
+ int oldDiskSizeGB = diskSizeGB;
+ diskSizeGB = newDiskSizeGB;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB, oldDiskSizeGB, diskSizeGB));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getVolumeSizeGB() {
+ return volumeSizeGB;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVolumeSizeGB(int newVolumeSizeGB) {
+ int oldVolumeSizeGB = volumeSizeGB;
+ volumeSizeGB = newVolumeSizeGB;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB, oldVolumeSizeGB, volumeSizeGB));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getImageName() {
+ return imageName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setImageName(String newImageName) {
+ String oldImageName = imageName;
+ imageName = newImageName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__IMAGE_NAME, oldImageName, imageName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFlavorName() {
+ return flavorName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFlavorName(String newFlavorName) {
+ String oldFlavorName = flavorName;
+ flavorName = newFlavorName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__FLAVOR_NAME, oldFlavorName, flavorName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isNeedPublicIp() {
+ return needPublicIp;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNeedPublicIp(boolean newNeedPublicIp) {
+ boolean oldNeedPublicIp = needPublicIp;
+ needPublicIp = newNeedPublicIp;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP, oldNeedPublicIp, needPublicIp));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeploymentStatus getDeploymentStatus() {
+ return deploymentStatus;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDeploymentStatus(DeploymentStatus newDeploymentStatus) {
+ DeploymentStatus oldDeploymentStatus = deploymentStatus;
+ deploymentStatus = newDeploymentStatus == null ? DEPLOYMENT_STATUS_EDEFAULT : newDeploymentStatus;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CorePackage.VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS, oldDeploymentStatus, deploymentStatus));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<SecurityRule> getIncomingSecurityRules() {
+ if (incomingSecurityRules == null) {
+ incomingSecurityRules = new EObjectContainmentEList<SecurityRule>(SecurityRule.class, this, CorePackage.VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES);
+ }
+ return incomingSecurityRules;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<SecurityRule> getOutboundSecurityRules() {
+ if (outboundSecurityRules == null) {
+ outboundSecurityRules = new EObjectContainmentEList<SecurityRule>(SecurityRule.class, this, CorePackage.VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES);
+ }
+ return outboundSecurityRules;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case CorePackage.VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES:
+ return ((InternalEList<?>)getIncomingSecurityRules()).basicRemove(otherEnd, msgs);
+ case CorePackage.VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES:
+ return ((InternalEList<?>)getOutboundSecurityRules()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DESCRIPTION:
+ return getDescription();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES:
+ return getNumberOfCores();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB:
+ return getMemorySizeMB();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB:
+ return getRootDiskSizeGB();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB:
+ return getDiskSizeGB();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB:
+ return getVolumeSizeGB();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__IMAGE_NAME:
+ return getImageName();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__FLAVOR_NAME:
+ return getFlavorName();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP:
+ return isNeedPublicIp();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS:
+ return getDeploymentStatus();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES:
+ return getIncomingSecurityRules();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES:
+ return getOutboundSecurityRules();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES:
+ setNumberOfCores((Integer)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB:
+ setMemorySizeMB((Integer)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB:
+ setRootDiskSizeGB((Integer)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB:
+ setDiskSizeGB((Integer)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB:
+ setVolumeSizeGB((Integer)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__IMAGE_NAME:
+ setImageName((String)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__FLAVOR_NAME:
+ setFlavorName((String)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP:
+ setNeedPublicIp((Boolean)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS:
+ setDeploymentStatus((DeploymentStatus)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES:
+ getIncomingSecurityRules().clear();
+ getIncomingSecurityRules().addAll((Collection<? extends SecurityRule>)newValue);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES:
+ getOutboundSecurityRules().clear();
+ getOutboundSecurityRules().addAll((Collection<? extends SecurityRule>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES:
+ setNumberOfCores(NUMBER_OF_CORES_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB:
+ setMemorySizeMB(MEMORY_SIZE_MB_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB:
+ setRootDiskSizeGB(ROOT_DISK_SIZE_GB_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB:
+ setDiskSizeGB(DISK_SIZE_GB_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB:
+ setVolumeSizeGB(VOLUME_SIZE_GB_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__IMAGE_NAME:
+ setImageName(IMAGE_NAME_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__FLAVOR_NAME:
+ setFlavorName(FLAVOR_NAME_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP:
+ setNeedPublicIp(NEED_PUBLIC_IP_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS:
+ setDeploymentStatus(DEPLOYMENT_STATUS_EDEFAULT);
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES:
+ getIncomingSecurityRules().clear();
+ return;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES:
+ getOutboundSecurityRules().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NUMBER_OF_CORES:
+ return numberOfCores != NUMBER_OF_CORES_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__MEMORY_SIZE_MB:
+ return memorySizeMB != MEMORY_SIZE_MB_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__ROOT_DISK_SIZE_GB:
+ return rootDiskSizeGB != ROOT_DISK_SIZE_GB_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DISK_SIZE_GB:
+ return diskSizeGB != DISK_SIZE_GB_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__VOLUME_SIZE_GB:
+ return volumeSizeGB != VOLUME_SIZE_GB_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__IMAGE_NAME:
+ return IMAGE_NAME_EDEFAULT == null ? imageName != null : !IMAGE_NAME_EDEFAULT.equals(imageName);
+ case CorePackage.VIRTUAL_MACHINE_TYPE__FLAVOR_NAME:
+ return FLAVOR_NAME_EDEFAULT == null ? flavorName != null : !FLAVOR_NAME_EDEFAULT.equals(flavorName);
+ case CorePackage.VIRTUAL_MACHINE_TYPE__NEED_PUBLIC_IP:
+ return needPublicIp != NEED_PUBLIC_IP_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__DEPLOYMENT_STATUS:
+ return deploymentStatus != DEPLOYMENT_STATUS_EDEFAULT;
+ case CorePackage.VIRTUAL_MACHINE_TYPE__INCOMING_SECURITY_RULES:
+ return incomingSecurityRules != null && !incomingSecurityRules.isEmpty();
+ case CorePackage.VIRTUAL_MACHINE_TYPE__OUTBOUND_SECURITY_RULES:
+ return outboundSecurityRules != null && !outboundSecurityRules.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (description: ");
+ result.append(description);
+ result.append(", numberOfCores: ");
+ result.append(numberOfCores);
+ result.append(", memorySizeMB: ");
+ result.append(memorySizeMB);
+ result.append(", rootDiskSizeGB: ");
+ result.append(rootDiskSizeGB);
+ result.append(", diskSizeGB: ");
+ result.append(diskSizeGB);
+ result.append(", volumeSizeGB: ");
+ result.append(volumeSizeGB);
+ result.append(", imageName: ");
+ result.append(imageName);
+ result.append(", flavorName: ");
+ result.append(flavorName);
+ result.append(", needPublicIp: ");
+ result.append(needPublicIp);
+ result.append(", deploymentStatus: ");
+ result.append(deploymentStatus);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VirtualMachineTypeImpl
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreAdapterFactory.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreAdapterFactory.java
new file mode 100644
index 0000000..f8d6933
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreAdapterFactory.java
@@ -0,0 +1,233 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.util;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.openecomp.ncomp.openstack.core.*;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.CorePackage
+ * @generated
+ */
+public class CoreAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CorePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CoreAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = CorePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CoreSwitch<Adapter> modelSwitch =
+ new CoreSwitch<Adapter>() {
+ @Override
+ public Adapter caseOpenStackRequest(OpenStackRequest object) {
+ return createOpenStackRequestAdapter();
+ }
+ @Override
+ public Adapter caseOpenstackRequestDelete(OpenstackRequestDelete object) {
+ return createOpenstackRequestDeleteAdapter();
+ }
+ @Override
+ public Adapter caseOpenstackRequestPoll(OpenstackRequestPoll object) {
+ return createOpenstackRequestPollAdapter();
+ }
+ @Override
+ public Adapter caseVirtualMachineType(VirtualMachineType object) {
+ return createVirtualMachineTypeAdapter();
+ }
+ @Override
+ public Adapter caseSecurityRule(SecurityRule object) {
+ return createSecurityRuleAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.openstack.core.OpenStackRequest <em>Open Stack Request</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.openstack.core.OpenStackRequest
+ * @generated
+ */
+ public Adapter createOpenStackRequestAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestDelete <em>Openstack Request Delete</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.openstack.core.OpenstackRequestDelete
+ * @generated
+ */
+ public Adapter createOpenstackRequestDeleteAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.openstack.core.OpenstackRequestPoll <em>Openstack Request Poll</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.openstack.core.OpenstackRequestPoll
+ * @generated
+ */
+ public Adapter createOpenstackRequestPollAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.openstack.core.VirtualMachineType <em>Virtual Machine Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.openstack.core.VirtualMachineType
+ * @generated
+ */
+ public Adapter createVirtualMachineTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.openstack.core.SecurityRule <em>Security Rule</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.openstack.core.SecurityRule
+ * @generated
+ */
+ public Adapter createSecurityRuleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity <em>Named Entity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //CoreAdapterFactory
diff --git a/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreSwitch.java b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreSwitch.java
new file mode 100644
index 0000000..2360076
--- /dev/null
+++ b/ncomp-openstack-model/src/main/xcore-gen/org/openecomp/ncomp/openstack/core/util/CoreSwitch.java
@@ -0,0 +1,236 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * 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============================================
+ */
+
+/**
+ */
+package org.openecomp.ncomp.openstack.core.util;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.openecomp.ncomp.openstack.core.*;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.ncomp.openstack.core.CorePackage
+ * @generated
+ */
+public class CoreSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CorePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CoreSwitch() {
+ if (modelPackage == null) {
+ modelPackage = CorePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case CorePackage.OPEN_STACK_REQUEST: {
+ OpenStackRequest openStackRequest = (OpenStackRequest)theEObject;
+ T result = caseOpenStackRequest(openStackRequest);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CorePackage.OPENSTACK_REQUEST_DELETE: {
+ OpenstackRequestDelete openstackRequestDelete = (OpenstackRequestDelete)theEObject;
+ T result = caseOpenstackRequestDelete(openstackRequestDelete);
+ if (result == null) result = caseOpenStackRequest(openstackRequestDelete);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CorePackage.OPENSTACK_REQUEST_POLL: {
+ OpenstackRequestPoll openstackRequestPoll = (OpenstackRequestPoll)theEObject;
+ T result = caseOpenstackRequestPoll(openstackRequestPoll);
+ if (result == null) result = caseOpenStackRequest(openstackRequestPoll);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CorePackage.VIRTUAL_MACHINE_TYPE: {
+ VirtualMachineType virtualMachineType = (VirtualMachineType)theEObject;
+ T result = caseVirtualMachineType(virtualMachineType);
+ if (result == null) result = caseNamedEntity(virtualMachineType);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CorePackage.SECURITY_RULE: {
+ SecurityRule securityRule = (SecurityRule)theEObject;
+ T result = caseSecurityRule(securityRule);
+ if (result == null) result = caseNamedEntity(securityRule);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Open Stack Request</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Open Stack Request</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOpenStackRequest(OpenStackRequest object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Openstack Request Delete</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Openstack Request Delete</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOpenstackRequestDelete(OpenstackRequestDelete object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Openstack Request Poll</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Openstack Request Poll</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOpenstackRequestPoll(OpenstackRequestPoll object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Virtual Machine Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Virtual Machine Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVirtualMachineType(VirtualMachineType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Security Rule</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Security Rule</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSecurityRule(SecurityRule object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Named Entity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Named Entity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNamedEntity(NamedEntity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //CoreSwitch