+ *
+ * @see org.openecomp.dcae.controller.core.hypervisor.HypervisorFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-core-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.core'"
+ * @generated
+ */
+public interface HypervisorPackage extends EPackage {
+ /**
+ * The package name.
+ *
+ *
+ * @generated
+ */
+ String eNAME = "hypervisor";
+
+ /**
+ * The package namespace URI.
+ *
+ *
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.core.hypervisor";
+
+ /**
+ * The package namespace name.
+ *
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "hypervisor";
+
+ /**
+ * The singleton instance of the package.
+ *
+ *
+ * @generated
+ */
+ HypervisorPackage eINSTANCE = org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorImpl Hypervisor}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorImpl
+ * @see org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorPackageImpl#getHypervisor()
+ * @generated
+ */
+ int HYPERVISOR = 0;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HYPERVISOR__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HYPERVISOR__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HYPERVISOR__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HYPERVISOR__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The number of structural features of the 'Hypervisor' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HYPERVISOR_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the 'Hypervisor' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HYPERVISOR_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.hypervisor.Hypervisor Hypervisor}'.
+ *
+ *
+ * @return the meta object for class 'Hypervisor'.
+ * @see org.openecomp.dcae.controller.core.hypervisor.Hypervisor
+ * @generated
+ */
+ EClass getHypervisor();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ *
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ HypervisorFactory getHypervisorFactory();
+
+ /**
+ *
+ * Defines literals for the meta objects that represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorImpl Hypervisor}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorImpl
+ * @see org.openecomp.dcae.controller.core.hypervisor.impl.HypervisorPackageImpl#getHypervisor()
+ * @generated
+ */
+ EClass HYPERVISOR = eINSTANCE.getHypervisor();
+
+ }
+
+} //HypervisorPackage
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorFactoryImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorFactoryImpl.java
new file mode 100644
index 0000000..b99acb4
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorFactoryImpl.java
@@ -0,0 +1,116 @@
+
+/*-
+ * ============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.dcae.controller.core.hypervisor.impl;
+
+import org.openecomp.dcae.controller.core.hypervisor.*;
+
+import org.eclipse.emf.ecore.EClass;
+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;
+
+/**
+ *
+ * An implementation of the model Factory.
+ *
+ * @generated
+ */
+public class HypervisorFactoryImpl extends EFactoryImpl implements HypervisorFactory {
+ /**
+ * Creates the default factory implementation.
+ *
+ *
+ * @generated
+ */
+ public static HypervisorFactory init() {
+ try {
+ HypervisorFactory theHypervisorFactory = (HypervisorFactory)EPackage.Registry.INSTANCE.getEFactory(HypervisorPackage.eNS_URI);
+ if (theHypervisorFactory != null) {
+ return theHypervisorFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new HypervisorFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ *
+ *
+ * @generated
+ */
+ public HypervisorFactoryImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case HypervisorPackage.HYPERVISOR: return createHypervisor();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public Hypervisor createHypervisor() {
+ HypervisorImpl hypervisor = new HypervisorImpl();
+ return hypervisor;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public HypervisorPackage getHypervisorPackage() {
+ return (HypervisorPackage)getEPackage();
+ }
+
+ /**
+ *
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static HypervisorPackage getPackage() {
+ return HypervisorPackage.eINSTANCE;
+ }
+
+} //HypervisorFactoryImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorImpl.java
new file mode 100644
index 0000000..eb1716b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorImpl.java
@@ -0,0 +1,62 @@
+
+/*-
+ * ============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.dcae.controller.core.hypervisor.impl;
+
+import org.openecomp.dcae.controller.core.hypervisor.Hypervisor;
+import org.openecomp.dcae.controller.core.hypervisor.HypervisorPackage;
+
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ *
+ * An implementation of the model object 'Hypervisor'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public class HypervisorImpl extends NamedEntityImpl implements Hypervisor {
+ /**
+ *
+ *
+ * @generated
+ */
+ protected HypervisorImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return HypervisorPackage.Literals.HYPERVISOR;
+ }
+
+} //HypervisorImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorPackageImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorPackageImpl.java
new file mode 100644
index 0000000..6dc6967
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/impl/HypervisorPackageImpl.java
@@ -0,0 +1,195 @@
+
+/*-
+ * ============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.dcae.controller.core.hypervisor.impl;
+
+import org.openecomp.dcae.controller.core.hypervisor.Hypervisor;
+import org.openecomp.dcae.controller.core.hypervisor.HypervisorFactory;
+import org.openecomp.dcae.controller.core.hypervisor.HypervisorPackage;
+
+import org.openecomp.ncomp.core.CorePackage;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+/**
+ *
+ * An implementation of the model Package.
+ *
+ * @generated
+ */
+public class HypervisorPackageImpl extends EPackageImpl implements HypervisorPackage {
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass hypervisorEClass = null;
+
+ /**
+ * Creates an instance of the model Package, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ *
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.
+ *
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.core.hypervisor.HypervisorPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private HypervisorPackageImpl() {
+ super(eNS_URI, HypervisorFactory.eINSTANCE);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the Package for this model, and for any others upon which it depends.
+ *
+ *
This method is used to initialize {@link HypervisorPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ *
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static HypervisorPackage init() {
+ if (isInited) return (HypervisorPackage)EPackage.Registry.INSTANCE.getEPackage(HypervisorPackage.eNS_URI);
+
+ // Obtain or create and register package
+ HypervisorPackageImpl theHypervisorPackage = (HypervisorPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof HypervisorPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new HypervisorPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theHypervisorPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theHypervisorPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theHypervisorPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(HypervisorPackage.eNS_URI, theHypervisorPackage);
+ return theHypervisorPackage;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getHypervisor() {
+ return hypervisorEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public HypervisorFactory getHypervisorFactory() {
+ return (HypervisorFactory)getEFactoryInstance();
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ hypervisorEClass = createEClass(HYPERVISOR);
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CorePackage theCorePackage = (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ hypervisorEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(hypervisorEClass, Hypervisor.class, "Hypervisor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //HypervisorPackageImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/util/HypervisorAdapterFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/util/HypervisorAdapterFactory.java
new file mode 100644
index 0000000..a7d175f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/util/HypervisorAdapterFactory.java
@@ -0,0 +1,161 @@
+
+/*-
+ * ============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.dcae.controller.core.hypervisor.util;
+
+import org.openecomp.dcae.controller.core.hypervisor.*;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+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;
+
+/**
+ *
+ * The Adapter Factory for the model.
+ * It provides an adapter createXXX method for each class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.hypervisor.HypervisorPackage
+ * @generated
+ */
+public class HypervisorAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ *
+ *
+ * @generated
+ */
+ protected static HypervisorPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ *
+ *
+ * @generated
+ */
+ public HypervisorAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = HypervisorPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ *
+ * This implementation returns true if the object is either the model's package or is an instance object of the model.
+ *
+ * @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 createXXX methods.
+ *
+ *
+ * @generated
+ */
+ protected HypervisorSwitch modelSwitch =
+ new HypervisorSwitch() {
+ @Override
+ public Adapter caseHypervisor(Hypervisor object) {
+ return createHypervisorAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the target.
+ *
+ *
+ * @param target the object to adapt.
+ * @return the adapter for the target.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.hypervisor.Hypervisor Hypervisor}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.hypervisor.Hypervisor
+ * @generated
+ */
+ public Adapter createHypervisorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity Named Entity}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ *
+ * This default implementation returns null.
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //HypervisorAdapterFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/util/HypervisorSwitch.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/util/HypervisorSwitch.java
new file mode 100644
index 0000000..990ad99
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/hypervisor/util/HypervisorSwitch.java
@@ -0,0 +1,149 @@
+
+/*-
+ * ============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.dcae.controller.core.hypervisor.util;
+
+import org.openecomp.dcae.controller.core.hypervisor.*;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ *
+ * The Switch for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the caseXXX 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.
+ *
+ * @see org.openecomp.dcae.controller.core.hypervisor.HypervisorPackage
+ * @generated
+ */
+public class HypervisorSwitch extends Switch {
+ /**
+ * The cached model package
+ *
+ *
+ * @generated
+ */
+ protected static HypervisorPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ *
+ *
+ * @generated
+ */
+ public HypervisorSwitch() {
+ if (modelPackage == null) {
+ modelPackage = HypervisorPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ *
+ *
+ * @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 caseXXX for each class of the model until one returns a non null result; it yields that result.
+ *
+ *
+ * @return the first non-null result returned by a caseXXX call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case HypervisorPackage.HYPERVISOR: {
+ Hypervisor hypervisor = (Hypervisor)theEObject;
+ T result = caseHypervisor(hypervisor);
+ if (result == null) result = caseNamedEntity(hypervisor);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Hypervisor'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Hypervisor'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHypervisor(Hypervisor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Named Entity'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Named Entity'.
+ * @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 'EObject'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'EObject'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //HypervisorSwitch
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/DcaeManager.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/DcaeManager.java
new file mode 100644
index 0000000..a1f6c81
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/DcaeManager.java
@@ -0,0 +1,131 @@
+
+/*-
+ * ============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.dcae.controller.core.manager;
+
+import org.openecomp.dcae.controller.core.service.HealthTestResponse;
+import org.openecomp.dcae.controller.core.stream.DcaeStream;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Dcae Manager'.
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage#getDcaeManager()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DcaeManager extends EObject {
+ /**
+ * Returns the value of the 'Input Streams' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DcaeStream}.
+ *
+ *
+ * If the meaning of the 'Input Streams' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Input Streams' containment reference list.
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage#getDcaeManager_InputStreams()
+ * @model containment="true"
+ * @generated
+ */
+ EList getInputStreams();
+
+ /**
+ * Returns the value of the 'Output Streams' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DcaeStream}.
+ *
+ *
+ * If the meaning of the 'Output Streams' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Output Streams' containment reference list.
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage#getDcaeManager_OutputStreams()
+ * @model containment="true"
+ * @generated
+ */
+ EList getOutputStreams();
+
+ /**
+ *
+ *
+ * @model unique="false"
+ * @generated
+ */
+ HealthTestResponse test();
+
+ /**
+ *
+ *
+ * @model
+ * @generated
+ */
+ void suspend();
+
+ /**
+ *
+ *
+ * @model
+ * @generated
+ */
+ void resume();
+
+ /**
+ *
+ *
+ * @model unique="false"
+ * @generated
+ */
+ String publicKey();
+
+ /**
+ *
+ *
+ * @model
+ * @generated
+ */
+ void configurationChanged();
+
+ /**
+ *
+ *
+ * @model inputStreamsUnique="false" inputStreamsMany="true" outputStreamsUnique="false" outputStreamsMany="true"
+ * @generated
+ */
+ void updateStreams(EList inputStreams, EList outputStreams);
+
+} // DcaeManager
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/ManagerFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/ManagerFactory.java
new file mode 100644
index 0000000..346e923
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/ManagerFactory.java
@@ -0,0 +1,54 @@
+
+/*-
+ * ============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.dcae.controller.core.manager;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ *
+ * The Factory for the model.
+ * It provides a create method for each non-abstract class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage
+ * @generated
+ */
+public interface ManagerFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ *
+ *
+ * @generated
+ */
+ ManagerFactory eINSTANCE = org.openecomp.dcae.controller.core.manager.impl.ManagerFactoryImpl.init();
+
+ /**
+ * Returns the package supported by this factory.
+ *
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ManagerPackage getManagerPackage();
+
+} //ManagerFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/ManagerPackage.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/ManagerPackage.java
new file mode 100644
index 0000000..46a5821
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/ManagerPackage.java
@@ -0,0 +1,374 @@
+
+/*-
+ * ============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.dcae.controller.core.manager;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ *
+ * The Package for the model.
+ * It contains accessors for the meta objects to represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.manager.ManagerFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-core-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.core'"
+ * annotation="http://www.eclipse.org/emf/2011/Xcore ecomp='http://openecomp.org'"
+ * @generated
+ */
+public interface ManagerPackage extends EPackage {
+ /**
+ * The package name.
+ *
+ *
+ * @generated
+ */
+ String eNAME = "manager";
+
+ /**
+ * The package namespace URI.
+ *
+ *
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.core.manager";
+
+ /**
+ * The package namespace name.
+ *
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "manager";
+
+ /**
+ * The singleton instance of the package.
+ *
+ *
+ * @generated
+ */
+ ManagerPackage eINSTANCE = org.openecomp.dcae.controller.core.manager.impl.ManagerPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.manager.impl.DcaeManagerImpl Dcae Manager}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.manager.impl.DcaeManagerImpl
+ * @see org.openecomp.dcae.controller.core.manager.impl.ManagerPackageImpl#getDcaeManager()
+ * @generated
+ */
+ int DCAE_MANAGER = 0;
+
+ /**
+ * The feature id for the 'Input Streams' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER__INPUT_STREAMS = 0;
+
+ /**
+ * The feature id for the 'Output Streams' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER__OUTPUT_STREAMS = 1;
+
+ /**
+ * The number of structural features of the 'Dcae Manager' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER_FEATURE_COUNT = 2;
+
+ /**
+ * The operation id for the 'Test' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER___TEST = 0;
+
+ /**
+ * The operation id for the 'Suspend' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER___SUSPEND = 1;
+
+ /**
+ * The operation id for the 'Resume' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER___RESUME = 2;
+
+ /**
+ * The operation id for the 'Public Key' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER___PUBLIC_KEY = 3;
+
+ /**
+ * The operation id for the 'Configuration Changed' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER___CONFIGURATION_CHANGED = 4;
+
+ /**
+ * The operation id for the 'Update Streams' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER___UPDATE_STREAMS__ELIST_ELIST = 5;
+
+ /**
+ * The number of operations of the 'Dcae Manager' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_MANAGER_OPERATION_COUNT = 6;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.manager.DcaeManager Dcae Manager}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Manager'.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager
+ * @generated
+ */
+ EClass getDcaeManager();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#getInputStreams Input Streams}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Input Streams'.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#getInputStreams()
+ * @see #getDcaeManager()
+ * @generated
+ */
+ EReference getDcaeManager_InputStreams();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#getOutputStreams Output Streams}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Output Streams'.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#getOutputStreams()
+ * @see #getDcaeManager()
+ * @generated
+ */
+ EReference getDcaeManager_OutputStreams();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#test() Test}' operation.
+ *
+ *
+ * @return the meta object for the 'Test' operation.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#test()
+ * @generated
+ */
+ EOperation getDcaeManager__Test();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#suspend() Suspend}' operation.
+ *
+ *
+ * @return the meta object for the 'Suspend' operation.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#suspend()
+ * @generated
+ */
+ EOperation getDcaeManager__Suspend();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#resume() Resume}' operation.
+ *
+ *
+ * @return the meta object for the 'Resume' operation.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#resume()
+ * @generated
+ */
+ EOperation getDcaeManager__Resume();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#publicKey() Public Key}' operation.
+ *
+ *
+ * @return the meta object for the 'Public Key' operation.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#publicKey()
+ * @generated
+ */
+ EOperation getDcaeManager__PublicKey();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#configurationChanged() Configuration Changed}' operation.
+ *
+ *
+ * @return the meta object for the 'Configuration Changed' operation.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#configurationChanged()
+ * @generated
+ */
+ EOperation getDcaeManager__ConfigurationChanged();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.manager.DcaeManager#updateStreams(org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList) Update Streams}' operation.
+ *
+ *
+ * @return the meta object for the 'Update Streams' operation.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager#updateStreams(org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList)
+ * @generated
+ */
+ EOperation getDcaeManager__UpdateStreams__EList_EList();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ *
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ManagerFactory getManagerFactory();
+
+ /**
+ *
+ * Defines literals for the meta objects that represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.manager.impl.DcaeManagerImpl Dcae Manager}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.manager.impl.DcaeManagerImpl
+ * @see org.openecomp.dcae.controller.core.manager.impl.ManagerPackageImpl#getDcaeManager()
+ * @generated
+ */
+ EClass DCAE_MANAGER = eINSTANCE.getDcaeManager();
+
+ /**
+ * The meta object literal for the 'Input Streams' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_MANAGER__INPUT_STREAMS = eINSTANCE.getDcaeManager_InputStreams();
+
+ /**
+ * The meta object literal for the 'Output Streams' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_MANAGER__OUTPUT_STREAMS = eINSTANCE.getDcaeManager_OutputStreams();
+
+ /**
+ * The meta object literal for the 'Test' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_MANAGER___TEST = eINSTANCE.getDcaeManager__Test();
+
+ /**
+ * The meta object literal for the 'Suspend' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_MANAGER___SUSPEND = eINSTANCE.getDcaeManager__Suspend();
+
+ /**
+ * The meta object literal for the 'Resume' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_MANAGER___RESUME = eINSTANCE.getDcaeManager__Resume();
+
+ /**
+ * The meta object literal for the 'Public Key' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_MANAGER___PUBLIC_KEY = eINSTANCE.getDcaeManager__PublicKey();
+
+ /**
+ * The meta object literal for the 'Configuration Changed' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_MANAGER___CONFIGURATION_CHANGED = eINSTANCE.getDcaeManager__ConfigurationChanged();
+
+ /**
+ * The meta object literal for the 'Update Streams' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_MANAGER___UPDATE_STREAMS__ELIST_ELIST = eINSTANCE.getDcaeManager__UpdateStreams__EList_EList();
+
+ }
+
+} //ManagerPackage
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/DcaeManagerImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/DcaeManagerImpl.java
new file mode 100644
index 0000000..1ed926b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/DcaeManagerImpl.java
@@ -0,0 +1,308 @@
+
+/*-
+ * ============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.dcae.controller.core.manager.impl;
+
+import org.openecomp.dcae.controller.core.manager.DcaeManager;
+import org.openecomp.dcae.controller.core.manager.ManagerPackage;
+
+import org.openecomp.dcae.controller.core.service.HealthTestResponse;
+import org.openecomp.dcae.controller.core.stream.DcaeStream;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Manager'.
+ *
+ *
+ *
+ * @generated
+ */
+public abstract class DcaeManagerImpl extends MinimalEObjectImpl.Container implements DcaeManager {
+ /**
+ * The cached value of the '{@link #getInputStreams() Input Streams}' containment reference list.
+ *
+ *
+ * @see #getInputStreams()
+ * @generated
+ * @ordered
+ */
+ protected EList inputStreams;
+
+ /**
+ * The cached value of the '{@link #getOutputStreams() Output Streams}' containment reference list.
+ *
+ *
+ * @see #getOutputStreams()
+ * @generated
+ * @ordered
+ */
+ protected EList outputStreams;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeManagerImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ManagerPackage.Literals.DCAE_MANAGER;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EList getInputStreams() {
+ if (inputStreams == null) {
+ inputStreams = new EObjectContainmentEList(DcaeStream.class, this, ManagerPackage.DCAE_MANAGER__INPUT_STREAMS);
+ }
+ return inputStreams;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EList getOutputStreams() {
+ if (outputStreams == null) {
+ outputStreams = new EObjectContainmentEList(DcaeStream.class, this, ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS);
+ }
+ return outputStreams;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public HealthTestResponse test() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void suspend() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void resume() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String publicKey() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void configurationChanged() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void updateStreams(EList inputStreams, EList outputStreams) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ManagerPackage.DCAE_MANAGER__INPUT_STREAMS:
+ return ((InternalEList>)getInputStreams()).basicRemove(otherEnd, msgs);
+ case ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS:
+ return ((InternalEList>)getOutputStreams()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ManagerPackage.DCAE_MANAGER__INPUT_STREAMS:
+ return getInputStreams();
+ case ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS:
+ return getOutputStreams();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ManagerPackage.DCAE_MANAGER__INPUT_STREAMS:
+ getInputStreams().clear();
+ getInputStreams().addAll((Collection extends DcaeStream>)newValue);
+ return;
+ case ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS:
+ getOutputStreams().clear();
+ getOutputStreams().addAll((Collection extends DcaeStream>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ManagerPackage.DCAE_MANAGER__INPUT_STREAMS:
+ getInputStreams().clear();
+ return;
+ case ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS:
+ getOutputStreams().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ManagerPackage.DCAE_MANAGER__INPUT_STREAMS:
+ return inputStreams != null && !inputStreams.isEmpty();
+ case ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS:
+ return outputStreams != null && !outputStreams.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ @SuppressWarnings("unchecked")
+ public Object eInvoke(int operationID, EList> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case ManagerPackage.DCAE_MANAGER___TEST:
+ return test();
+ case ManagerPackage.DCAE_MANAGER___SUSPEND:
+ suspend();
+ return null;
+ case ManagerPackage.DCAE_MANAGER___RESUME:
+ resume();
+ return null;
+ case ManagerPackage.DCAE_MANAGER___PUBLIC_KEY:
+ return publicKey();
+ case ManagerPackage.DCAE_MANAGER___CONFIGURATION_CHANGED:
+ configurationChanged();
+ return null;
+ case ManagerPackage.DCAE_MANAGER___UPDATE_STREAMS__ELIST_ELIST:
+ updateStreams((EList)arguments.get(0), (EList)arguments.get(1));
+ return null;
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //DcaeManagerImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/ManagerFactoryImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/ManagerFactoryImpl.java
new file mode 100644
index 0000000..f9aaeaf
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/ManagerFactoryImpl.java
@@ -0,0 +1,105 @@
+
+/*-
+ * ============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.dcae.controller.core.manager.impl;
+
+import org.openecomp.dcae.controller.core.manager.*;
+
+import org.eclipse.emf.ecore.EClass;
+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;
+
+/**
+ *
+ * An implementation of the model Factory.
+ *
+ * @generated
+ */
+public class ManagerFactoryImpl extends EFactoryImpl implements ManagerFactory {
+ /**
+ * Creates the default factory implementation.
+ *
+ *
+ * @generated
+ */
+ public static ManagerFactory init() {
+ try {
+ ManagerFactory theManagerFactory = (ManagerFactory)EPackage.Registry.INSTANCE.getEFactory(ManagerPackage.eNS_URI);
+ if (theManagerFactory != null) {
+ return theManagerFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ManagerFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ *
+ *
+ * @generated
+ */
+ public ManagerFactoryImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ManagerPackage getManagerPackage() {
+ return (ManagerPackage)getEPackage();
+ }
+
+ /**
+ *
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ManagerPackage getPackage() {
+ return ManagerPackage.eINSTANCE;
+ }
+
+} //ManagerFactoryImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/ManagerPackageImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/ManagerPackageImpl.java
new file mode 100644
index 0000000..c2bc26b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/impl/ManagerPackageImpl.java
@@ -0,0 +1,316 @@
+
+/*-
+ * ============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.dcae.controller.core.manager.impl;
+
+import org.openecomp.dcae.controller.core.manager.DcaeManager;
+import org.openecomp.dcae.controller.core.manager.ManagerFactory;
+import org.openecomp.dcae.controller.core.manager.ManagerPackage;
+
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+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;
+
+/**
+ *
+ * An implementation of the model Package.
+ *
+ * @generated
+ */
+public class ManagerPackageImpl extends EPackageImpl implements ManagerPackage {
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeManagerEClass = null;
+
+ /**
+ * Creates an instance of the model Package, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ *
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.
+ *
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ManagerPackageImpl() {
+ super(eNS_URI, ManagerFactory.eINSTANCE);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the Package for this model, and for any others upon which it depends.
+ *
+ *
This method is used to initialize {@link ManagerPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ *
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ManagerPackage init() {
+ if (isInited) return (ManagerPackage)EPackage.Registry.INSTANCE.getEPackage(ManagerPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ManagerPackageImpl theManagerPackage = (ManagerPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ManagerPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ManagerPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ ServicePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theManagerPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theManagerPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theManagerPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ManagerPackage.eNS_URI, theManagerPackage);
+ return theManagerPackage;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeManager() {
+ return dcaeManagerEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeManager_InputStreams() {
+ return (EReference)dcaeManagerEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeManager_OutputStreams() {
+ return (EReference)dcaeManagerEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeManager__Test() {
+ return dcaeManagerEClass.getEOperations().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeManager__Suspend() {
+ return dcaeManagerEClass.getEOperations().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeManager__Resume() {
+ return dcaeManagerEClass.getEOperations().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeManager__PublicKey() {
+ return dcaeManagerEClass.getEOperations().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeManager__ConfigurationChanged() {
+ return dcaeManagerEClass.getEOperations().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeManager__UpdateStreams__EList_EList() {
+ return dcaeManagerEClass.getEOperations().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ManagerFactory getManagerFactory() {
+ return (ManagerFactory)getEFactoryInstance();
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dcaeManagerEClass = createEClass(DCAE_MANAGER);
+ createEReference(dcaeManagerEClass, DCAE_MANAGER__INPUT_STREAMS);
+ createEReference(dcaeManagerEClass, DCAE_MANAGER__OUTPUT_STREAMS);
+ createEOperation(dcaeManagerEClass, DCAE_MANAGER___TEST);
+ createEOperation(dcaeManagerEClass, DCAE_MANAGER___SUSPEND);
+ createEOperation(dcaeManagerEClass, DCAE_MANAGER___RESUME);
+ createEOperation(dcaeManagerEClass, DCAE_MANAGER___PUBLIC_KEY);
+ createEOperation(dcaeManagerEClass, DCAE_MANAGER___CONFIGURATION_CHANGED);
+ createEOperation(dcaeManagerEClass, DCAE_MANAGER___UPDATE_STREAMS__ELIST_ELIST);
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ StreamPackage theStreamPackage = (StreamPackage)EPackage.Registry.INSTANCE.getEPackage(StreamPackage.eNS_URI);
+ ServicePackage theServicePackage = (ServicePackage)EPackage.Registry.INSTANCE.getEPackage(ServicePackage.eNS_URI);
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dcaeManagerEClass, DcaeManager.class, "DcaeManager", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDcaeManager_InputStreams(), theStreamPackage.getDcaeStream(), null, "inputStreams", null, 0, -1, DcaeManager.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeManager_OutputStreams(), theStreamPackage.getDcaeStream(), null, "outputStreams", null, 0, -1, DcaeManager.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getDcaeManager__Test(), theServicePackage.getHealthTestResponse(), "test", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getDcaeManager__Suspend(), null, "suspend", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getDcaeManager__Resume(), null, "resume", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getDcaeManager__PublicKey(), theEcorePackage.getEString(), "publicKey", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getDcaeManager__ConfigurationChanged(), null, "configurationChanged", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ EOperation op = initEOperation(getDcaeManager__UpdateStreams__EList_EList(), null, "updateStreams", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theStreamPackage.getDcaeStream(), "inputStreams", 0, -1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theStreamPackage.getDcaeStream(), "outputStreams", 0, -1, !IS_UNIQUE, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/emf/2011/Xcore
+ createXcoreAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for http://www.eclipse.org/emf/2011/Xcore.
+ *
+ *
+ * @generated
+ */
+ protected void createXcoreAnnotations() {
+ String source = "http://www.eclipse.org/emf/2011/Xcore";
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "ecomp", "http://openecomp.org"
+ });
+ }
+
+} //ManagerPackageImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/util/ManagerAdapterFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/util/ManagerAdapterFactory.java
new file mode 100644
index 0000000..9f0c9b2
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/util/ManagerAdapterFactory.java
@@ -0,0 +1,141 @@
+
+/*-
+ * ============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.dcae.controller.core.manager.util;
+
+import org.openecomp.dcae.controller.core.manager.*;
+
+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;
+
+/**
+ *
+ * The Adapter Factory for the model.
+ * It provides an adapter createXXX method for each class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage
+ * @generated
+ */
+public class ManagerAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ *
+ *
+ * @generated
+ */
+ protected static ManagerPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ *
+ *
+ * @generated
+ */
+ public ManagerAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ManagerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ *
+ * This implementation returns true if the object is either the model's package or is an instance object of the model.
+ *
+ * @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 createXXX methods.
+ *
+ *
+ * @generated
+ */
+ protected ManagerSwitch modelSwitch =
+ new ManagerSwitch() {
+ @Override
+ public Adapter caseDcaeManager(DcaeManager object) {
+ return createDcaeManagerAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the target.
+ *
+ *
+ * @param target the object to adapt.
+ * @return the adapter for the target.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.manager.DcaeManager Dcae Manager}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager
+ * @generated
+ */
+ public Adapter createDcaeManagerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ *
+ * This default implementation returns null.
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ManagerAdapterFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/util/ManagerSwitch.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/util/ManagerSwitch.java
new file mode 100644
index 0000000..81ff606
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/manager/util/ManagerSwitch.java
@@ -0,0 +1,131 @@
+
+/*-
+ * ============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.dcae.controller.core.manager.util;
+
+import org.openecomp.dcae.controller.core.manager.*;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ *
+ * The Switch for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the caseXXX 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.
+ *
+ * @see org.openecomp.dcae.controller.core.manager.ManagerPackage
+ * @generated
+ */
+public class ManagerSwitch extends Switch {
+ /**
+ * The cached model package
+ *
+ *
+ * @generated
+ */
+ protected static ManagerPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ *
+ *
+ * @generated
+ */
+ public ManagerSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ManagerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ *
+ *
+ * @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 caseXXX for each class of the model until one returns a non null result; it yields that result.
+ *
+ *
+ * @return the first non-null result returned by a caseXXX call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ManagerPackage.DCAE_MANAGER: {
+ DcaeManager dcaeManager = (DcaeManager)theEObject;
+ T result = caseDcaeManager(dcaeManager);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Manager'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Manager'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeManager(DcaeManager object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'EObject'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'EObject'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ManagerSwitch
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ControllerCoreServer.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ControllerCoreServer.java
new file mode 100644
index 0000000..e53eb88
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ControllerCoreServer.java
@@ -0,0 +1,40 @@
+
+/*-
+ * ============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.dcae.controller.core.server;
+
+import org.openecomp.ncomp.sirius.manager.server.AbstractManagementServer;
+import org.openecomp.ncomp.sirius.manager.server.SouthBoundApiWithProxy;
+
+/**
+ *
+ * A representation of the model object 'Controller Core Server'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getControllerCoreServer()
+ * @model
+ * @generated
+ */
+public interface ControllerCoreServer extends SouthBoundApiWithProxy, AbstractManagementServer {
+} // ControllerCoreServer
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/DcaeBasicServer.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/DcaeBasicServer.java
new file mode 100644
index 0000000..5c1beb3
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/DcaeBasicServer.java
@@ -0,0 +1,331 @@
+
+/*-
+ * ============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.dcae.controller.core.server;
+
+import org.openecomp.ncomp.core.HasOperationalState;
+import org.openecomp.ncomp.core.NamedEntity;
+import org.openecomp.ncomp.core.logs.LogMessageContainer;
+import org.openecomp.ncomp.core.types.metrics.DateMetricAttribute;
+import org.openecomp.ncomp.openstack.compute.Server;
+import org.openecomp.ncomp.openstack.core.VirtualMachineType;
+import org.openecomp.ncomp.openstack.location.Hypervisor;
+import org.openecomp.ncomp.sirius.manager.agent.collectd.CollectdServer;
+import org.openecomp.ncomp.sirius.manager.properties.Module;
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Dcae Basic Server'.
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer()
+ * @model
+ * @generated
+ */
+public interface DcaeBasicServer extends NamedEntity, HasOperationalState, LogMessageContainer {
+ /**
+ * Returns the value of the 'Private Ip' attribute.
+ *
+ *
+ * If the meaning of the 'Private Ip' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Private Ip' attribute.
+ * @see #setPrivateIp(String)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_PrivateIp()
+ * @model unique="false"
+ * @generated
+ */
+ String getPrivateIp();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getPrivateIp Private Ip}' attribute.
+ *
+ *
+ * @param value the new value of the 'Private Ip' attribute.
+ * @see #getPrivateIp()
+ * @generated
+ */
+ void setPrivateIp(String value);
+
+ /**
+ * Returns the value of the 'Public Ip' attribute.
+ *
+ *
+ * If the meaning of the 'Public Ip' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Public Ip' attribute.
+ * @see #setPublicIp(String)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_PublicIp()
+ * @model unique="false"
+ * @generated
+ */
+ String getPublicIp();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getPublicIp Public Ip}' attribute.
+ *
+ *
+ * @param value the new value of the 'Public Ip' attribute.
+ * @see #getPublicIp()
+ * @generated
+ */
+ void setPublicIp(String value);
+
+ /**
+ * Returns the value of the 'Collectd' containment reference.
+ *
+ *
+ * If the meaning of the 'Collectd' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Collectd' containment reference.
+ * @see #setCollectd(CollectdServer)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_Collectd()
+ * @model containment="true"
+ * @generated
+ */
+ CollectdServer getCollectd();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getCollectd Collectd}' containment reference.
+ *
+ *
+ * @param value the new value of the 'Collectd' containment reference.
+ * @see #getCollectd()
+ * @generated
+ */
+ void setCollectd(CollectdServer value);
+
+ /**
+ * Returns the value of the 'Modules' containment reference list.
+ * The list contents are of type {@link org.openecomp.ncomp.sirius.manager.properties.Module}.
+ *
+ *
+ * If the meaning of the 'Modules' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Modules' containment reference list.
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_Modules()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getModules();
+
+ /**
+ * Returns the value of the 'Networks' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork}.
+ *
+ *
+ * If the meaning of the 'Networks' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Networks' containment reference list.
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_Networks()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getNetworks();
+
+ /**
+ * Returns the value of the 'Last Update' attribute.
+ *
+ *
+ * If the meaning of the 'Last Update' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Last Update' attribute.
+ * @see #setLastUpdate(DateMetricAttribute)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_LastUpdate()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.DateMetricAttribute" transient="true"
+ * @generated
+ */
+ DateMetricAttribute getLastUpdate();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getLastUpdate Last Update}' attribute.
+ *
+ *
+ * @param value the new value of the 'Last Update' attribute.
+ * @see #getLastUpdate()
+ * @generated
+ */
+ void setLastUpdate(DateMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Using Monitoring Agent' attribute.
+ * The default value is "true".
+ *
+ *
+ * If the meaning of the 'Using Monitoring Agent' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Using Monitoring Agent' attribute.
+ * @see #setUsingMonitoringAgent(boolean)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_UsingMonitoringAgent()
+ * @model default="true" unique="false"
+ * @generated
+ */
+ boolean isUsingMonitoringAgent();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#isUsingMonitoringAgent Using Monitoring Agent}' attribute.
+ *
+ *
+ * @param value the new value of the 'Using Monitoring Agent' attribute.
+ * @see #isUsingMonitoringAgent()
+ * @generated
+ */
+ void setUsingMonitoringAgent(boolean value);
+
+ /**
+ * Returns the value of the 'Server' reference.
+ *
+ *
+ * If the meaning of the 'Server' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Server' reference.
+ * @see #setServer(Server)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_Server()
+ * @model
+ * @generated
+ */
+ Server getServer();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getServer Server}' reference.
+ *
+ *
+ * @param value the new value of the 'Server' reference.
+ * @see #getServer()
+ * @generated
+ */
+ void setServer(Server value);
+
+ /**
+ * Returns the value of the 'Hypervisor' reference.
+ *
+ *
+ * If the meaning of the 'Hypervisor' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Hypervisor' reference.
+ * @see #setHypervisor(Hypervisor)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_Hypervisor()
+ * @model
+ * @generated
+ */
+ Hypervisor getHypervisor();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getHypervisor Hypervisor}' reference.
+ *
+ *
+ * @param value the new value of the 'Hypervisor' reference.
+ * @see #getHypervisor()
+ * @generated
+ */
+ void setHypervisor(Hypervisor value);
+
+ /**
+ * Returns the value of the 'Vm Type' reference.
+ *
+ *
+ * If the meaning of the 'Vm Type' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Vm Type' reference.
+ * @see #setVmType(VirtualMachineType)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_VmType()
+ * @model
+ * @generated
+ */
+ VirtualMachineType getVmType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getVmType Vm Type}' reference.
+ *
+ *
+ * @param value the new value of the 'Vm Type' reference.
+ * @see #getVmType()
+ * @generated
+ */
+ void setVmType(VirtualMachineType value);
+
+ /**
+ * Returns the value of the 'Certificate Password' attribute.
+ *
+ *
+ * If the meaning of the 'Certificate Password' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Certificate Password' attribute.
+ * @see #setCertificatePassword(String)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServer_CertificatePassword()
+ * @model unique="false"
+ * @generated
+ */
+ String getCertificatePassword();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getCertificatePassword Certificate Password}' attribute.
+ *
+ *
+ * @param value the new value of the 'Certificate Password' attribute.
+ * @see #getCertificatePassword()
+ * @generated
+ */
+ void setCertificatePassword(String value);
+
+} // DcaeBasicServer
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/DcaeBasicServerNetwork.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/DcaeBasicServerNetwork.java
new file mode 100644
index 0000000..2b699cb
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/DcaeBasicServerNetwork.java
@@ -0,0 +1,98 @@
+
+/*-
+ * ============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.dcae.controller.core.server;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Dcae Basic Server Network'.
+ *
+ *
+ *
{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getDnsName Dns Name}
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServerNetwork()
+ * @model
+ * @generated
+ */
+public interface DcaeBasicServerNetwork extends NamedEntity {
+ /**
+ * Returns the value of the 'Ip' attribute.
+ *
+ *
+ * If the meaning of the 'Ip' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Ip' attribute.
+ * @see #setIp(String)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServerNetwork_Ip()
+ * @model unique="false"
+ * @generated
+ */
+ String getIp();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getIp Ip}' attribute.
+ *
+ *
+ * @param value the new value of the 'Ip' attribute.
+ * @see #getIp()
+ * @generated
+ */
+ void setIp(String value);
+
+ /**
+ * Returns the value of the 'Dns Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dns Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dns Name' attribute.
+ * @see #setDnsName(String)
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#getDcaeBasicServerNetwork_DnsName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDnsName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getDnsName Dns Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dns Name' attribute.
+ * @see #getDnsName()
+ * @generated
+ */
+ void setDnsName(String value);
+
+} // DcaeBasicServerNetwork
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ServerFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ServerFactory.java
new file mode 100644
index 0000000..7740d44
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ServerFactory.java
@@ -0,0 +1,72 @@
+
+/*-
+ * ============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.dcae.controller.core.server;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ *
+ * The Factory for the model.
+ * It provides a create method for each non-abstract class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage
+ * @generated
+ */
+public interface ServerFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ *
+ *
+ * @generated
+ */
+ ServerFactory eINSTANCE = org.openecomp.dcae.controller.core.server.impl.ServerFactoryImpl.init();
+
+ /**
+ * Returns a new object of class 'Dcae Basic Server'.
+ *
+ *
+ * @return a new object of class 'Dcae Basic Server'.
+ * @generated
+ */
+ DcaeBasicServer createDcaeBasicServer();
+
+ /**
+ * Returns a new object of class 'Dcae Basic Server Network'.
+ *
+ *
+ * @return a new object of class 'Dcae Basic Server Network'.
+ * @generated
+ */
+ DcaeBasicServerNetwork createDcaeBasicServerNetwork();
+
+ /**
+ * Returns the package supported by this factory.
+ *
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ServerPackage getServerPackage();
+
+} //ServerFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ServerPackage.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ServerPackage.java
new file mode 100644
index 0000000..31ca18d
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/ServerPackage.java
@@ -0,0 +1,663 @@
+
+/*-
+ * ============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.dcae.controller.core.server;
+
+import org.openecomp.ncomp.core.CorePackage;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ *
+ * The Package for the model.
+ * It contains accessors for the meta objects to represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-core-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.core'"
+ * @generated
+ */
+public interface ServerPackage extends EPackage {
+ /**
+ * The package name.
+ *
+ *
+ * @generated
+ */
+ String eNAME = "server";
+
+ /**
+ * The package namespace URI.
+ *
+ *
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.core.server";
+
+ /**
+ * The package namespace name.
+ *
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "server";
+
+ /**
+ * The singleton instance of the package.
+ *
+ *
+ * @generated
+ */
+ ServerPackage eINSTANCE = org.openecomp.dcae.controller.core.server.impl.ServerPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerImpl Dcae Basic Server}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerImpl
+ * @see org.openecomp.dcae.controller.core.server.impl.ServerPackageImpl#getDcaeBasicServer()
+ * @generated
+ */
+ int DCAE_BASIC_SERVER = 0;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Operational State' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__OPERATIONAL_STATE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Log Message Configuration' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__LOG_MESSAGE_CONFIGURATION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Log Message Categories' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__LOG_MESSAGE_CATEGORIES = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Log Message Stats' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__LOG_MESSAGE_STATS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Private Ip' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__PRIVATE_IP = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Public Ip' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__PUBLIC_IP = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Collectd' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__COLLECTD = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the 'Modules' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__MODULES = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the 'Networks' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__NETWORKS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the 'Last Update' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__LAST_UPDATE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the 'Using Monitoring Agent' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__USING_MONITORING_AGENT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the 'Server' reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__SERVER = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 11;
+
+ /**
+ * The feature id for the 'Hypervisor' reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__HYPERVISOR = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 12;
+
+ /**
+ * The feature id for the 'Vm Type' reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__VM_TYPE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 13;
+
+ /**
+ * The feature id for the 'Certificate Password' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER__CERTIFICATE_PASSWORD = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 14;
+
+ /**
+ * The number of structural features of the 'Dcae Basic Server' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 15;
+
+ /**
+ * The number of operations of the 'Dcae Basic Server' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerNetworkImpl Dcae Basic Server Network}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerNetworkImpl
+ * @see org.openecomp.dcae.controller.core.server.impl.ServerPackageImpl#getDcaeBasicServerNetwork()
+ * @generated
+ */
+ int DCAE_BASIC_SERVER_NETWORK = 1;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Ip' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK__IP = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Dns Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK__DNS_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the 'Dcae Basic Server Network' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the 'Dcae Basic Server Network' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_BASIC_SERVER_NETWORK_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer Dcae Basic Server}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Basic Server'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer
+ * @generated
+ */
+ EClass getDcaeBasicServer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getPrivateIp Private Ip}'.
+ *
+ *
+ * @return the meta object for the attribute 'Private Ip'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getPrivateIp()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EAttribute getDcaeBasicServer_PrivateIp();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getPublicIp Public Ip}'.
+ *
+ *
+ * @return the meta object for the attribute 'Public Ip'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getPublicIp()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EAttribute getDcaeBasicServer_PublicIp();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getCollectd Collectd}'.
+ *
+ *
+ * @return the meta object for the containment reference 'Collectd'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getCollectd()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EReference getDcaeBasicServer_Collectd();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getModules Modules}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Modules'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getModules()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EReference getDcaeBasicServer_Modules();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getNetworks Networks}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Networks'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getNetworks()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EReference getDcaeBasicServer_Networks();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getLastUpdate Last Update}'.
+ *
+ *
+ * @return the meta object for the attribute 'Last Update'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getLastUpdate()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EAttribute getDcaeBasicServer_LastUpdate();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#isUsingMonitoringAgent Using Monitoring Agent}'.
+ *
+ *
+ * @return the meta object for the attribute 'Using Monitoring Agent'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#isUsingMonitoringAgent()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EAttribute getDcaeBasicServer_UsingMonitoringAgent();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getServer Server}'.
+ *
+ *
+ * @return the meta object for the reference 'Server'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getServer()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EReference getDcaeBasicServer_Server();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getHypervisor Hypervisor}'.
+ *
+ *
+ * @return the meta object for the reference 'Hypervisor'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getHypervisor()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EReference getDcaeBasicServer_Hypervisor();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getVmType Vm Type}'.
+ *
+ *
+ * @return the meta object for the reference 'Vm Type'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getVmType()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EReference getDcaeBasicServer_VmType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer#getCertificatePassword Certificate Password}'.
+ *
+ *
+ * @return the meta object for the attribute 'Certificate Password'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer#getCertificatePassword()
+ * @see #getDcaeBasicServer()
+ * @generated
+ */
+ EAttribute getDcaeBasicServer_CertificatePassword();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork Dcae Basic Server Network}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Basic Server Network'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork
+ * @generated
+ */
+ EClass getDcaeBasicServerNetwork();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getIp Ip}'.
+ *
+ *
+ * @return the meta object for the attribute 'Ip'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getIp()
+ * @see #getDcaeBasicServerNetwork()
+ * @generated
+ */
+ EAttribute getDcaeBasicServerNetwork_Ip();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getDnsName Dns Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dns Name'.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork#getDnsName()
+ * @see #getDcaeBasicServerNetwork()
+ * @generated
+ */
+ EAttribute getDcaeBasicServerNetwork_DnsName();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ *
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ServerFactory getServerFactory();
+
+ /**
+ *
+ * Defines literals for the meta objects that represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerImpl Dcae Basic Server}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerImpl
+ * @see org.openecomp.dcae.controller.core.server.impl.ServerPackageImpl#getDcaeBasicServer()
+ * @generated
+ */
+ EClass DCAE_BASIC_SERVER = eINSTANCE.getDcaeBasicServer();
+ /**
+ * The meta object literal for the 'Private Ip' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER__PRIVATE_IP = eINSTANCE.getDcaeBasicServer_PrivateIp();
+ /**
+ * The meta object literal for the 'Public Ip' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER__PUBLIC_IP = eINSTANCE.getDcaeBasicServer_PublicIp();
+ /**
+ * The meta object literal for the 'Collectd' containment reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_BASIC_SERVER__COLLECTD = eINSTANCE.getDcaeBasicServer_Collectd();
+ /**
+ * The meta object literal for the 'Modules' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_BASIC_SERVER__MODULES = eINSTANCE.getDcaeBasicServer_Modules();
+ /**
+ * The meta object literal for the 'Networks' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_BASIC_SERVER__NETWORKS = eINSTANCE.getDcaeBasicServer_Networks();
+ /**
+ * The meta object literal for the 'Last Update' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER__LAST_UPDATE = eINSTANCE.getDcaeBasicServer_LastUpdate();
+ /**
+ * The meta object literal for the 'Using Monitoring Agent' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER__USING_MONITORING_AGENT = eINSTANCE.getDcaeBasicServer_UsingMonitoringAgent();
+ /**
+ * The meta object literal for the 'Server' reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_BASIC_SERVER__SERVER = eINSTANCE.getDcaeBasicServer_Server();
+ /**
+ * The meta object literal for the 'Hypervisor' reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_BASIC_SERVER__HYPERVISOR = eINSTANCE.getDcaeBasicServer_Hypervisor();
+ /**
+ * The meta object literal for the 'Vm Type' reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_BASIC_SERVER__VM_TYPE = eINSTANCE.getDcaeBasicServer_VmType();
+ /**
+ * The meta object literal for the 'Certificate Password' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER__CERTIFICATE_PASSWORD = eINSTANCE.getDcaeBasicServer_CertificatePassword();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerNetworkImpl Dcae Basic Server Network}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerNetworkImpl
+ * @see org.openecomp.dcae.controller.core.server.impl.ServerPackageImpl#getDcaeBasicServerNetwork()
+ * @generated
+ */
+ EClass DCAE_BASIC_SERVER_NETWORK = eINSTANCE.getDcaeBasicServerNetwork();
+ /**
+ * The meta object literal for the 'Ip' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER_NETWORK__IP = eINSTANCE.getDcaeBasicServerNetwork_Ip();
+ /**
+ * The meta object literal for the 'Dns Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_BASIC_SERVER_NETWORK__DNS_NAME = eINSTANCE.getDcaeBasicServerNetwork_DnsName();
+
+ }
+
+} //ServerPackage
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/DcaeBasicServerImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/DcaeBasicServerImpl.java
new file mode 100644
index 0000000..3da755c
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/DcaeBasicServerImpl.java
@@ -0,0 +1,989 @@
+
+/*-
+ * ============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.dcae.controller.core.server.impl;
+
+import org.openecomp.dcae.controller.core.server.DcaeBasicServer;
+import org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork;
+import org.openecomp.dcae.controller.core.server.ServerPackage;
+import org.openecomp.ncomp.core.CorePackage;
+import org.openecomp.ncomp.core.HasOperationalState;
+import org.openecomp.ncomp.core.OperationalState;
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+import org.openecomp.ncomp.core.logs.LogMessageCategory;
+import org.openecomp.ncomp.core.logs.LogMessageContainer;
+import org.openecomp.ncomp.core.logs.LogMessageContainerConfiguration;
+import org.openecomp.ncomp.core.logs.LogMessageStats;
+import org.openecomp.ncomp.core.logs.LogsPackage;
+import org.openecomp.ncomp.core.types.metrics.DateMetricAttribute;
+import org.openecomp.ncomp.openstack.compute.Server;
+import org.openecomp.ncomp.openstack.core.VirtualMachineType;
+import org.openecomp.ncomp.openstack.location.Hypervisor;
+import org.openecomp.ncomp.sirius.manager.agent.collectd.CollectdServer;
+import org.openecomp.ncomp.sirius.manager.properties.Module;
+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;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Basic Server'.
+ *
+ *
{@link org.openecomp.dcae.controller.core.server.impl.DcaeBasicServerNetworkImpl#getDnsName Dns Name}
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeBasicServerNetworkImpl extends NamedEntityImpl implements DcaeBasicServerNetwork {
+ /**
+ * The default value of the '{@link #getIp() Ip}' attribute.
+ *
+ *
+ * @see #getIp()
+ * @generated
+ * @ordered
+ */
+ protected static final String IP_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIp() Ip}' attribute.
+ *
+ *
+ * @see #getIp()
+ * @generated
+ * @ordered
+ */
+ protected String ip = IP_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDnsName() Dns Name}' attribute.
+ *
+ *
+ * @see #getDnsName()
+ * @generated
+ * @ordered
+ */
+ protected static final String DNS_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDnsName() Dns Name}' attribute.
+ *
+ *
+ * @see #getDnsName()
+ * @generated
+ * @ordered
+ */
+ protected String dnsName = DNS_NAME_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeBasicServerNetworkImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ServerPackage.Literals.DCAE_BASIC_SERVER_NETWORK;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getIp() {
+ return ip;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setIp(String newIp) {
+ String oldIp = ip;
+ ip = newIp;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ServerPackage.DCAE_BASIC_SERVER_NETWORK__IP, oldIp, ip));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getDnsName() {
+ return dnsName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setDnsName(String newDnsName) {
+ String oldDnsName = dnsName;
+ dnsName = newDnsName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ServerPackage.DCAE_BASIC_SERVER_NETWORK__DNS_NAME, oldDnsName, dnsName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__IP:
+ return getIp();
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__DNS_NAME:
+ return getDnsName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__IP:
+ setIp((String)newValue);
+ return;
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__DNS_NAME:
+ setDnsName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__IP:
+ setIp(IP_EDEFAULT);
+ return;
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__DNS_NAME:
+ setDnsName(DNS_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__IP:
+ return IP_EDEFAULT == null ? ip != null : !IP_EDEFAULT.equals(ip);
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK__DNS_NAME:
+ return DNS_NAME_EDEFAULT == null ? dnsName != null : !DNS_NAME_EDEFAULT.equals(dnsName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (ip: ");
+ result.append(ip);
+ result.append(", dnsName: ");
+ result.append(dnsName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeBasicServerNetworkImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/ServerFactoryImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/ServerFactoryImpl.java
new file mode 100644
index 0000000..d265222
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/ServerFactoryImpl.java
@@ -0,0 +1,127 @@
+
+/*-
+ * ============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.dcae.controller.core.server.impl;
+
+import org.openecomp.dcae.controller.core.server.*;
+
+import org.eclipse.emf.ecore.EClass;
+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;
+
+/**
+ *
+ * An implementation of the model Factory.
+ *
+ * @generated
+ */
+public class ServerFactoryImpl extends EFactoryImpl implements ServerFactory {
+ /**
+ * Creates the default factory implementation.
+ *
+ *
+ * @generated
+ */
+ public static ServerFactory init() {
+ try {
+ ServerFactory theServerFactory = (ServerFactory)EPackage.Registry.INSTANCE.getEFactory(ServerPackage.eNS_URI);
+ if (theServerFactory != null) {
+ return theServerFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ServerFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ *
+ *
+ * @generated
+ */
+ public ServerFactoryImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ServerPackage.DCAE_BASIC_SERVER: return createDcaeBasicServer();
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK: return createDcaeBasicServerNetwork();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeBasicServer createDcaeBasicServer() {
+ DcaeBasicServerImpl dcaeBasicServer = new DcaeBasicServerImpl();
+ return dcaeBasicServer;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeBasicServerNetwork createDcaeBasicServerNetwork() {
+ DcaeBasicServerNetworkImpl dcaeBasicServerNetwork = new DcaeBasicServerNetworkImpl();
+ return dcaeBasicServerNetwork;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ServerPackage getServerPackage() {
+ return (ServerPackage)getEPackage();
+ }
+
+ /**
+ *
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ServerPackage getPackage() {
+ return ServerPackage.eINSTANCE;
+ }
+
+} //ServerFactoryImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/ServerPackageImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/ServerPackageImpl.java
new file mode 100644
index 0000000..1ed91e4
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/impl/ServerPackageImpl.java
@@ -0,0 +1,374 @@
+
+/*-
+ * ============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.dcae.controller.core.server.impl;
+
+import org.openecomp.dcae.controller.core.server.DcaeBasicServer;
+import org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork;
+import org.openecomp.dcae.controller.core.server.ServerFactory;
+import org.openecomp.dcae.controller.core.server.ServerPackage;
+import org.openecomp.ncomp.core.CorePackage;
+import org.openecomp.ncomp.core.logs.LogsPackage;
+import org.openecomp.ncomp.openstack.compute.ComputePackage;
+import org.openecomp.ncomp.openstack.location.LocationPackage;
+import org.openecomp.ncomp.sirius.manager.agent.collectd.CollectdPackage;
+import org.openecomp.ncomp.sirius.manager.properties.PropertiesPackage;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+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;
+
+/**
+ *
+ * An implementation of the model Package.
+ *
+ * @generated
+ */
+public class ServerPackageImpl extends EPackageImpl implements ServerPackage {
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeBasicServerEClass = null;
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeBasicServerNetworkEClass = null;
+ /**
+ * Creates an instance of the model Package, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ *
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.
+ *
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ServerPackageImpl() {
+ super(eNS_URI, ServerFactory.eINSTANCE);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the Package for this model, and for any others upon which it depends.
+ *
+ *
This method is used to initialize {@link ServerPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ *
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ServerPackage init() {
+ if (isInited) return (ServerPackage)EPackage.Registry.INSTANCE.getEPackage(ServerPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ServerPackageImpl theServerPackage = (ServerPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ServerPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ServerPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CollectdPackage.eINSTANCE.eClass();
+ PropertiesPackage.eINSTANCE.eClass();
+ LocationPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theServerPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theServerPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theServerPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ServerPackage.eNS_URI, theServerPackage);
+ return theServerPackage;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeBasicServer() {
+ return dcaeBasicServerEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServer_PrivateIp() {
+ return (EAttribute)dcaeBasicServerEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServer_PublicIp() {
+ return (EAttribute)dcaeBasicServerEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeBasicServer_Collectd() {
+ return (EReference)dcaeBasicServerEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeBasicServer_Modules() {
+ return (EReference)dcaeBasicServerEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeBasicServer_Networks() {
+ return (EReference)dcaeBasicServerEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServer_LastUpdate() {
+ return (EAttribute)dcaeBasicServerEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServer_UsingMonitoringAgent() {
+ return (EAttribute)dcaeBasicServerEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeBasicServer_Server() {
+ return (EReference)dcaeBasicServerEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeBasicServer_Hypervisor() {
+ return (EReference)dcaeBasicServerEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeBasicServer_VmType() {
+ return (EReference)dcaeBasicServerEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServer_CertificatePassword() {
+ return (EAttribute)dcaeBasicServerEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeBasicServerNetwork() {
+ return dcaeBasicServerNetworkEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServerNetwork_Ip() {
+ return (EAttribute)dcaeBasicServerNetworkEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeBasicServerNetwork_DnsName() {
+ return (EAttribute)dcaeBasicServerNetworkEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ServerFactory getServerFactory() {
+ return (ServerFactory)getEFactoryInstance();
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dcaeBasicServerEClass = createEClass(DCAE_BASIC_SERVER);
+ createEAttribute(dcaeBasicServerEClass, DCAE_BASIC_SERVER__PRIVATE_IP);
+ createEAttribute(dcaeBasicServerEClass, DCAE_BASIC_SERVER__PUBLIC_IP);
+ createEReference(dcaeBasicServerEClass, DCAE_BASIC_SERVER__COLLECTD);
+ createEReference(dcaeBasicServerEClass, DCAE_BASIC_SERVER__MODULES);
+ createEReference(dcaeBasicServerEClass, DCAE_BASIC_SERVER__NETWORKS);
+ createEAttribute(dcaeBasicServerEClass, DCAE_BASIC_SERVER__LAST_UPDATE);
+ createEAttribute(dcaeBasicServerEClass, DCAE_BASIC_SERVER__USING_MONITORING_AGENT);
+ createEReference(dcaeBasicServerEClass, DCAE_BASIC_SERVER__SERVER);
+ createEReference(dcaeBasicServerEClass, DCAE_BASIC_SERVER__HYPERVISOR);
+ createEReference(dcaeBasicServerEClass, DCAE_BASIC_SERVER__VM_TYPE);
+ createEAttribute(dcaeBasicServerEClass, DCAE_BASIC_SERVER__CERTIFICATE_PASSWORD);
+
+ dcaeBasicServerNetworkEClass = createEClass(DCAE_BASIC_SERVER_NETWORK);
+ createEAttribute(dcaeBasicServerNetworkEClass, DCAE_BASIC_SERVER_NETWORK__IP);
+ createEAttribute(dcaeBasicServerNetworkEClass, DCAE_BASIC_SERVER_NETWORK__DNS_NAME);
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CorePackage theCorePackage = (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ LogsPackage theLogsPackage = (LogsPackage)EPackage.Registry.INSTANCE.getEPackage(LogsPackage.eNS_URI);
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+ CollectdPackage theCollectdPackage = (CollectdPackage)EPackage.Registry.INSTANCE.getEPackage(CollectdPackage.eNS_URI);
+ PropertiesPackage thePropertiesPackage = (PropertiesPackage)EPackage.Registry.INSTANCE.getEPackage(PropertiesPackage.eNS_URI);
+ ComputePackage theComputePackage = (ComputePackage)EPackage.Registry.INSTANCE.getEPackage(ComputePackage.eNS_URI);
+ LocationPackage theLocationPackage = (LocationPackage)EPackage.Registry.INSTANCE.getEPackage(LocationPackage.eNS_URI);
+ org.openecomp.ncomp.openstack.core.CorePackage theCorePackage_1 = (org.openecomp.ncomp.openstack.core.CorePackage)EPackage.Registry.INSTANCE.getEPackage(org.openecomp.ncomp.openstack.core.CorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ dcaeBasicServerEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeBasicServerEClass.getESuperTypes().add(theCorePackage.getHasOperationalState());
+ dcaeBasicServerEClass.getESuperTypes().add(theLogsPackage.getLogMessageContainer());
+ dcaeBasicServerNetworkEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dcaeBasicServerEClass, DcaeBasicServer.class, "DcaeBasicServer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeBasicServer_PrivateIp(), theEcorePackage.getEString(), "privateIp", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeBasicServer_PublicIp(), theEcorePackage.getEString(), "publicIp", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeBasicServer_Collectd(), theCollectdPackage.getCollectdServer(), null, "collectd", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeBasicServer_Modules(), thePropertiesPackage.getModule(), null, "modules", null, 0, -1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getDcaeBasicServer_Networks(), this.getDcaeBasicServerNetwork(), null, "networks", null, 0, -1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDcaeBasicServer_LastUpdate(), theCorePackage.getDateMetricAttribute(), "lastUpdate", null, 0, 1, DcaeBasicServer.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeBasicServer_UsingMonitoringAgent(), theEcorePackage.getEBoolean(), "usingMonitoringAgent", "true", 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeBasicServer_Server(), theComputePackage.getServer(), null, "server", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeBasicServer_Hypervisor(), theLocationPackage.getHypervisor(), null, "hypervisor", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeBasicServer_VmType(), theCorePackage_1.getVirtualMachineType(), null, "vmType", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeBasicServer_CertificatePassword(), theEcorePackage.getEString(), "certificatePassword", null, 0, 1, DcaeBasicServer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeBasicServerNetworkEClass, DcaeBasicServerNetwork.class, "DcaeBasicServerNetwork", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeBasicServerNetwork_Ip(), theEcorePackage.getEString(), "ip", null, 0, 1, DcaeBasicServerNetwork.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeBasicServerNetwork_DnsName(), theEcorePackage.getEString(), "dnsName", null, 0, 1, DcaeBasicServerNetwork.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //ServerPackageImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/util/ServerAdapterFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/util/ServerAdapterFactory.java
new file mode 100644
index 0000000..a448cca
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/util/ServerAdapterFactory.java
@@ -0,0 +1,213 @@
+
+/*-
+ * ============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.dcae.controller.core.server.util;
+
+import org.openecomp.dcae.controller.core.server.*;
+import org.openecomp.ncomp.core.HasOperationalState;
+import org.openecomp.ncomp.core.NamedEntity;
+import org.openecomp.ncomp.core.logs.LogMessageContainer;
+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;
+
+/**
+ *
+ * The Adapter Factory for the model.
+ * It provides an adapter createXXX method for each class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage
+ * @generated
+ */
+public class ServerAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ *
+ *
+ * @generated
+ */
+ protected static ServerPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ *
+ *
+ * @generated
+ */
+ public ServerAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ServerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ *
+ * This implementation returns true if the object is either the model's package or is an instance object of the model.
+ *
+ * @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 createXXX methods.
+ *
+ *
+ * @generated
+ */
+ protected ServerSwitch modelSwitch =
+ new ServerSwitch() {
+ @Override
+ public Adapter caseDcaeBasicServer(DcaeBasicServer object) {
+ return createDcaeBasicServerAdapter();
+ }
+ @Override
+ public Adapter caseDcaeBasicServerNetwork(DcaeBasicServerNetwork object) {
+ return createDcaeBasicServerNetworkAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter caseHasOperationalState(HasOperationalState object) {
+ return createHasOperationalStateAdapter();
+ }
+ @Override
+ public Adapter caseLogMessageContainer(LogMessageContainer object) {
+ return createLogMessageContainerAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the target.
+ *
+ *
+ * @param target the object to adapt.
+ * @return the adapter for the target.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServer Dcae Basic Server}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServer
+ * @generated
+ */
+ public Adapter createDcaeBasicServerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork Dcae Basic Server Network}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.server.DcaeBasicServerNetwork
+ * @generated
+ */
+ public Adapter createDcaeBasicServerNetworkAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity Named Entity}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.HasOperationalState Has Operational State}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.HasOperationalState
+ * @generated
+ */
+ public Adapter createHasOperationalStateAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.logs.LogMessageContainer Log Message Container}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.logs.LogMessageContainer
+ * @generated
+ */
+ public Adapter createLogMessageContainerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ *
+ * This default implementation returns null.
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ServerAdapterFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/util/ServerSwitch.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/util/ServerSwitch.java
new file mode 100644
index 0000000..964f0cb
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/server/util/ServerSwitch.java
@@ -0,0 +1,202 @@
+
+/*-
+ * ============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.dcae.controller.core.server.util;
+
+import org.openecomp.dcae.controller.core.server.*;
+import org.openecomp.ncomp.core.HasOperationalState;
+import org.openecomp.ncomp.core.NamedEntity;
+import org.openecomp.ncomp.core.logs.LogMessageContainer;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ *
+ * The Switch for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the caseXXX 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.
+ *
+ * @see org.openecomp.dcae.controller.core.server.ServerPackage
+ * @generated
+ */
+public class ServerSwitch extends Switch {
+ /**
+ * The cached model package
+ *
+ *
+ * @generated
+ */
+ protected static ServerPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ *
+ *
+ * @generated
+ */
+ public ServerSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ServerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ *
+ *
+ * @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 caseXXX for each class of the model until one returns a non null result; it yields that result.
+ *
+ *
+ * @return the first non-null result returned by a caseXXX call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ServerPackage.DCAE_BASIC_SERVER: {
+ DcaeBasicServer dcaeBasicServer = (DcaeBasicServer)theEObject;
+ T result = caseDcaeBasicServer(dcaeBasicServer);
+ if (result == null) result = caseNamedEntity(dcaeBasicServer);
+ if (result == null) result = caseHasOperationalState(dcaeBasicServer);
+ if (result == null) result = caseLogMessageContainer(dcaeBasicServer);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServerPackage.DCAE_BASIC_SERVER_NETWORK: {
+ DcaeBasicServerNetwork dcaeBasicServerNetwork = (DcaeBasicServerNetwork)theEObject;
+ T result = caseDcaeBasicServerNetwork(dcaeBasicServerNetwork);
+ if (result == null) result = caseNamedEntity(dcaeBasicServerNetwork);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Basic Server'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Basic Server'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeBasicServer(DcaeBasicServer object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Basic Server Network'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Basic Server Network'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeBasicServerNetwork(DcaeBasicServerNetwork object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Named Entity'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Named Entity'.
+ * @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 'Has Operational State'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Has Operational State'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHasOperationalState(HasOperationalState object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Log Message Container'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Log Message Container'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLogMessageContainer(LogMessageContainer object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'EObject'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'EObject'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ServerSwitch
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeLocation.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeLocation.java
new file mode 100644
index 0000000..25ea31c
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeLocation.java
@@ -0,0 +1,99 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.openecomp.ncomp.openstack.location.OpenStackProject;
+
+
+/**
+ *
+ * A representation of the model object 'Dcae Location'.
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeLocation()
+ * @model
+ * @generated
+ */
+public interface DcaeLocation extends DcaeServiceContainer {
+
+ /**
+ * Returns the value of the 'Location Type' attribute.
+ *
+ *
+ * If the meaning of the 'Location Type' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Location Type' attribute.
+ * @see #setLocationType(String)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeLocation_LocationType()
+ * @model unique="false"
+ * @generated
+ */
+ String getLocationType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeLocation#getLocationType Location Type}' attribute.
+ *
+ *
+ * @param value the new value of the 'Location Type' attribute.
+ * @see #getLocationType()
+ * @generated
+ */
+ void setLocationType(String value);
+
+ /**
+ * Returns the value of the 'Openstack Project' reference.
+ *
+ *
+ * If the meaning of the 'Openstack Project' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Openstack Project' reference.
+ * @see #setOpenstackProject(OpenStackProject)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeLocation_OpenstackProject()
+ * @model
+ * @generated
+ */
+ OpenStackProject getOpenstackProject();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeLocation#getOpenstackProject Openstack Project}' reference.
+ *
+ *
+ * @param value the new value of the 'Openstack Project' reference.
+ * @see #getOpenstackProject()
+ * @generated
+ */
+ void setOpenstackProject(OpenStackProject value);
+} // DcaeLocation
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaePolicyEntity.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaePolicyEntity.java
new file mode 100644
index 0000000..3bbb77e
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaePolicyEntity.java
@@ -0,0 +1,240 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Dcae Policy Entity'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceContainer()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DcaeServiceContainer extends NamedEntity {
+ /**
+ * Returns the value of the 'Instances' reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance}.
+ * It is bidirectional and its opposite is '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getServiceContainer Service Container}'.
+ *
+ *
+ * If the meaning of the 'Instances' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Instances' reference list.
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceContainer_Instances()
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getServiceContainer
+ * @model opposite="serviceContainer"
+ * @generated
+ */
+ EList getInstances();
+
+} // DcaeServiceContainer
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeServiceDescriptor.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeServiceDescriptor.java
new file mode 100644
index 0000000..dc920ac
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeServiceDescriptor.java
@@ -0,0 +1,125 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Dcae Service Descriptor'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getGroupId Group Id}
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceDescriptor()
+ * @model
+ * @generated
+ */
+public interface DcaeServiceDescriptor extends NamedEntity {
+ /**
+ * Returns the value of the 'Group Id' attribute.
+ *
+ *
+ * If the meaning of the 'Group Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Group Id' attribute.
+ * @see #setGroupId(String)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceDescriptor_GroupId()
+ * @model unique="false"
+ * @generated
+ */
+ String getGroupId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getGroupId Group Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Group Id' attribute.
+ * @see #getGroupId()
+ * @generated
+ */
+ void setGroupId(String value);
+
+ /**
+ * Returns the value of the 'Artifact' attribute.
+ *
+ *
+ * If the meaning of the 'Artifact' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Artifact' attribute.
+ * @see #setArtifact(String)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceDescriptor_Artifact()
+ * @model unique="false"
+ * @generated
+ */
+ String getArtifact();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getArtifact Artifact}' attribute.
+ *
+ *
+ * @param value the new value of the 'Artifact' attribute.
+ * @see #getArtifact()
+ * @generated
+ */
+ void setArtifact(String value);
+
+ /**
+ * Returns the value of the 'Version' attribute.
+ *
+ *
+ * If the meaning of the 'Version' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Version' attribute.
+ * @see #setVersion(String)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceDescriptor_Version()
+ * @model unique="false"
+ * @generated
+ */
+ String getVersion();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getVersion Version}' attribute.
+ *
+ *
+ * @param value the new value of the 'Version' attribute.
+ * @see #getVersion()
+ * @generated
+ */
+ void setVersion(String value);
+
+} // DcaeServiceDescriptor
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeServiceInstance.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeServiceInstance.java
new file mode 100644
index 0000000..2475f84
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/DcaeServiceInstance.java
@@ -0,0 +1,229 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStream;
+import org.openecomp.ncomp.core.DeploymentStatus;
+import org.openecomp.ncomp.core.NamedEntity;
+import org.openecomp.ncomp.core.types.metrics.DateMetricAttribute;
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Dcae Service Instance'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getServiceContainer Service Container}
{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getLastHealthTest Last Health Test}
+ *
{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestStatus Health Test Status}
+ *
{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestMessageCode Health Test Message Code}
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DcaeServiceInstance extends NamedEntity {
+ /**
+ * Returns the value of the 'Service Container' reference.
+ * It is bidirectional and its opposite is '{@link org.openecomp.dcae.controller.core.service.DcaeServiceContainer#getInstances Instances}'.
+ *
+ *
+ * If the meaning of the 'Service Container' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Service Container' reference.
+ * @see #setServiceContainer(DcaeServiceContainer)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_ServiceContainer()
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceContainer#getInstances
+ * @model opposite="instances"
+ * annotation="http://openecomp.org type='operational'"
+ * @generated
+ */
+ DcaeServiceContainer getServiceContainer();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getServiceContainer Service Container}' reference.
+ *
+ *
+ * @param value the new value of the 'Service Container' reference.
+ * @see #getServiceContainer()
+ * @generated
+ */
+ void setServiceContainer(DcaeServiceContainer value);
+
+ /**
+ * Returns the value of the 'Status' attribute.
+ * The literals are from the enumeration {@link org.openecomp.ncomp.core.DeploymentStatus}.
+ *
+ *
+ * If the meaning of the 'Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Status' attribute.
+ * @see org.openecomp.ncomp.core.DeploymentStatus
+ * @see #setStatus(DeploymentStatus)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_Status()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='operational'"
+ * @generated
+ */
+ DeploymentStatus getStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getStatus Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Status' attribute.
+ * @see org.openecomp.ncomp.core.DeploymentStatus
+ * @see #getStatus()
+ * @generated
+ */
+ void setStatus(DeploymentStatus value);
+
+ /**
+ * Returns the value of the 'Input Streams' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DcaeStream}.
+ *
+ *
+ * If the meaning of the 'Input Streams' reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Input Streams' containment reference list.
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_InputStreams()
+ * @model containment="true"
+ * annotation="http://openecomp.org type='service'"
+ * @generated
+ */
+ EList getInputStreams();
+
+ /**
+ * Returns the value of the 'Output Streams' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DcaeStream}.
+ *
+ *
+ * If the meaning of the 'Output Streams' reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Output Streams' containment reference list.
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_OutputStreams()
+ * @model containment="true"
+ * annotation="http://openecomp.org type='service'"
+ * @generated
+ */
+ EList getOutputStreams();
+
+ /**
+ * Returns the value of the 'Last Health Test' attribute.
+ *
+ *
+ * If the meaning of the 'Last Health Test' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Last Health Test' attribute.
+ * @see #setLastHealthTest(DateMetricAttribute)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_LastHealthTest()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.DateMetricAttribute" transient="true"
+ * @generated
+ */
+ DateMetricAttribute getLastHealthTest();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getLastHealthTest Last Health Test}' attribute.
+ *
+ *
+ * @param value the new value of the 'Last Health Test' attribute.
+ * @see #getLastHealthTest()
+ * @generated
+ */
+ void setLastHealthTest(DateMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Health Test Status' attribute.
+ * The literals are from the enumeration {@link org.openecomp.dcae.controller.core.service.HealthTestStatus}.
+ *
+ *
+ * If the meaning of the 'Health Test Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Health Test Status' attribute.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @see #setHealthTestStatus(HealthTestStatus)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_HealthTestStatus()
+ * @model unique="false"
+ * @generated
+ */
+ HealthTestStatus getHealthTestStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestStatus Health Test Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Health Test Status' attribute.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @see #getHealthTestStatus()
+ * @generated
+ */
+ void setHealthTestStatus(HealthTestStatus value);
+
+ /**
+ * Returns the value of the 'Health Test Message Code' attribute.
+ *
+ *
+ * If the meaning of the 'Health Test Message Code' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Health Test Message Code' attribute.
+ * @see #setHealthTestMessageCode(String)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getDcaeServiceInstance_HealthTestMessageCode()
+ * @model unique="false"
+ * @generated
+ */
+ String getHealthTestMessageCode();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestMessageCode Health Test Message Code}' attribute.
+ *
+ *
+ * @param value the new value of the 'Health Test Message Code' attribute.
+ * @see #getHealthTestMessageCode()
+ * @generated
+ */
+ void setHealthTestMessageCode(String value);
+
+} // DcaeServiceInstance
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/HealthTestResponse.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/HealthTestResponse.java
new file mode 100644
index 0000000..0eaab17
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/HealthTestResponse.java
@@ -0,0 +1,101 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Healt Test Response'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getHealthTestResponse()
+ * @model
+ * @generated
+ */
+public interface HealthTestResponse extends EObject {
+ /**
+ * Returns the value of the 'Status' attribute.
+ * The literals are from the enumeration {@link org.openecomp.dcae.controller.core.service.HealthTestStatus}.
+ *
+ *
+ * If the meaning of the 'Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Status' attribute.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @see #setStatus(HealthTestStatus)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getHealthTestResponse_Status()
+ * @model unique="false"
+ * @generated
+ */
+ HealthTestStatus getStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.HealthTestResponse#getStatus Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Status' attribute.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @see #getStatus()
+ * @generated
+ */
+ void setStatus(HealthTestStatus value);
+
+ /**
+ * Returns the value of the 'Message Code' attribute.
+ *
+ *
+ * If the meaning of the 'Message Code' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Message Code' attribute.
+ * @see #setMessageCode(String)
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getHealthTestResponse_MessageCode()
+ * @model unique="false"
+ * @generated
+ */
+ String getMessageCode();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.service.HealthTestResponse#getMessageCode Message Code}' attribute.
+ *
+ *
+ * @param value the new value of the 'Message Code' attribute.
+ * @see #getMessageCode()
+ * @generated
+ */
+ void setMessageCode(String value);
+
+} // HealtTestResponse
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/HealthTestStatus.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/HealthTestStatus.java
new file mode 100644
index 0000000..be353a2
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/HealthTestStatus.java
@@ -0,0 +1,254 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ *
+ * A representation of the literals of the enumeration 'Health Test Status',
+ * and utility methods for working with them.
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getHealthTestStatus()
+ * @model
+ * @generated
+ */
+public enum HealthTestStatus implements Enumerator {
+ /**
+ * The 'GREEN' literal object.
+ *
+ *
+ * @see #GREEN_VALUE
+ * @generated
+ * @ordered
+ */
+ GREEN(0, "GREEN", "GREEN"),
+
+ /**
+ * The 'YELLOW' literal object.
+ *
+ *
+ * @see #YELLOW_VALUE
+ * @generated
+ * @ordered
+ */
+ YELLOW(0, "YELLOW", "YELLOW"),
+
+ /**
+ * The 'RED' literal object.
+ *
+ *
+ * @see #RED_VALUE
+ * @generated
+ * @ordered
+ */
+ RED(0, "RED", "RED");
+
+ /**
+ * The 'GREEN' literal value.
+ *
+ *
+ * If the meaning of 'GREEN' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #GREEN
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int GREEN_VALUE = 0;
+
+ /**
+ * The 'YELLOW' literal value.
+ *
+ *
+ * If the meaning of 'YELLOW' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #YELLOW
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int YELLOW_VALUE = 0;
+
+ /**
+ * The 'RED' literal value.
+ *
+ *
+ * If the meaning of 'RED' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #RED
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int RED_VALUE = 0;
+
+ /**
+ * An array of all the 'Health Test Status' enumerators.
+ *
+ *
+ * @generated
+ */
+ private static final HealthTestStatus[] VALUES_ARRAY =
+ new HealthTestStatus[] {
+ GREEN,
+ YELLOW,
+ RED,
+ };
+
+ /**
+ * A public read-only list of all the 'Health Test Status' enumerators.
+ *
+ *
+ * @generated
+ */
+ public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the 'Health Test Status' literal with the specified literal value.
+ *
+ *
+ * @generated
+ */
+ public static HealthTestStatus get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ HealthTestStatus result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Health Test Status' literal with the specified name.
+ *
+ *
+ * @generated
+ */
+ public static HealthTestStatus getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ HealthTestStatus result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Health Test Status' literal with the specified integer value.
+ *
+ *
+ * @generated
+ */
+ public static HealthTestStatus get(int value) {
+ switch (value) {
+ case GREEN_VALUE: return GREEN;
+ }
+ return null;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final int value;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String name;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ *
+ *
+ * @generated
+ */
+ private HealthTestStatus(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //HealthTestStatus
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/ServiceFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/ServiceFactory.java
new file mode 100644
index 0000000..2ad75f5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/ServiceFactory.java
@@ -0,0 +1,81 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ *
+ * The Factory for the model.
+ * It provides a create method for each non-abstract class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage
+ * @generated
+ */
+public interface ServiceFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ *
+ *
+ * @generated
+ */
+ ServiceFactory eINSTANCE = org.openecomp.dcae.controller.core.service.impl.ServiceFactoryImpl.init();
+
+ /**
+ * Returns a new object of class 'Dcae Location'.
+ *
+ *
+ * @return a new object of class 'Dcae Location'.
+ * @generated
+ */
+ DcaeLocation createDcaeLocation();
+
+ /**
+ * Returns a new object of class 'Dcae Service Descriptor'.
+ *
+ *
+ * @return a new object of class 'Dcae Service Descriptor'.
+ * @generated
+ */
+ DcaeServiceDescriptor createDcaeServiceDescriptor();
+
+ /**
+ * Returns a new object of class 'Health Test Response'.
+ *
+ *
+ * @return a new object of class 'Health Test Response'.
+ * @generated
+ */
+ HealthTestResponse createHealthTestResponse();
+
+ /**
+ * Returns the package supported by this factory.
+ *
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ServicePackage getServicePackage();
+
+} //ServiceFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/ServicePackage.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/ServicePackage.java
new file mode 100644
index 0000000..74f5786
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/ServicePackage.java
@@ -0,0 +1,1579 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.openecomp.ncomp.core.CorePackage;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ *
+ * The Package for the model.
+ * It contains accessors for the meta objects to represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServiceFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-core-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.core'"
+ * annotation="http://www.eclipse.org/emf/2011/Xcore ecomp='http://openecomp.org' cdap='http://openecomp.org/cdap'"
+ * @generated
+ */
+public interface ServicePackage extends EPackage {
+ /**
+ * The package name.
+ *
+ *
+ * @generated
+ */
+ String eNAME = "service";
+
+ /**
+ * The package namespace URI.
+ *
+ *
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.core.service";
+
+ /**
+ * The package namespace name.
+ *
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "service";
+
+ /**
+ * The singleton instance of the package.
+ *
+ *
+ * @generated
+ */
+ ServicePackage eINSTANCE = org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceImpl Dcae Service}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeService()
+ * @generated
+ */
+ int DCAE_SERVICE = 1;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceContainerImpl Dcae Service Container}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceContainerImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeServiceContainer()
+ * @generated
+ */
+ int DCAE_SERVICE_CONTAINER = 0;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Instances' reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER__INSTANCES = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the 'Dcae Service Container' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the 'Dcae Service Container' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_CONTAINER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The number of structural features of the 'Dcae Service' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the 'Deploy' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___DEPLOY__STRING_STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the 'Undeploy' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___UNDEPLOY__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the 'Test' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___TEST__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the 'Suspend' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___SUSPEND__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the 'Resume' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___RESUME__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 4;
+
+ /**
+ * The operation id for the 'Push Manager Configuration' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 5;
+
+ /**
+ * The operation id for the 'Poll Manager Configuration' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___POLL_MANAGER_CONFIGURATION__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 6;
+
+ /**
+ * The operation id for the 'Manager Configuration' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___MANAGER_CONFIGURATION__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 7;
+
+ /**
+ * The operation id for the 'Manager Operation' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 8;
+
+ /**
+ * The operation id for the 'Update Configuration From Policy' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 9;
+
+ /**
+ * The operation id for the 'Run Health Tests' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE___RUN_HEALTH_TESTS = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 10;
+
+ /**
+ * The number of operations of the 'Dcae Service' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 11;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceInstanceImpl Dcae Service Instance}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceInstanceImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeServiceInstance()
+ * @generated
+ */
+ int DCAE_SERVICE_INSTANCE = 2;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Service Container' reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__SERVICE_CONTAINER = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__STATUS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Input Streams' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__INPUT_STREAMS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Output Streams' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__OUTPUT_STREAMS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Last Health Test' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__LAST_HEALTH_TEST = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Health Test Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__HEALTH_TEST_STATUS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Health Test Message Code' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE__HEALTH_TEST_MESSAGE_CODE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the 'Dcae Service Instance' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The number of operations of the 'Dcae Service Instance' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_INSTANCE_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeLocationImpl Dcae Location}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeLocationImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeLocation()
+ * @generated
+ */
+ int DCAE_LOCATION = 3;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__NAME = DCAE_SERVICE_CONTAINER__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__LAST_POLLED = DCAE_SERVICE_CONTAINER__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__LAST_CHANGED = DCAE_SERVICE_CONTAINER__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__CREATED = DCAE_SERVICE_CONTAINER__CREATED;
+
+ /**
+ * The feature id for the 'Instances' reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__INSTANCES = DCAE_SERVICE_CONTAINER__INSTANCES;
+
+ /**
+ * The feature id for the 'Location Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__LOCATION_TYPE = DCAE_SERVICE_CONTAINER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Openstack Project' reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION__OPENSTACK_PROJECT = DCAE_SERVICE_CONTAINER_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the 'Dcae Location' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION_FEATURE_COUNT = DCAE_SERVICE_CONTAINER_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the 'Dcae Location' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_LOCATION_OPERATION_COUNT = DCAE_SERVICE_CONTAINER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceDescriptorImpl Dcae Service Descriptor}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceDescriptorImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeServiceDescriptor()
+ * @generated
+ */
+ int DCAE_SERVICE_DESCRIPTOR = 4;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Group Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__GROUP_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Artifact' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__ARTIFACT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Version' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR__VERSION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the 'Dcae Service Descriptor' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the 'Dcae Service Descriptor' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_SERVICE_DESCRIPTOR_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.HealthTestResponseImpl Health Test Response}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.HealthTestResponseImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getHealthTestResponse()
+ * @generated
+ */
+ int HEALTH_TEST_RESPONSE = 5;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HEALTH_TEST_RESPONSE__STATUS = 0;
+
+ /**
+ * The feature id for the 'Message Code' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HEALTH_TEST_RESPONSE__MESSAGE_CODE = 1;
+
+ /**
+ * The number of structural features of the 'Health Test Response' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HEALTH_TEST_RESPONSE_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the 'Health Test Response' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HEALTH_TEST_RESPONSE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaePolicyEntityImpl Dcae Policy Entity}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaePolicyEntityImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaePolicyEntity()
+ * @generated
+ */
+ int DCAE_POLICY_ENTITY = 6;
+
+ /**
+ * The feature id for the 'Policy Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_NAME = 0;
+
+ /**
+ * The feature id for the 'Policy Description' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_DESCRIPTION = 1;
+
+ /**
+ * The feature id for the 'Policy Config Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_CONFIG_NAME = 2;
+
+ /**
+ * The feature id for the 'Policy Template Version' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_TEMPLATE_VERSION = 3;
+
+ /**
+ * The feature id for the 'Policy Version' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_VERSION = 4;
+
+ /**
+ * The feature id for the 'Policy Priority' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_PRIORITY = 5;
+
+ /**
+ * The feature id for the 'Policy Scope' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY__POLICY_SCOPE = 6;
+
+ /**
+ * The number of structural features of the 'Dcae Policy Entity' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY_FEATURE_COUNT = 7;
+
+ /**
+ * The number of operations of the 'Dcae Policy Entity' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_POLICY_ENTITY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.service.HealthTestStatus Health Test Status}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getHealthTestStatus()
+ * @generated
+ */
+ int HEALTH_TEST_STATUS = 7;
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.DcaeService Dcae Service}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Service'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService
+ * @generated
+ */
+ EClass getDcaeService();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#deploy(java.lang.String, java.lang.String) Deploy}' operation.
+ *
+ *
+ * @return the meta object for the 'Deploy' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#deploy(java.lang.String, java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__Deploy__String_String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#undeploy(java.lang.String) Undeploy}' operation.
+ *
+ *
+ * @return the meta object for the 'Undeploy' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#undeploy(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__Undeploy__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#test(java.lang.String) Test}' operation.
+ *
+ *
+ * @return the meta object for the 'Test' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#test(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__Test__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#suspend(java.lang.String) Suspend}' operation.
+ *
+ *
+ * @return the meta object for the 'Suspend' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#suspend(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__Suspend__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#resume(java.lang.String) Resume}' operation.
+ *
+ *
+ * @return the meta object for the 'Resume' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#resume(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__Resume__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#pushManagerConfiguration(java.lang.String) Push Manager Configuration}' operation.
+ *
+ *
+ * @return the meta object for the 'Push Manager Configuration' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#pushManagerConfiguration(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__PushManagerConfiguration__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#pollManagerConfiguration(java.lang.String) Poll Manager Configuration}' operation.
+ *
+ *
+ * @return the meta object for the 'Poll Manager Configuration' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#pollManagerConfiguration(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__PollManagerConfiguration__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#managerConfiguration(java.lang.String) Manager Configuration}' operation.
+ *
+ *
+ * @return the meta object for the 'Manager Configuration' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#managerConfiguration(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__ManagerConfiguration__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#managerOperation(java.lang.String, java.lang.String, org.json.JSONObject) Manager Operation}' operation.
+ *
+ *
+ * @return the meta object for the 'Manager Operation' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#managerOperation(java.lang.String, java.lang.String, org.json.JSONObject)
+ * @generated
+ */
+ EOperation getDcaeService__ManagerOperation__String_String_JSONObject();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#updateConfigurationFromPolicy(java.lang.String) Update Configuration From Policy}' operation.
+ *
+ *
+ * @return the meta object for the 'Update Configuration From Policy' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#updateConfigurationFromPolicy(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaeService__UpdateConfigurationFromPolicy__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.core.service.DcaeService#runHealthTests() Run Health Tests}' operation.
+ *
+ *
+ * @return the meta object for the 'Run Health Tests' operation.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService#runHealthTests()
+ * @generated
+ */
+ EOperation getDcaeService__RunHealthTests();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.DcaeServiceContainer Dcae Service Container}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Service Container'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceContainer
+ * @generated
+ */
+ EClass getDcaeServiceContainer();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.openecomp.dcae.controller.core.service.DcaeServiceContainer#getInstances Instances}'.
+ *
+ *
+ * @return the meta object for the reference list 'Instances'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceContainer#getInstances()
+ * @see #getDcaeServiceContainer()
+ * @generated
+ */
+ EReference getDcaeServiceContainer_Instances();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance Dcae Service Instance}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Service Instance'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance
+ * @generated
+ */
+ EClass getDcaeServiceInstance();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getServiceContainer Service Container}'.
+ *
+ *
+ * @return the meta object for the reference 'Service Container'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getServiceContainer()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EReference getDcaeServiceInstance_ServiceContainer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getStatus Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Status'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getStatus()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EAttribute getDcaeServiceInstance_Status();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getInputStreams Input Streams}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Input Streams'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getInputStreams()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EReference getDcaeServiceInstance_InputStreams();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getOutputStreams Output Streams}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Output Streams'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getOutputStreams()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EReference getDcaeServiceInstance_OutputStreams();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getLastHealthTest Last Health Test}'.
+ *
+ *
+ * @return the meta object for the attribute 'Last Health Test'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getLastHealthTest()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EAttribute getDcaeServiceInstance_LastHealthTest();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestStatus Health Test Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Health Test Status'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestStatus()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EAttribute getDcaeServiceInstance_HealthTestStatus();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestMessageCode Health Test Message Code}'.
+ *
+ *
+ * @return the meta object for the attribute 'Health Test Message Code'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance#getHealthTestMessageCode()
+ * @see #getDcaeServiceInstance()
+ * @generated
+ */
+ EAttribute getDcaeServiceInstance_HealthTestMessageCode();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.DcaeLocation Dcae Location}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Location'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeLocation
+ * @generated
+ */
+ EClass getDcaeLocation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeLocation#getLocationType Location Type}'.
+ *
+ *
+ * @return the meta object for the attribute 'Location Type'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeLocation#getLocationType()
+ * @see #getDcaeLocation()
+ * @generated
+ */
+ EAttribute getDcaeLocation_LocationType();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.core.service.DcaeLocation#getOpenstackProject Openstack Project}'.
+ *
+ *
+ * @return the meta object for the reference 'Openstack Project'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeLocation#getOpenstackProject()
+ * @see #getDcaeLocation()
+ * @generated
+ */
+ EReference getDcaeLocation_OpenstackProject();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor Dcae Service Descriptor}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Service Descriptor'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor
+ * @generated
+ */
+ EClass getDcaeServiceDescriptor();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getGroupId Group Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Group Id'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getGroupId()
+ * @see #getDcaeServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDcaeServiceDescriptor_GroupId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getArtifact Artifact}'.
+ *
+ *
+ * @return the meta object for the attribute 'Artifact'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getArtifact()
+ * @see #getDcaeServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDcaeServiceDescriptor_Artifact();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getVersion Version}'.
+ *
+ *
+ * @return the meta object for the attribute 'Version'.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor#getVersion()
+ * @see #getDcaeServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDcaeServiceDescriptor_Version();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.HealthTestResponse Health Test Response}'.
+ *
+ *
+ * @return the meta object for class 'Health Test Response'.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestResponse
+ * @generated
+ */
+ EClass getHealthTestResponse();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.HealthTestResponse#getStatus Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Status'.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestResponse#getStatus()
+ * @see #getHealthTestResponse()
+ * @generated
+ */
+ EAttribute getHealthTestResponse_Status();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.HealthTestResponse#getMessageCode Message Code}'.
+ *
+ *
+ * @return the meta object for the attribute 'Message Code'.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestResponse#getMessageCode()
+ * @see #getHealthTestResponse()
+ * @generated
+ */
+ EAttribute getHealthTestResponse_MessageCode();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity Dcae Policy Entity}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Policy Entity'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity
+ * @generated
+ */
+ EClass getDcaePolicyEntity();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyName Policy Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Name'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyName()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyDescription Policy Description}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Description'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyDescription()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyDescription();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyConfigName Policy Config Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Config Name'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyConfigName()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyConfigName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyTemplateVersion Policy Template Version}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Template Version'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyTemplateVersion()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyTemplateVersion();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyVersion Policy Version}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Version'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyVersion()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyVersion();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyPriority Policy Priority}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Priority'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyPriority()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyPriority();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyScope Policy Scope}'.
+ *
+ *
+ * @return the meta object for the attribute 'Policy Scope'.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity#getPolicyScope()
+ * @see #getDcaePolicyEntity()
+ * @generated
+ */
+ EAttribute getDcaePolicyEntity_PolicyScope();
+
+ /**
+ * Returns the meta object for enum '{@link org.openecomp.dcae.controller.core.service.HealthTestStatus Health Test Status}'.
+ *
+ *
+ * @return the meta object for enum 'Health Test Status'.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @generated
+ */
+ EEnum getHealthTestStatus();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ *
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ServiceFactory getServiceFactory();
+
+ /**
+ *
+ * Defines literals for the meta objects that represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceImpl Dcae Service}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeService()
+ * @generated
+ */
+ EClass DCAE_SERVICE = eINSTANCE.getDcaeService();
+
+ /**
+ * The meta object literal for the 'Deploy' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___DEPLOY__STRING_STRING = eINSTANCE.getDcaeService__Deploy__String_String();
+
+ /**
+ * The meta object literal for the 'Undeploy' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___UNDEPLOY__STRING = eINSTANCE.getDcaeService__Undeploy__String();
+
+ /**
+ * The meta object literal for the 'Test' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___TEST__STRING = eINSTANCE.getDcaeService__Test__String();
+
+ /**
+ * The meta object literal for the 'Suspend' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___SUSPEND__STRING = eINSTANCE.getDcaeService__Suspend__String();
+
+ /**
+ * The meta object literal for the 'Resume' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___RESUME__STRING = eINSTANCE.getDcaeService__Resume__String();
+
+ /**
+ * The meta object literal for the 'Push Manager Configuration' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING = eINSTANCE.getDcaeService__PushManagerConfiguration__String();
+
+ /**
+ * The meta object literal for the 'Poll Manager Configuration' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___POLL_MANAGER_CONFIGURATION__STRING = eINSTANCE.getDcaeService__PollManagerConfiguration__String();
+
+ /**
+ * The meta object literal for the 'Manager Configuration' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___MANAGER_CONFIGURATION__STRING = eINSTANCE.getDcaeService__ManagerConfiguration__String();
+
+ /**
+ * The meta object literal for the 'Manager Operation' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT = eINSTANCE.getDcaeService__ManagerOperation__String_String_JSONObject();
+
+ /**
+ * The meta object literal for the 'Update Configuration From Policy' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING = eINSTANCE.getDcaeService__UpdateConfigurationFromPolicy__String();
+
+ /**
+ * The meta object literal for the 'Run Health Tests' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_SERVICE___RUN_HEALTH_TESTS = eINSTANCE.getDcaeService__RunHealthTests();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceContainerImpl Dcae Service Container}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceContainerImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeServiceContainer()
+ * @generated
+ */
+ EClass DCAE_SERVICE_CONTAINER = eINSTANCE.getDcaeServiceContainer();
+
+ /**
+ * The meta object literal for the 'Instances' reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_SERVICE_CONTAINER__INSTANCES = eINSTANCE.getDcaeServiceContainer_Instances();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceInstanceImpl Dcae Service Instance}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceInstanceImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeServiceInstance()
+ * @generated
+ */
+ EClass DCAE_SERVICE_INSTANCE = eINSTANCE.getDcaeServiceInstance();
+
+ /**
+ * The meta object literal for the 'Service Container' reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_SERVICE_INSTANCE__SERVICE_CONTAINER = eINSTANCE.getDcaeServiceInstance_ServiceContainer();
+
+ /**
+ * The meta object literal for the 'Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_INSTANCE__STATUS = eINSTANCE.getDcaeServiceInstance_Status();
+
+ /**
+ * The meta object literal for the 'Input Streams' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_SERVICE_INSTANCE__INPUT_STREAMS = eINSTANCE.getDcaeServiceInstance_InputStreams();
+
+ /**
+ * The meta object literal for the 'Output Streams' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_SERVICE_INSTANCE__OUTPUT_STREAMS = eINSTANCE.getDcaeServiceInstance_OutputStreams();
+
+ /**
+ * The meta object literal for the 'Last Health Test' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_INSTANCE__LAST_HEALTH_TEST = eINSTANCE.getDcaeServiceInstance_LastHealthTest();
+
+ /**
+ * The meta object literal for the 'Health Test Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_INSTANCE__HEALTH_TEST_STATUS = eINSTANCE.getDcaeServiceInstance_HealthTestStatus();
+
+ /**
+ * The meta object literal for the 'Health Test Message Code' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_INSTANCE__HEALTH_TEST_MESSAGE_CODE = eINSTANCE.getDcaeServiceInstance_HealthTestMessageCode();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeLocationImpl Dcae Location}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeLocationImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeLocation()
+ * @generated
+ */
+ EClass DCAE_LOCATION = eINSTANCE.getDcaeLocation();
+
+ /**
+ * The meta object literal for the 'Location Type' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_LOCATION__LOCATION_TYPE = eINSTANCE.getDcaeLocation_LocationType();
+
+ /**
+ * The meta object literal for the 'Openstack Project' reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_LOCATION__OPENSTACK_PROJECT = eINSTANCE.getDcaeLocation_OpenstackProject();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaeServiceDescriptorImpl Dcae Service Descriptor}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaeServiceDescriptorImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaeServiceDescriptor()
+ * @generated
+ */
+ EClass DCAE_SERVICE_DESCRIPTOR = eINSTANCE.getDcaeServiceDescriptor();
+
+ /**
+ * The meta object literal for the 'Group Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_DESCRIPTOR__GROUP_ID = eINSTANCE.getDcaeServiceDescriptor_GroupId();
+
+ /**
+ * The meta object literal for the 'Artifact' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_DESCRIPTOR__ARTIFACT = eINSTANCE.getDcaeServiceDescriptor_Artifact();
+
+ /**
+ * The meta object literal for the 'Version' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_SERVICE_DESCRIPTOR__VERSION = eINSTANCE.getDcaeServiceDescriptor_Version();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.HealthTestResponseImpl Health Test Response}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.HealthTestResponseImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getHealthTestResponse()
+ * @generated
+ */
+ EClass HEALTH_TEST_RESPONSE = eINSTANCE.getHealthTestResponse();
+
+ /**
+ * The meta object literal for the 'Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute HEALTH_TEST_RESPONSE__STATUS = eINSTANCE.getHealthTestResponse_Status();
+
+ /**
+ * The meta object literal for the 'Message Code' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute HEALTH_TEST_RESPONSE__MESSAGE_CODE = eINSTANCE.getHealthTestResponse_MessageCode();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.impl.DcaePolicyEntityImpl Dcae Policy Entity}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.impl.DcaePolicyEntityImpl
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getDcaePolicyEntity()
+ * @generated
+ */
+ EClass DCAE_POLICY_ENTITY = eINSTANCE.getDcaePolicyEntity();
+
+ /**
+ * The meta object literal for the 'Policy Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_NAME = eINSTANCE.getDcaePolicyEntity_PolicyName();
+
+ /**
+ * The meta object literal for the 'Policy Description' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_DESCRIPTION = eINSTANCE.getDcaePolicyEntity_PolicyDescription();
+
+ /**
+ * The meta object literal for the 'Policy Config Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_CONFIG_NAME = eINSTANCE.getDcaePolicyEntity_PolicyConfigName();
+
+ /**
+ * The meta object literal for the 'Policy Template Version' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_TEMPLATE_VERSION = eINSTANCE.getDcaePolicyEntity_PolicyTemplateVersion();
+
+ /**
+ * The meta object literal for the 'Policy Version' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_VERSION = eINSTANCE.getDcaePolicyEntity_PolicyVersion();
+
+ /**
+ * The meta object literal for the 'Policy Priority' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_PRIORITY = eINSTANCE.getDcaePolicyEntity_PolicyPriority();
+
+ /**
+ * The meta object literal for the 'Policy Scope' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_POLICY_ENTITY__POLICY_SCOPE = eINSTANCE.getDcaePolicyEntity_PolicyScope();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.service.HealthTestStatus Health Test Status}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.HealthTestStatus
+ * @see org.openecomp.dcae.controller.core.service.impl.ServicePackageImpl#getHealthTestStatus()
+ * @generated
+ */
+ EEnum HEALTH_TEST_STATUS = eINSTANCE.getHealthTestStatus();
+
+ }
+
+} //ServicePackage
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/User.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/User.java
new file mode 100644
index 0000000..0e7db04
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/User.java
@@ -0,0 +1,39 @@
+
+/*-
+ * ============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.dcae.controller.core.service;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'User'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#getUser()
+ * @model
+ * @generated
+ */
+public interface User extends NamedEntity {
+} // User
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/DcaeLocationImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/DcaeLocationImpl.java
new file mode 100644
index 0000000..553af71
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/DcaeLocationImpl.java
@@ -0,0 +1,242 @@
+
+/*-
+ * ============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.dcae.controller.core.service.impl;
+
+import org.openecomp.dcae.controller.core.service.DcaeLocation;
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.ncomp.openstack.location.OpenStackProject;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Location'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public class HealthTestResponseImpl extends MinimalEObjectImpl.Container implements HealthTestResponse {
+ /**
+ * The default value of the '{@link #getStatus() Status}' attribute.
+ *
+ *
+ * @see #getStatus()
+ * @generated
+ * @ordered
+ */
+ protected static final HealthTestStatus STATUS_EDEFAULT = HealthTestStatus.GREEN;
+
+ /**
+ * The cached value of the '{@link #getStatus() Status}' attribute.
+ *
+ *
+ * @see #getStatus()
+ * @generated
+ * @ordered
+ */
+ protected HealthTestStatus status = STATUS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getMessageCode() Message Code}' attribute.
+ *
+ *
+ * @see #getMessageCode()
+ * @generated
+ * @ordered
+ */
+ protected static final String MESSAGE_CODE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getMessageCode() Message Code}' attribute.
+ *
+ *
+ * @see #getMessageCode()
+ * @generated
+ * @ordered
+ */
+ protected String messageCode = MESSAGE_CODE_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected HealthTestResponseImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ServicePackage.Literals.HEALTH_TEST_RESPONSE;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public HealthTestStatus getStatus() {
+ return status;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setStatus(HealthTestStatus newStatus) {
+ HealthTestStatus oldStatus = status;
+ status = newStatus == null ? STATUS_EDEFAULT : newStatus;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ServicePackage.HEALTH_TEST_RESPONSE__STATUS, oldStatus, status));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getMessageCode() {
+ return messageCode;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setMessageCode(String newMessageCode) {
+ String oldMessageCode = messageCode;
+ messageCode = newMessageCode;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ServicePackage.HEALTH_TEST_RESPONSE__MESSAGE_CODE, oldMessageCode, messageCode));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ServicePackage.HEALTH_TEST_RESPONSE__STATUS:
+ return getStatus();
+ case ServicePackage.HEALTH_TEST_RESPONSE__MESSAGE_CODE:
+ return getMessageCode();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ServicePackage.HEALTH_TEST_RESPONSE__STATUS:
+ setStatus((HealthTestStatus)newValue);
+ return;
+ case ServicePackage.HEALTH_TEST_RESPONSE__MESSAGE_CODE:
+ setMessageCode((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ServicePackage.HEALTH_TEST_RESPONSE__STATUS:
+ setStatus(STATUS_EDEFAULT);
+ return;
+ case ServicePackage.HEALTH_TEST_RESPONSE__MESSAGE_CODE:
+ setMessageCode(MESSAGE_CODE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ServicePackage.HEALTH_TEST_RESPONSE__STATUS:
+ return status != STATUS_EDEFAULT;
+ case ServicePackage.HEALTH_TEST_RESPONSE__MESSAGE_CODE:
+ return MESSAGE_CODE_EDEFAULT == null ? messageCode != null : !MESSAGE_CODE_EDEFAULT.equals(messageCode);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (status: ");
+ result.append(status);
+ result.append(", messageCode: ");
+ result.append(messageCode);
+ result.append(')');
+ return result.toString();
+ }
+
+} //HealtTestResponseImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/ServiceFactoryImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/ServiceFactoryImpl.java
new file mode 100644
index 0000000..0b0ce9e
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/ServiceFactoryImpl.java
@@ -0,0 +1,189 @@
+
+/*-
+ * ============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.dcae.controller.core.service.impl;
+
+import org.openecomp.dcae.controller.core.service.*;
+
+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;
+
+/**
+ *
+ * An implementation of the model Factory.
+ *
+ * @generated
+ */
+public class ServiceFactoryImpl extends EFactoryImpl implements ServiceFactory {
+ /**
+ * Creates the default factory implementation.
+ *
+ *
+ * @generated
+ */
+ public static ServiceFactory init() {
+ try {
+ ServiceFactory theServiceFactory = (ServiceFactory)EPackage.Registry.INSTANCE.getEFactory(ServicePackage.eNS_URI);
+ if (theServiceFactory != null) {
+ return theServiceFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ServiceFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ *
+ *
+ * @generated
+ */
+ public ServiceFactoryImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ServicePackage.DCAE_LOCATION: return createDcaeLocation();
+ case ServicePackage.DCAE_SERVICE_DESCRIPTOR: return createDcaeServiceDescriptor();
+ case ServicePackage.HEALTH_TEST_RESPONSE: return createHealthTestResponse();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case ServicePackage.HEALTH_TEST_STATUS:
+ return createHealthTestStatusFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case ServicePackage.HEALTH_TEST_STATUS:
+ return convertHealthTestStatusToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeLocation createDcaeLocation() {
+ DcaeLocationImpl dcaeLocation = new DcaeLocationImpl();
+ return dcaeLocation;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeServiceDescriptor createDcaeServiceDescriptor() {
+ DcaeServiceDescriptorImpl dcaeServiceDescriptor = new DcaeServiceDescriptorImpl();
+ return dcaeServiceDescriptor;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public HealthTestResponse createHealthTestResponse() {
+ HealthTestResponseImpl healthTestResponse = new HealthTestResponseImpl();
+ return healthTestResponse;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public HealthTestStatus createHealthTestStatusFromString(EDataType eDataType, String initialValue) {
+ HealthTestStatus result = HealthTestStatus.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String convertHealthTestStatusToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ServicePackage getServicePackage() {
+ return (ServicePackage)getEPackage();
+ }
+
+ /**
+ *
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ServicePackage getPackage() {
+ return ServicePackage.eINSTANCE;
+ }
+
+} //ServiceFactoryImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/ServicePackageImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/ServicePackageImpl.java
new file mode 100644
index 0000000..f3bc7f0
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/impl/ServicePackageImpl.java
@@ -0,0 +1,857 @@
+
+/*-
+ * ============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.dcae.controller.core.service.impl;
+
+import org.openecomp.dcae.controller.core.service.DcaeLocation;
+import org.openecomp.dcae.controller.core.service.DcaePolicyEntity;
+import org.openecomp.dcae.controller.core.service.DcaeService;
+import org.openecomp.dcae.controller.core.service.DcaeServiceContainer;
+import org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor;
+import org.openecomp.dcae.controller.core.service.DcaeServiceInstance;
+import org.openecomp.dcae.controller.core.service.HealthTestResponse;
+import org.openecomp.dcae.controller.core.service.HealthTestStatus;
+import org.openecomp.dcae.controller.core.service.ServiceFactory;
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+import org.openecomp.ncomp.core.CorePackage;
+import org.openecomp.ncomp.openstack.location.LocationPackage;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+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;
+
+/**
+ *
+ * An implementation of the model Package.
+ *
+ * @generated
+ */
+public class ServicePackageImpl extends EPackageImpl implements ServicePackage {
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeServiceEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeServiceContainerEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeServiceInstanceEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeLocationEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeServiceDescriptorEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass healthTestResponseEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaePolicyEntityEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EEnum healthTestStatusEEnum = null;
+
+ /**
+ * Creates an instance of the model Package, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ *
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.
+ *
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ServicePackageImpl() {
+ super(eNS_URI, ServiceFactory.eINSTANCE);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the Package for this model, and for any others upon which it depends.
+ *
+ *
This method is used to initialize {@link ServicePackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ *
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ServicePackage init() {
+ if (isInited) return (ServicePackage)EPackage.Registry.INSTANCE.getEPackage(ServicePackage.eNS_URI);
+
+ // Obtain or create and register package
+ ServicePackageImpl theServicePackage = (ServicePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ServicePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ServicePackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ LocationPackage.eINSTANCE.eClass();
+ StreamPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theServicePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theServicePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theServicePackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ServicePackage.eNS_URI, theServicePackage);
+ return theServicePackage;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeService() {
+ return dcaeServiceEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__Deploy__String_String() {
+ return dcaeServiceEClass.getEOperations().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__Undeploy__String() {
+ return dcaeServiceEClass.getEOperations().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__Test__String() {
+ return dcaeServiceEClass.getEOperations().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__Suspend__String() {
+ return dcaeServiceEClass.getEOperations().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__Resume__String() {
+ return dcaeServiceEClass.getEOperations().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__PushManagerConfiguration__String() {
+ return dcaeServiceEClass.getEOperations().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__PollManagerConfiguration__String() {
+ return dcaeServiceEClass.getEOperations().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__ManagerConfiguration__String() {
+ return dcaeServiceEClass.getEOperations().get(7);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__ManagerOperation__String_String_JSONObject() {
+ return dcaeServiceEClass.getEOperations().get(8);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__UpdateConfigurationFromPolicy__String() {
+ return dcaeServiceEClass.getEOperations().get(9);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EOperation getDcaeService__RunHealthTests() {
+ return dcaeServiceEClass.getEOperations().get(10);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeServiceContainer() {
+ return dcaeServiceContainerEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeServiceContainer_Instances() {
+ return (EReference)dcaeServiceContainerEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeServiceInstance() {
+ return dcaeServiceInstanceEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeServiceInstance_ServiceContainer() {
+ return (EReference)dcaeServiceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceInstance_Status() {
+ return (EAttribute)dcaeServiceInstanceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeServiceInstance_InputStreams() {
+ return (EReference)dcaeServiceInstanceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeServiceInstance_OutputStreams() {
+ return (EReference)dcaeServiceInstanceEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceInstance_LastHealthTest() {
+ return (EAttribute)dcaeServiceInstanceEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceInstance_HealthTestStatus() {
+ return (EAttribute)dcaeServiceInstanceEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceInstance_HealthTestMessageCode() {
+ return (EAttribute)dcaeServiceInstanceEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeLocation() {
+ return dcaeLocationEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeLocation_LocationType() {
+ return (EAttribute)dcaeLocationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeLocation_OpenstackProject() {
+ return (EReference)dcaeLocationEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeServiceDescriptor() {
+ return dcaeServiceDescriptorEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceDescriptor_GroupId() {
+ return (EAttribute)dcaeServiceDescriptorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceDescriptor_Artifact() {
+ return (EAttribute)dcaeServiceDescriptorEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeServiceDescriptor_Version() {
+ return (EAttribute)dcaeServiceDescriptorEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getHealthTestResponse() {
+ return healthTestResponseEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getHealthTestResponse_Status() {
+ return (EAttribute)healthTestResponseEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getHealthTestResponse_MessageCode() {
+ return (EAttribute)healthTestResponseEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaePolicyEntity() {
+ return dcaePolicyEntityEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyName() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyDescription() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyConfigName() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyTemplateVersion() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyVersion() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyPriority() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaePolicyEntity_PolicyScope() {
+ return (EAttribute)dcaePolicyEntityEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EEnum getHealthTestStatus() {
+ return healthTestStatusEEnum;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ServiceFactory getServiceFactory() {
+ return (ServiceFactory)getEFactoryInstance();
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dcaeServiceContainerEClass = createEClass(DCAE_SERVICE_CONTAINER);
+ createEReference(dcaeServiceContainerEClass, DCAE_SERVICE_CONTAINER__INSTANCES);
+
+ dcaeServiceEClass = createEClass(DCAE_SERVICE);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___DEPLOY__STRING_STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___UNDEPLOY__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___TEST__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___SUSPEND__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___RESUME__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___POLL_MANAGER_CONFIGURATION__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___MANAGER_CONFIGURATION__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING);
+ createEOperation(dcaeServiceEClass, DCAE_SERVICE___RUN_HEALTH_TESTS);
+
+ dcaeServiceInstanceEClass = createEClass(DCAE_SERVICE_INSTANCE);
+ createEReference(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__SERVICE_CONTAINER);
+ createEAttribute(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__STATUS);
+ createEReference(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__INPUT_STREAMS);
+ createEReference(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__OUTPUT_STREAMS);
+ createEAttribute(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__LAST_HEALTH_TEST);
+ createEAttribute(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__HEALTH_TEST_STATUS);
+ createEAttribute(dcaeServiceInstanceEClass, DCAE_SERVICE_INSTANCE__HEALTH_TEST_MESSAGE_CODE);
+
+ dcaeLocationEClass = createEClass(DCAE_LOCATION);
+ createEAttribute(dcaeLocationEClass, DCAE_LOCATION__LOCATION_TYPE);
+ createEReference(dcaeLocationEClass, DCAE_LOCATION__OPENSTACK_PROJECT);
+
+ dcaeServiceDescriptorEClass = createEClass(DCAE_SERVICE_DESCRIPTOR);
+ createEAttribute(dcaeServiceDescriptorEClass, DCAE_SERVICE_DESCRIPTOR__GROUP_ID);
+ createEAttribute(dcaeServiceDescriptorEClass, DCAE_SERVICE_DESCRIPTOR__ARTIFACT);
+ createEAttribute(dcaeServiceDescriptorEClass, DCAE_SERVICE_DESCRIPTOR__VERSION);
+
+ healthTestResponseEClass = createEClass(HEALTH_TEST_RESPONSE);
+ createEAttribute(healthTestResponseEClass, HEALTH_TEST_RESPONSE__STATUS);
+ createEAttribute(healthTestResponseEClass, HEALTH_TEST_RESPONSE__MESSAGE_CODE);
+
+ dcaePolicyEntityEClass = createEClass(DCAE_POLICY_ENTITY);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_NAME);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_DESCRIPTION);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_CONFIG_NAME);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_TEMPLATE_VERSION);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_VERSION);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_PRIORITY);
+ createEAttribute(dcaePolicyEntityEClass, DCAE_POLICY_ENTITY__POLICY_SCOPE);
+
+ // Create enums
+ healthTestStatusEEnum = createEEnum(HEALTH_TEST_STATUS);
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CorePackage theCorePackage = (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+ StreamPackage theStreamPackage = (StreamPackage)EPackage.Registry.INSTANCE.getEPackage(StreamPackage.eNS_URI);
+ LocationPackage theLocationPackage = (LocationPackage)EPackage.Registry.INSTANCE.getEPackage(LocationPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ dcaeServiceContainerEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeServiceEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeServiceInstanceEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeLocationEClass.getESuperTypes().add(this.getDcaeServiceContainer());
+ dcaeServiceDescriptorEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dcaeServiceContainerEClass, DcaeServiceContainer.class, "DcaeServiceContainer", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDcaeServiceContainer_Instances(), this.getDcaeServiceInstance(), this.getDcaeServiceInstance_ServiceContainer(), "instances", null, 0, -1, DcaeServiceContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeServiceEClass, DcaeService.class, "DcaeService", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ EOperation op = initEOperation(getDcaeService__Deploy__String_String(), null, "deploy", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "containerPath", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__Undeploy__String(), null, "undeploy", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__Test__String(), this.getHealthTestResponse(), "test", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__Suspend__String(), null, "suspend", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__Resume__String(), null, "resume", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__PushManagerConfiguration__String(), null, "pushManagerConfiguration", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__PollManagerConfiguration__String(), null, "pollManagerConfiguration", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__ManagerConfiguration__String(), theEcorePackage.getEObject(), "managerConfiguration", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__ManagerOperation__String_String_JSONObject(), theCorePackage.getJsonObject(), "managerOperation", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "operation", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theCorePackage.getJsonObject(), "parameters", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ op = initEOperation(getDcaeService__UpdateConfigurationFromPolicy__String(), null, "updateConfigurationFromPolicy", 0, 1, !IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, theEcorePackage.getEString(), "instanceName", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getDcaeService__RunHealthTests(), null, "runHealthTests", 0, 1, !IS_UNIQUE, IS_ORDERED);
+
+ initEClass(dcaeServiceInstanceEClass, DcaeServiceInstance.class, "DcaeServiceInstance", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDcaeServiceInstance_ServiceContainer(), this.getDcaeServiceContainer(), this.getDcaeServiceContainer_Instances(), "serviceContainer", null, 0, 1, DcaeServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeServiceInstance_Status(), theCorePackage.getDeploymentStatus(), "status", null, 0, 1, DcaeServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeServiceInstance_InputStreams(), theStreamPackage.getDcaeStream(), null, "inputStreams", null, 0, -1, DcaeServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeServiceInstance_OutputStreams(), theStreamPackage.getDcaeStream(), null, "outputStreams", null, 0, -1, DcaeServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeServiceInstance_LastHealthTest(), theCorePackage.getDateMetricAttribute(), "lastHealthTest", null, 0, 1, DcaeServiceInstance.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeServiceInstance_HealthTestStatus(), this.getHealthTestStatus(), "healthTestStatus", null, 0, 1, DcaeServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeServiceInstance_HealthTestMessageCode(), theEcorePackage.getEString(), "healthTestMessageCode", null, 0, 1, DcaeServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeLocationEClass, DcaeLocation.class, "DcaeLocation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeLocation_LocationType(), theEcorePackage.getEString(), "locationType", null, 0, 1, DcaeLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeLocation_OpenstackProject(), theLocationPackage.getOpenStackProject(), null, "openstackProject", null, 0, 1, DcaeLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeServiceDescriptorEClass, DcaeServiceDescriptor.class, "DcaeServiceDescriptor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeServiceDescriptor_GroupId(), theEcorePackage.getEString(), "groupId", null, 0, 1, DcaeServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeServiceDescriptor_Artifact(), theEcorePackage.getEString(), "artifact", null, 0, 1, DcaeServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeServiceDescriptor_Version(), theEcorePackage.getEString(), "version", null, 0, 1, DcaeServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(healthTestResponseEClass, HealthTestResponse.class, "HealthTestResponse", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getHealthTestResponse_Status(), this.getHealthTestStatus(), "status", null, 0, 1, HealthTestResponse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getHealthTestResponse_MessageCode(), theEcorePackage.getEString(), "messageCode", null, 0, 1, HealthTestResponse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaePolicyEntityEClass, DcaePolicyEntity.class, "DcaePolicyEntity", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaePolicyEntity_PolicyName(), theEcorePackage.getEString(), "policyName", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaePolicyEntity_PolicyDescription(), theEcorePackage.getEString(), "policyDescription", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaePolicyEntity_PolicyConfigName(), theEcorePackage.getEString(), "policyConfigName", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaePolicyEntity_PolicyTemplateVersion(), theEcorePackage.getEString(), "policyTemplateVersion", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaePolicyEntity_PolicyVersion(), theEcorePackage.getEString(), "policyVersion", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaePolicyEntity_PolicyPriority(), theEcorePackage.getEString(), "policyPriority", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaePolicyEntity_PolicyScope(), theEcorePackage.getEString(), "policyScope", null, 0, 1, DcaePolicyEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(healthTestStatusEEnum, HealthTestStatus.class, "HealthTestStatus");
+ addEEnumLiteral(healthTestStatusEEnum, HealthTestStatus.GREEN);
+ addEEnumLiteral(healthTestStatusEEnum, HealthTestStatus.YELLOW);
+ addEEnumLiteral(healthTestStatusEEnum, HealthTestStatus.RED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/emf/2011/Xcore
+ createXcoreAnnotations();
+ // http://openecomp.org
+ createEcompAnnotations();
+ // http://openecomp.org/cdap
+ createCdapAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for http://www.eclipse.org/emf/2011/Xcore.
+ *
+ *
+ * @generated
+ */
+ protected void createXcoreAnnotations() {
+ String source = "http://www.eclipse.org/emf/2011/Xcore";
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "ecomp", "http://openecomp.org",
+ "cdap", "http://openecomp.org/cdap"
+ });
+ }
+
+ /**
+ * Initializes the annotations for http://openecomp.org.
+ *
+ *
+ * @generated
+ */
+ protected void createEcompAnnotations() {
+ String source = "http://openecomp.org";
+ addAnnotation
+ (getDcaeServiceInstance_ServiceContainer(),
+ source,
+ new String[] {
+ "type", "operational"
+ });
+ addAnnotation
+ (getDcaeServiceInstance_Status(),
+ source,
+ new String[] {
+ "type", "operational"
+ });
+ addAnnotation
+ (getDcaeServiceInstance_InputStreams(),
+ source,
+ new String[] {
+ "type", "service"
+ });
+ addAnnotation
+ (getDcaeServiceInstance_OutputStreams(),
+ source,
+ new String[] {
+ "type", "service"
+ });
+ }
+
+ /**
+ * Initializes the annotations for http://openecomp.org/cdap.
+ *
+ *
+ * @generated
+ */
+ protected void createCdapAnnotations() {
+ String source = "http://openecomp.org/cdap";
+ addAnnotation
+ (getDcaePolicyEntity_PolicyName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyName"
+ });
+ addAnnotation
+ (getDcaePolicyEntity_PolicyDescription(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyDescription"
+ });
+ addAnnotation
+ (getDcaePolicyEntity_PolicyConfigName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyConfigName"
+ });
+ addAnnotation
+ (getDcaePolicyEntity_PolicyTemplateVersion(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyTemplateVersion"
+ });
+ addAnnotation
+ (getDcaePolicyEntity_PolicyVersion(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyVersion"
+ });
+ addAnnotation
+ (getDcaePolicyEntity_PolicyPriority(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyPriority"
+ });
+ addAnnotation
+ (getDcaePolicyEntity_PolicyScope(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs::${path}.policyScope"
+ });
+ }
+
+} //ServicePackageImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/util/ServiceAdapterFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/util/ServiceAdapterFactory.java
new file mode 100644
index 0000000..be5e923
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/util/ServiceAdapterFactory.java
@@ -0,0 +1,269 @@
+
+/*-
+ * ============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.dcae.controller.core.service.util;
+
+import org.openecomp.dcae.controller.core.service.*;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+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;
+
+/**
+ *
+ * The Adapter Factory for the model.
+ * It provides an adapter createXXX method for each class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage
+ * @generated
+ */
+public class ServiceAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ *
+ *
+ * @generated
+ */
+ protected static ServicePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ *
+ *
+ * @generated
+ */
+ public ServiceAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ServicePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ *
+ * This implementation returns true if the object is either the model's package or is an instance object of the model.
+ *
+ * @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 createXXX methods.
+ *
+ *
+ * @generated
+ */
+ protected ServiceSwitch modelSwitch =
+ new ServiceSwitch() {
+ @Override
+ public Adapter caseDcaeServiceContainer(DcaeServiceContainer object) {
+ return createDcaeServiceContainerAdapter();
+ }
+ @Override
+ public Adapter caseDcaeService(DcaeService object) {
+ return createDcaeServiceAdapter();
+ }
+ @Override
+ public Adapter caseDcaeServiceInstance(DcaeServiceInstance object) {
+ return createDcaeServiceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseDcaeLocation(DcaeLocation object) {
+ return createDcaeLocationAdapter();
+ }
+ @Override
+ public Adapter caseDcaeServiceDescriptor(DcaeServiceDescriptor object) {
+ return createDcaeServiceDescriptorAdapter();
+ }
+ @Override
+ public Adapter caseHealthTestResponse(HealthTestResponse object) {
+ return createHealthTestResponseAdapter();
+ }
+ @Override
+ public Adapter caseDcaePolicyEntity(DcaePolicyEntity object) {
+ return createDcaePolicyEntityAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the target.
+ *
+ *
+ * @param target the object to adapt.
+ * @return the adapter for the target.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaeService Dcae Service}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaeService
+ * @generated
+ */
+ public Adapter createDcaeServiceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaeServiceContainer Dcae Service Container}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceContainer
+ * @generated
+ */
+ public Adapter createDcaeServiceContainerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaeServiceInstance Dcae Service Instance}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceInstance
+ * @generated
+ */
+ public Adapter createDcaeServiceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaeLocation Dcae Location}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaeLocation
+ * @generated
+ */
+ public Adapter createDcaeLocationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor Dcae Service Descriptor}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor
+ * @generated
+ */
+ public Adapter createDcaeServiceDescriptorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.HealthTestResponse Health Test Response}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.HealthTestResponse
+ * @generated
+ */
+ public Adapter createHealthTestResponseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity Dcae Policy Entity}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaePolicyEntity
+ * @generated
+ */
+ public Adapter createDcaePolicyEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity Named Entity}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ *
+ * This default implementation returns null.
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ServiceAdapterFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/util/ServiceSwitch.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/util/ServiceSwitch.java
new file mode 100644
index 0000000..3845664
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/service/util/ServiceSwitch.java
@@ -0,0 +1,280 @@
+
+/*-
+ * ============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.dcae.controller.core.service.util;
+
+import org.openecomp.dcae.controller.core.service.*;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ *
+ * The Switch for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the caseXXX 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.
+ *
+ * @see org.openecomp.dcae.controller.core.service.ServicePackage
+ * @generated
+ */
+public class ServiceSwitch extends Switch {
+ /**
+ * The cached model package
+ *
+ *
+ * @generated
+ */
+ protected static ServicePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ *
+ *
+ * @generated
+ */
+ public ServiceSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ServicePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ *
+ *
+ * @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 caseXXX for each class of the model until one returns a non null result; it yields that result.
+ *
+ *
+ * @return the first non-null result returned by a caseXXX call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ServicePackage.DCAE_SERVICE_CONTAINER: {
+ DcaeServiceContainer dcaeServiceContainer = (DcaeServiceContainer)theEObject;
+ T result = caseDcaeServiceContainer(dcaeServiceContainer);
+ if (result == null) result = caseNamedEntity(dcaeServiceContainer);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServicePackage.DCAE_SERVICE: {
+ DcaeService dcaeService = (DcaeService)theEObject;
+ T result = caseDcaeService(dcaeService);
+ if (result == null) result = caseNamedEntity(dcaeService);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServicePackage.DCAE_SERVICE_INSTANCE: {
+ DcaeServiceInstance dcaeServiceInstance = (DcaeServiceInstance)theEObject;
+ T result = caseDcaeServiceInstance(dcaeServiceInstance);
+ if (result == null) result = caseNamedEntity(dcaeServiceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServicePackage.DCAE_LOCATION: {
+ DcaeLocation dcaeLocation = (DcaeLocation)theEObject;
+ T result = caseDcaeLocation(dcaeLocation);
+ if (result == null) result = caseDcaeServiceContainer(dcaeLocation);
+ if (result == null) result = caseNamedEntity(dcaeLocation);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServicePackage.DCAE_SERVICE_DESCRIPTOR: {
+ DcaeServiceDescriptor dcaeServiceDescriptor = (DcaeServiceDescriptor)theEObject;
+ T result = caseDcaeServiceDescriptor(dcaeServiceDescriptor);
+ if (result == null) result = caseNamedEntity(dcaeServiceDescriptor);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServicePackage.HEALTH_TEST_RESPONSE: {
+ HealthTestResponse healthTestResponse = (HealthTestResponse)theEObject;
+ T result = caseHealthTestResponse(healthTestResponse);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ServicePackage.DCAE_POLICY_ENTITY: {
+ DcaePolicyEntity dcaePolicyEntity = (DcaePolicyEntity)theEObject;
+ T result = caseDcaePolicyEntity(dcaePolicyEntity);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Service'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Service'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeService(DcaeService object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Service Container'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Service Container'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeServiceContainer(DcaeServiceContainer object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Service Instance'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Service Instance'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeServiceInstance(DcaeServiceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Location'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Location'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeLocation(DcaeLocation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Service Descriptor'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Service Descriptor'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeServiceDescriptor(DcaeServiceDescriptor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Health Test Response'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Health Test Response'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHealthTestResponse(HealthTestResponse object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Policy Entity'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Policy Entity'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaePolicyEntity(DcaePolicyEntity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Named Entity'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Named Entity'.
+ * @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 'EObject'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'EObject'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ServiceSwitch
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusDataRouterNode.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusDataRouterNode.java
new file mode 100644
index 0000000..eab989b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusDataRouterNode.java
@@ -0,0 +1,124 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Databus Data Router Node'.
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusDataRouterNode()
+ * @model
+ * @generated
+ */
+public interface DatabusDataRouterNode extends DatabusEntity {
+
+ /**
+ * Returns the value of the 'Dcae Location Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Location Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Location Name' attribute.
+ * @see #setDcaeLocationName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusDataRouterNode_DcaeLocationName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLocationName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getDcaeLocationName Dcae Location Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Location Name' attribute.
+ * @see #getDcaeLocationName()
+ * @generated
+ */
+ void setDcaeLocationName(String value);
+
+ /**
+ * Returns the value of the 'Host Fqdn' attribute.
+ *
+ *
+ * If the meaning of the 'Host Fqdn' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Host Fqdn' attribute.
+ * @see #setHostFqdn(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusDataRouterNode_HostFqdn()
+ * @model unique="false"
+ * @generated
+ */
+ String getHostFqdn();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getHostFqdn Host Fqdn}' attribute.
+ *
+ *
+ * @param value the new value of the 'Host Fqdn' attribute.
+ * @see #getHostFqdn()
+ * @generated
+ */
+ void setHostFqdn(String value);
+
+ /**
+ * Returns the value of the 'Version' attribute.
+ *
+ *
+ * If the meaning of the 'Version' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Version' attribute.
+ * @see #setVersion(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusDataRouterNode_Version()
+ * @model unique="false"
+ * @generated
+ */
+ String getVersion();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getVersion Version}' attribute.
+ *
+ *
+ * @param value the new value of the 'Version' attribute.
+ * @see #getVersion()
+ * @generated
+ */
+ void setVersion(String value);
+} // DatabusDataRouterNode
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusEntity.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusEntity.java
new file mode 100644
index 0000000..0047458
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusEntity.java
@@ -0,0 +1,126 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+import java.util.Date;
+
+/**
+ *
+ * A representation of the model object 'Databus Entity'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusEntity()
+ * @model
+ * @generated
+ */
+public interface DatabusEntity extends NamedEntity {
+ /**
+ * Returns the value of the 'Status' attribute.
+ *
+ *
+ * If the meaning of the 'Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Status' attribute.
+ * @see #setStatus(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusEntity_Status()
+ * @model unique="false"
+ * @generated
+ */
+ String getStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity#getStatus Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Status' attribute.
+ * @see #getStatus()
+ * @generated
+ */
+ void setStatus(String value);
+
+ /**
+ * Returns the value of the 'Last Modified' attribute.
+ *
+ *
+ * If the meaning of the 'Last Modified' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Last Modified' attribute.
+ * @see #setLastModified(Date)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusEntity_LastModified()
+ * @model unique="false"
+ * @generated
+ */
+ Date getLastModified();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity#getLastModified Last Modified}' attribute.
+ *
+ *
+ * @param value the new value of the 'Last Modified' attribute.
+ * @see #getLastModified()
+ * @generated
+ */
+ void setLastModified(Date value);
+
+ /**
+ * Returns the value of the 'Type' attribute.
+ *
+ *
+ * If the meaning of the 'Type' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Type' attribute.
+ * @see #setType(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusEntity_Type()
+ * @model unique="false"
+ * @generated
+ */
+ String getType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity#getType Type}' attribute.
+ *
+ *
+ * @param value the new value of the 'Type' attribute.
+ * @see #getType()
+ * @generated
+ */
+ void setType(String value);
+
+} // DatabusEntity
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusLocation.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusLocation.java
new file mode 100644
index 0000000..a4aee6b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusLocation.java
@@ -0,0 +1,70 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Databus Location'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusLocation()
+ * @model
+ * @generated
+ */
+public interface DatabusLocation extends DatabusEntity {
+
+ /**
+ * Returns the value of the 'Dcae Layer' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Layer' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Layer' attribute.
+ * @see #setDcaeLayer(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusLocation_DcaeLayer()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLayer();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusLocation#getDcaeLayer Dcae Layer}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Layer' attribute.
+ * @see #getDcaeLayer()
+ * @generated
+ */
+ void setDcaeLayer(String value);
+} // DatabusLocation
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusMessageRouterCluster.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusMessageRouterCluster.java
new file mode 100644
index 0000000..d176b17
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusMessageRouterCluster.java
@@ -0,0 +1,169 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Databus Message Router Cluster'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusMessageRouterCluster()
+ * @model
+ * @generated
+ */
+public interface DatabusMessageRouterCluster extends DatabusEntity {
+
+ /**
+ * Returns the value of the 'Dcae Location Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Location Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Location Name' attribute.
+ * @see #setDcaeLocationName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusMessageRouterCluster_DcaeLocationName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLocationName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getDcaeLocationName Dcae Location Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Location Name' attribute.
+ * @see #getDcaeLocationName()
+ * @generated
+ */
+ void setDcaeLocationName(String value);
+
+ /**
+ * Returns the value of the 'Service Fqdn' attribute.
+ *
+ *
+ * If the meaning of the 'Service Fqdn' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Service Fqdn' attribute.
+ * @see #setServiceFqdn(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusMessageRouterCluster_ServiceFqdn()
+ * @model unique="false"
+ * @generated
+ */
+ String getServiceFqdn();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getServiceFqdn Service Fqdn}' attribute.
+ *
+ *
+ * @param value the new value of the 'Service Fqdn' attribute.
+ * @see #getServiceFqdn()
+ * @generated
+ */
+ void setServiceFqdn(String value);
+
+ /**
+ * Returns the value of the 'Host Fqdn' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ *
+ *
+ * If the meaning of the 'Host Fqdn' attribute list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Host Fqdn' attribute list.
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusMessageRouterCluster_HostFqdn()
+ * @model unique="false"
+ * @generated
+ */
+ EList getHostFqdn();
+
+ /**
+ * Returns the value of the 'Topic Port' attribute.
+ *
+ *
+ * If the meaning of the 'Topic Port' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Topic Port' attribute.
+ * @see #setTopicPort(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusMessageRouterCluster_TopicPort()
+ * @model unique="false"
+ * @generated
+ */
+ String getTopicPort();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getTopicPort Topic Port}' attribute.
+ *
+ *
+ * @param value the new value of the 'Topic Port' attribute.
+ * @see #getTopicPort()
+ * @generated
+ */
+ void setTopicPort(String value);
+
+ /**
+ * Returns the value of the 'Topic Protocol' attribute.
+ *
+ *
+ * If the meaning of the 'Topic Protocol' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Topic Protocol' attribute.
+ * @see #setTopicProtocol(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusMessageRouterCluster_TopicProtocol()
+ * @model unique="false"
+ * @generated
+ */
+ String getTopicProtocol();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getTopicProtocol Topic Protocol}' attribute.
+ *
+ *
+ * @param value the new value of the 'Topic Protocol' attribute.
+ * @see #getTopicProtocol()
+ * @generated
+ */
+ void setTopicProtocol(String value);
+} // DatabusMessageRouterCluster
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStream.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStream.java
new file mode 100644
index 0000000..4252099
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStream.java
@@ -0,0 +1,39 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Databus Stream'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStream()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DatabusStream extends NamedEntity {
+} // DatabusStream
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeed.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeed.java
new file mode 100644
index 0000000..910a0f8
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeed.java
@@ -0,0 +1,376 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.eclipse.emf.common.util.EList;
+
+
+/**
+ *
+ * A representation of the model object 'Databus Stream Feed'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed()
+ * @model
+ * @generated
+ */
+public interface DatabusStreamFeed extends DatabusStream {
+
+ /**
+ * Returns the value of the 'Feed Name' attribute.
+ *
+ *
+ * If the meaning of the 'Feed Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Feed Name' attribute.
+ * @see #setFeedName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_FeedName()
+ * @model unique="false"
+ * @generated
+ */
+ String getFeedName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedName Feed Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Feed Name' attribute.
+ * @see #getFeedName()
+ * @generated
+ */
+ void setFeedName(String value);
+
+ /**
+ * Returns the value of the 'Feed Version' attribute.
+ *
+ *
+ * If the meaning of the 'Feed Version' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Feed Version' attribute.
+ * @see #setFeedVersion(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_FeedVersion()
+ * @model unique="false"
+ * @generated
+ */
+ String getFeedVersion();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedVersion Feed Version}' attribute.
+ *
+ *
+ * @param value the new value of the 'Feed Version' attribute.
+ * @see #getFeedVersion()
+ * @generated
+ */
+ void setFeedVersion(String value);
+
+ /**
+ * Returns the value of the 'Feed Description' attribute.
+ *
+ *
+ * If the meaning of the 'Feed Description' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Feed Description' attribute.
+ * @see #setFeedDescription(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_FeedDescription()
+ * @model unique="false"
+ * @generated
+ */
+ String getFeedDescription();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedDescription Feed Description}' attribute.
+ *
+ *
+ * @param value the new value of the 'Feed Description' attribute.
+ * @see #getFeedDescription()
+ * @generated
+ */
+ void setFeedDescription(String value);
+
+ /**
+ * Returns the value of the 'Aspr Classification' attribute.
+ *
+ *
+ * If the meaning of the 'Aspr Classification' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Aspr Classification' attribute.
+ * @see #setAsprClassification(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_AsprClassification()
+ * @model unique="false"
+ * @generated
+ */
+ String getAsprClassification();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getAsprClassification Aspr Classification}' attribute.
+ *
+ *
+ * @param value the new value of the 'Aspr Classification' attribute.
+ * @see #getAsprClassification()
+ * @generated
+ */
+ void setAsprClassification(String value);
+
+ /**
+ * Returns the value of the 'Owner' attribute.
+ *
+ *
+ * If the meaning of the 'Owner' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Owner' attribute.
+ * @see #setOwner(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_Owner()
+ * @model unique="false"
+ * @generated
+ */
+ String getOwner();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getOwner Owner}' attribute.
+ *
+ *
+ * @param value the new value of the 'Owner' attribute.
+ * @see #getOwner()
+ * @generated
+ */
+ void setOwner(String value);
+
+ /**
+ * Returns the value of the 'Feed Id' attribute.
+ *
+ *
+ * If the meaning of the 'Feed Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Feed Id' attribute.
+ * @see #setFeedId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_FeedId()
+ * @model unique="false"
+ * @generated
+ */
+ String getFeedId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedId Feed Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Feed Id' attribute.
+ * @see #getFeedId()
+ * @generated
+ */
+ void setFeedId(String value);
+
+ /**
+ * Returns the value of the 'Log URL' attribute.
+ *
+ *
+ * If the meaning of the 'Log URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Log URL' attribute.
+ * @see #setLogURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_LogURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getLogURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getLogURL Log URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Log URL' attribute.
+ * @see #getLogURL()
+ * @generated
+ */
+ void setLogURL(String value);
+
+ /**
+ * Returns the value of the 'Publish URL' attribute.
+ *
+ *
+ * If the meaning of the 'Publish URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Publish URL' attribute.
+ * @see #setPublishURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_PublishURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getPublishURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getPublishURL Publish URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Publish URL' attribute.
+ * @see #getPublishURL()
+ * @generated
+ */
+ void setPublishURL(String value);
+
+ /**
+ * Returns the value of the 'Subscribe URL' attribute.
+ *
+ *
+ * If the meaning of the 'Subscribe URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Subscribe URL' attribute.
+ * @see #setSubscribeURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_SubscribeURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getSubscribeURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSubscribeURL Subscribe URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Subscribe URL' attribute.
+ * @see #getSubscribeURL()
+ * @generated
+ */
+ void setSubscribeURL(String value);
+
+ /**
+ * Returns the value of the 'Status' attribute.
+ *
+ *
+ * If the meaning of the 'Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Status' attribute.
+ * @see #setStatus(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_Status()
+ * @model unique="false"
+ * @generated
+ */
+ String getStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getStatus Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Status' attribute.
+ * @see #getStatus()
+ * @generated
+ */
+ void setStatus(String value);
+
+ /**
+ * Returns the value of the 'Suspended' attribute.
+ *
+ *
+ * If the meaning of the 'Suspended' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Suspended' attribute.
+ * @see #setSuspended(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_Suspended()
+ * @model unique="false"
+ * @generated
+ */
+ String getSuspended();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSuspended Suspended}' attribute.
+ *
+ *
+ * @param value the new value of the 'Suspended' attribute.
+ * @see #getSuspended()
+ * @generated
+ */
+ void setSuspended(String value);
+
+ /**
+ * Returns the value of the 'Publishers' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher}.
+ *
+ *
+ * If the meaning of the 'Publishers' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Publishers' containment reference list.
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_Publishers()
+ * @model containment="true"
+ * @generated
+ */
+ EList getPublishers();
+
+ /**
+ * Returns the value of the 'Subscribers' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber}.
+ *
+ *
+ * If the meaning of the 'Subscribers' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Subscribers' containment reference list.
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeed_Subscribers()
+ * @model containment="true"
+ * @generated
+ */
+ EList getSubscribers();
+} // DatabusStreamFeed
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeedPublisher.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeedPublisher.java
new file mode 100644
index 0000000..9513cfc
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeedPublisher.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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Databus Stream Feed Publisher'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getLocalStreamId Local Stream Id}
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher()
+ * @model
+ * @generated
+ */
+public interface DatabusStreamFeedPublisher extends NamedEntity {
+ /**
+ * Returns the value of the 'Local Stream Id' attribute.
+ *
+ *
+ * If the meaning of the 'Local Stream Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Local Stream Id' attribute.
+ * @see #setLocalStreamId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_LocalStreamId()
+ * @model unique="false"
+ * @generated
+ */
+ String getLocalStreamId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getLocalStreamId Local Stream Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Local Stream Id' attribute.
+ * @see #getLocalStreamId()
+ * @generated
+ */
+ void setLocalStreamId(String value);
+
+ /**
+ * Returns the value of the 'Dcae Location Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Location Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Location Name' attribute.
+ * @see #setDcaeLocationName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_DcaeLocationName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLocationName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getDcaeLocationName Dcae Location Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Location Name' attribute.
+ * @see #getDcaeLocationName()
+ * @generated
+ */
+ void setDcaeLocationName(String value);
+
+ /**
+ * Returns the value of the 'Feed Id' attribute.
+ *
+ *
+ * If the meaning of the 'Feed Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Feed Id' attribute.
+ * @see #setFeedId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_FeedId()
+ * @model unique="false"
+ * @generated
+ */
+ String getFeedId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getFeedId Feed Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Feed Id' attribute.
+ * @see #getFeedId()
+ * @generated
+ */
+ void setFeedId(String value);
+
+ /**
+ * Returns the value of the 'Pub Id' attribute.
+ *
+ *
+ * If the meaning of the 'Pub Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Pub Id' attribute.
+ * @see #setPubId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_PubId()
+ * @model unique="false"
+ * @generated
+ */
+ String getPubId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getPubId Pub Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Pub Id' attribute.
+ * @see #getPubId()
+ * @generated
+ */
+ void setPubId(String value);
+
+ /**
+ * Returns the value of the 'Status' attribute.
+ *
+ *
+ * If the meaning of the 'Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Status' attribute.
+ * @see #setStatus(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_Status()
+ * @model unique="false"
+ * @generated
+ */
+ String getStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getStatus Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Status' attribute.
+ * @see #getStatus()
+ * @generated
+ */
+ void setStatus(String value);
+
+ /**
+ * Returns the value of the 'Username' attribute.
+ *
+ *
+ * If the meaning of the 'Username' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Username' attribute.
+ * @see #setUsername(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_Username()
+ * @model unique="false"
+ * @generated
+ */
+ String getUsername();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getUsername Username}' attribute.
+ *
+ *
+ * @param value the new value of the 'Username' attribute.
+ * @see #getUsername()
+ * @generated
+ */
+ void setUsername(String value);
+
+ /**
+ * Returns the value of the 'Userpwd' attribute.
+ *
+ *
+ * If the meaning of the 'Userpwd' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Userpwd' attribute.
+ * @see #setUserpwd(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedPublisher_Userpwd()
+ * @model unique="false"
+ * @generated
+ */
+ String getUserpwd();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getUserpwd Userpwd}' attribute.
+ *
+ *
+ * @param value the new value of the 'Userpwd' attribute.
+ * @see #getUserpwd()
+ * @generated
+ */
+ void setUserpwd(String value);
+
+} // DatabusStreamFeedPublisher
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeedSubscriber.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeedSubscriber.java
new file mode 100644
index 0000000..b9b37d1
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamFeedSubscriber.java
@@ -0,0 +1,368 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Databus Stream Feed Subscriber'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLocalStreamId Local Stream Id}
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber()
+ * @model
+ * @generated
+ */
+public interface DatabusStreamFeedSubscriber extends NamedEntity {
+ /**
+ * Returns the value of the 'Local Stream Id' attribute.
+ *
+ *
+ * If the meaning of the 'Local Stream Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Local Stream Id' attribute.
+ * @see #setLocalStreamId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_LocalStreamId()
+ * @model unique="false"
+ * @generated
+ */
+ String getLocalStreamId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLocalStreamId Local Stream Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Local Stream Id' attribute.
+ * @see #getLocalStreamId()
+ * @generated
+ */
+ void setLocalStreamId(String value);
+
+ /**
+ * Returns the value of the 'Dcae Location Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Location Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Location Name' attribute.
+ * @see #setDcaeLocationName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_DcaeLocationName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLocationName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getDcaeLocationName Dcae Location Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Location Name' attribute.
+ * @see #getDcaeLocationName()
+ * @generated
+ */
+ void setDcaeLocationName(String value);
+
+ /**
+ * Returns the value of the 'Other Feed Name' attribute.
+ *
+ *
+ * If the meaning of the 'Other Feed Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Other Feed Name' attribute.
+ * @see #setOtherFeedName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_OtherFeedName()
+ * @model unique="false"
+ * @generated
+ */
+ String getOtherFeedName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getOtherFeedName Other Feed Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Other Feed Name' attribute.
+ * @see #getOtherFeedName()
+ * @generated
+ */
+ void setOtherFeedName(String value);
+
+ /**
+ * Returns the value of the 'Feed Id' attribute.
+ *
+ *
+ * If the meaning of the 'Feed Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Feed Id' attribute.
+ * @see #setFeedId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_FeedId()
+ * @model unique="false"
+ * @generated
+ */
+ String getFeedId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getFeedId Feed Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Feed Id' attribute.
+ * @see #getFeedId()
+ * @generated
+ */
+ void setFeedId(String value);
+
+ /**
+ * Returns the value of the 'Log URL' attribute.
+ *
+ *
+ * If the meaning of the 'Log URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Log URL' attribute.
+ * @see #setLogURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_LogURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getLogURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLogURL Log URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Log URL' attribute.
+ * @see #getLogURL()
+ * @generated
+ */
+ void setLogURL(String value);
+
+ /**
+ * Returns the value of the 'Owner' attribute.
+ *
+ *
+ * If the meaning of the 'Owner' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Owner' attribute.
+ * @see #setOwner(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_Owner()
+ * @model unique="false"
+ * @generated
+ */
+ String getOwner();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getOwner Owner}' attribute.
+ *
+ *
+ * @param value the new value of the 'Owner' attribute.
+ * @see #getOwner()
+ * @generated
+ */
+ void setOwner(String value);
+
+ /**
+ * Returns the value of the 'Sub Id' attribute.
+ *
+ *
+ * If the meaning of the 'Sub Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Sub Id' attribute.
+ * @see #setSubId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_SubId()
+ * @model unique="false"
+ * @generated
+ */
+ String getSubId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getSubId Sub Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Sub Id' attribute.
+ * @see #getSubId()
+ * @generated
+ */
+ void setSubId(String value);
+
+ /**
+ * Returns the value of the 'Suspended' attribute.
+ *
+ *
+ * If the meaning of the 'Suspended' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Suspended' attribute.
+ * @see #setSuspended(boolean)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_Suspended()
+ * @model unique="false"
+ * @generated
+ */
+ boolean isSuspended();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#isSuspended Suspended}' attribute.
+ *
+ *
+ * @param value the new value of the 'Suspended' attribute.
+ * @see #isSuspended()
+ * @generated
+ */
+ void setSuspended(boolean value);
+
+ /**
+ * Returns the value of the 'Use100' attribute.
+ *
+ *
+ * If the meaning of the 'Use100' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Use100' attribute.
+ * @see #setUse100(boolean)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_Use100()
+ * @model unique="false"
+ * @generated
+ */
+ boolean isUse100();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#isUse100 Use100}' attribute.
+ *
+ *
+ * @param value the new value of the 'Use100' attribute.
+ * @see #isUse100()
+ * @generated
+ */
+ void setUse100(boolean value);
+
+ /**
+ * Returns the value of the 'Username' attribute.
+ *
+ *
+ * If the meaning of the 'Username' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Username' attribute.
+ * @see #setUsername(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_Username()
+ * @model unique="false"
+ * @generated
+ */
+ String getUsername();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getUsername Username}' attribute.
+ *
+ *
+ * @param value the new value of the 'Username' attribute.
+ * @see #getUsername()
+ * @generated
+ */
+ void setUsername(String value);
+
+ /**
+ * Returns the value of the 'Userpwd' attribute.
+ *
+ *
+ * If the meaning of the 'Userpwd' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Userpwd' attribute.
+ * @see #setUserpwd(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_Userpwd()
+ * @model unique="false"
+ * @generated
+ */
+ String getUserpwd();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getUserpwd Userpwd}' attribute.
+ *
+ *
+ * @param value the new value of the 'Userpwd' attribute.
+ * @see #getUserpwd()
+ * @generated
+ */
+ void setUserpwd(String value);
+
+ /**
+ * Returns the value of the 'Delivery URL' attribute.
+ *
+ *
+ * If the meaning of the 'Delivery URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Delivery URL' attribute.
+ * @see #setDeliveryURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamFeedSubscriber_DeliveryURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getDeliveryURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getDeliveryURL Delivery URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Delivery URL' attribute.
+ * @see #getDeliveryURL()
+ * @generated
+ */
+ void setDeliveryURL(String value);
+
+} // DatabusStreamFeedSubscriber
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopic.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopic.java
new file mode 100644
index 0000000..7fab2f2
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopic.java
@@ -0,0 +1,363 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import java.util.Date;
+import org.eclipse.emf.common.util.EList;
+
+
+/**
+ *
+ * A representation of the model object 'Databus Stream Topic'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic()
+ * @model
+ * @generated
+ */
+public interface DatabusStreamTopic extends DatabusStream {
+
+ /**
+ * Returns the value of the 'Topic Name' attribute.
+ *
+ *
+ * If the meaning of the 'Topic Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Topic Name' attribute.
+ * @see #setTopicName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_TopicName()
+ * @model unique="false"
+ * @generated
+ */
+ String getTopicName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getTopicName Topic Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Topic Name' attribute.
+ * @see #getTopicName()
+ * @generated
+ */
+ void setTopicName(String value);
+
+ /**
+ * Returns the value of the 'Topic Description' attribute.
+ *
+ *
+ * If the meaning of the 'Topic Description' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Topic Description' attribute.
+ * @see #setTopicDescription(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_TopicDescription()
+ * @model unique="false"
+ * @generated
+ */
+ String getTopicDescription();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getTopicDescription Topic Description}' attribute.
+ *
+ *
+ * @param value the new value of the 'Topic Description' attribute.
+ * @see #getTopicDescription()
+ * @generated
+ */
+ void setTopicDescription(String value);
+
+ /**
+ * Returns the value of the 'Dcae Location Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Location Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Location Name' attribute.
+ * @see #setDcaeLocationName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_DcaeLocationName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLocationName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getDcaeLocationName Dcae Location Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Location Name' attribute.
+ * @see #getDcaeLocationName()
+ * @generated
+ */
+ void setDcaeLocationName(String value);
+
+ /**
+ * Returns the value of the 'Owner' attribute.
+ *
+ *
+ * If the meaning of the 'Owner' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Owner' attribute.
+ * @see #setOwner(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_Owner()
+ * @model unique="false"
+ * @generated
+ */
+ String getOwner();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getOwner Owner}' attribute.
+ *
+ *
+ * @param value the new value of the 'Owner' attribute.
+ * @see #getOwner()
+ * @generated
+ */
+ void setOwner(String value);
+
+ /**
+ * Returns the value of the 'Txenabled' attribute.
+ *
+ *
+ * If the meaning of the 'Txenabled' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Txenabled' attribute.
+ * @see #setTxenabled(boolean)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_Txenabled()
+ * @model unique="false"
+ * @generated
+ */
+ boolean isTxenabled();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#isTxenabled Txenabled}' attribute.
+ *
+ *
+ * @param value the new value of the 'Txenabled' attribute.
+ * @see #isTxenabled()
+ * @generated
+ */
+ void setTxenabled(boolean value);
+
+ /**
+ * Returns the value of the 'Fqtn' attribute.
+ *
+ *
+ * If the meaning of the 'Fqtn' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Fqtn' attribute.
+ * @see #setFqtn(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_Fqtn()
+ * @model unique="false"
+ * @generated
+ */
+ String getFqtn();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getFqtn Fqtn}' attribute.
+ *
+ *
+ * @param value the new value of the 'Fqtn' attribute.
+ * @see #getFqtn()
+ * @generated
+ */
+ void setFqtn(String value);
+
+ /**
+ * Returns the value of the 'Last Mod' attribute.
+ *
+ *
+ * If the meaning of the 'Last Mod' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Last Mod' attribute.
+ * @see #setLastMod(Date)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_LastMod()
+ * @model unique="false"
+ * @generated
+ */
+ Date getLastMod();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getLastMod Last Mod}' attribute.
+ *
+ *
+ * @param value the new value of the 'Last Mod' attribute.
+ * @see #getLastMod()
+ * @generated
+ */
+ void setLastMod(Date value);
+
+ /**
+ * Returns the value of the 'Status' attribute.
+ *
+ *
+ * If the meaning of the 'Status' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Status' attribute.
+ * @see #setStatus(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_Status()
+ * @model unique="false"
+ * @generated
+ */
+ String getStatus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getStatus Status}' attribute.
+ *
+ *
+ * @param value the new value of the 'Status' attribute.
+ * @see #getStatus()
+ * @generated
+ */
+ void setStatus(String value);
+
+ /**
+ * Returns the value of the 'Clients' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient}.
+ *
+ *
+ * If the meaning of the 'Clients' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Clients' containment reference list.
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_Clients()
+ * @model containment="true"
+ * @generated
+ */
+ EList getClients();
+
+ /**
+ * Returns the value of the 'Publish URL' attribute.
+ *
+ *
+ * If the meaning of the 'Publish URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Publish URL' attribute.
+ * @see #setPublishURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_PublishURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getPublishURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getPublishURL Publish URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Publish URL' attribute.
+ * @see #getPublishURL()
+ * @generated
+ */
+ void setPublishURL(String value);
+
+ /**
+ * Returns the value of the 'Subscribe URL' attribute.
+ *
+ *
+ * If the meaning of the 'Subscribe URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Subscribe URL' attribute.
+ * @see #setSubscribeURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_SubscribeURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getSubscribeURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getSubscribeURL Subscribe URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Subscribe URL' attribute.
+ * @see #getSubscribeURL()
+ * @generated
+ */
+ void setSubscribeURL(String value);
+
+ /**
+ * Returns the value of the 'Authentication Method' attribute.
+ * The literals are from the enumeration {@link org.openecomp.dcae.controller.core.stream.StreamAuthentication}.
+ *
+ *
+ * If the meaning of the 'Authentication Method' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Authentication Method' attribute.
+ * @see org.openecomp.dcae.controller.core.stream.StreamAuthentication
+ * @see #setAuthenticationMethod(StreamAuthentication)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopic_AuthenticationMethod()
+ * @model unique="false"
+ * @generated
+ */
+ StreamAuthentication getAuthenticationMethod();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getAuthenticationMethod Authentication Method}' attribute.
+ *
+ *
+ * @param value the new value of the 'Authentication Method' attribute.
+ * @see org.openecomp.dcae.controller.core.stream.StreamAuthentication
+ * @see #getAuthenticationMethod()
+ * @generated
+ */
+ void setAuthenticationMethod(StreamAuthentication value);
+} // DatabusStreamTopic
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopicAction.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopicAction.java
new file mode 100644
index 0000000..313e19e
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopicAction.java
@@ -0,0 +1,254 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ *
+ * A representation of the literals of the enumeration 'Databus Stream Topic Action',
+ * and utility methods for working with them.
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicAction()
+ * @model
+ * @generated
+ */
+public enum DatabusStreamTopicAction implements Enumerator {
+ /**
+ * The 'PUB' literal object.
+ *
+ *
+ * @see #PUB_VALUE
+ * @generated
+ * @ordered
+ */
+ PUB(0, "PUB", "pub"),
+
+ /**
+ * The 'SUB' literal object.
+ *
+ *
+ * @see #SUB_VALUE
+ * @generated
+ * @ordered
+ */
+ SUB(0, "SUB", "sub"),
+
+ /**
+ * The 'VIEW' literal object.
+ *
+ *
+ * @see #VIEW_VALUE
+ * @generated
+ * @ordered
+ */
+ VIEW(0, "VIEW", "view");
+
+ /**
+ * The 'PUB' literal value.
+ *
+ *
+ * If the meaning of 'PUB' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #PUB
+ * @model literal="pub"
+ * @generated
+ * @ordered
+ */
+ public static final int PUB_VALUE = 0;
+
+ /**
+ * The 'SUB' literal value.
+ *
+ *
+ * If the meaning of 'SUB' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #SUB
+ * @model literal="sub"
+ * @generated
+ * @ordered
+ */
+ public static final int SUB_VALUE = 0;
+
+ /**
+ * The 'VIEW' literal value.
+ *
+ *
+ * If the meaning of 'VIEW' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #VIEW
+ * @model literal="view"
+ * @generated
+ * @ordered
+ */
+ public static final int VIEW_VALUE = 0;
+
+ /**
+ * An array of all the 'Databus Stream Topic Action' enumerators.
+ *
+ *
+ * @generated
+ */
+ private static final DatabusStreamTopicAction[] VALUES_ARRAY =
+ new DatabusStreamTopicAction[] {
+ PUB,
+ SUB,
+ VIEW,
+ };
+
+ /**
+ * A public read-only list of all the 'Databus Stream Topic Action' enumerators.
+ *
+ *
+ * @generated
+ */
+ public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the 'Databus Stream Topic Action' literal with the specified literal value.
+ *
+ *
+ * @generated
+ */
+ public static DatabusStreamTopicAction get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ DatabusStreamTopicAction result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Databus Stream Topic Action' literal with the specified name.
+ *
+ *
+ * @generated
+ */
+ public static DatabusStreamTopicAction getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ DatabusStreamTopicAction result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Databus Stream Topic Action' literal with the specified integer value.
+ *
+ *
+ * @generated
+ */
+ public static DatabusStreamTopicAction get(int value) {
+ switch (value) {
+ case PUB_VALUE: return PUB;
+ }
+ return null;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final int value;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String name;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ *
+ *
+ * @generated
+ */
+ private DatabusStreamTopicAction(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //DatabusStreamTopicAction
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopicClient.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopicClient.java
new file mode 100644
index 0000000..21b7e59
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DatabusStreamTopicClient.java
@@ -0,0 +1,279 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Databus Stream Topic Client'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getLocalStreamId Local Stream Id}
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient()
+ * @model
+ * @generated
+ */
+public interface DatabusStreamTopicClient extends DatabusStream {
+ /**
+ * Returns the value of the 'Local Stream Id' attribute.
+ *
+ *
+ * If the meaning of the 'Local Stream Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Local Stream Id' attribute.
+ * @see #setLocalStreamId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_LocalStreamId()
+ * @model unique="false"
+ * @generated
+ */
+ String getLocalStreamId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getLocalStreamId Local Stream Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Local Stream Id' attribute.
+ * @see #getLocalStreamId()
+ * @generated
+ */
+ void setLocalStreamId(String value);
+
+ /**
+ * Returns the value of the 'Dcae Location Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dcae Location Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dcae Location Name' attribute.
+ * @see #setDcaeLocationName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_DcaeLocationName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDcaeLocationName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getDcaeLocationName Dcae Location Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dcae Location Name' attribute.
+ * @see #getDcaeLocationName()
+ * @generated
+ */
+ void setDcaeLocationName(String value);
+
+ /**
+ * Returns the value of the 'Client Role' attribute.
+ *
+ *
+ * If the meaning of the 'Client Role' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Client Role' attribute.
+ * @see #setClientRole(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_ClientRole()
+ * @model unique="false"
+ * @generated
+ */
+ String getClientRole();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getClientRole Client Role}' attribute.
+ *
+ *
+ * @param value the new value of the 'Client Role' attribute.
+ * @see #getClientRole()
+ * @generated
+ */
+ void setClientRole(String value);
+
+ /**
+ * Returns the value of the 'Action' attribute list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction}.
+ * The literals are from the enumeration {@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction}.
+ *
+ *
+ * If the meaning of the 'Action' attribute list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Action' attribute list.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_Action()
+ * @model unique="false"
+ * @generated
+ */
+ EList getAction();
+
+ /**
+ * Returns the value of the 'Username' attribute.
+ *
+ *
+ * If the meaning of the 'Username' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Username' attribute.
+ * @see #setUsername(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_Username()
+ * @model unique="false"
+ * @generated
+ */
+ String getUsername();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getUsername Username}' attribute.
+ *
+ *
+ * @param value the new value of the 'Username' attribute.
+ * @see #getUsername()
+ * @generated
+ */
+ void setUsername(String value);
+
+ /**
+ * Returns the value of the 'Userpwd' attribute.
+ *
+ *
+ * If the meaning of the 'Userpwd' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Userpwd' attribute.
+ * @see #setUserpwd(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_Userpwd()
+ * @model unique="false"
+ * @generated
+ */
+ String getUserpwd();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getUserpwd Userpwd}' attribute.
+ *
+ *
+ * @param value the new value of the 'Userpwd' attribute.
+ * @see #getUserpwd()
+ * @generated
+ */
+ void setUserpwd(String value);
+
+ /**
+ * Returns the value of the 'Fqtn' attribute.
+ *
+ *
+ * If the meaning of the 'Fqtn' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Fqtn' attribute.
+ * @see #setFqtn(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_Fqtn()
+ * @model unique="false"
+ * @generated
+ */
+ String getFqtn();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getFqtn Fqtn}' attribute.
+ *
+ *
+ * @param value the new value of the 'Fqtn' attribute.
+ * @see #getFqtn()
+ * @generated
+ */
+ void setFqtn(String value);
+
+ /**
+ * Returns the value of the 'Mr Client Id' attribute.
+ *
+ *
+ * If the meaning of the 'Mr Client Id' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Mr Client Id' attribute.
+ * @see #setMrClientId(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_MrClientId()
+ * @model unique="false"
+ * @generated
+ */
+ String getMrClientId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getMrClientId Mr Client Id}' attribute.
+ *
+ *
+ * @param value the new value of the 'Mr Client Id' attribute.
+ * @see #getMrClientId()
+ * @generated
+ */
+ void setMrClientId(String value);
+
+ /**
+ * Returns the value of the 'Topic URL' attribute.
+ *
+ *
+ * If the meaning of the 'Topic URL' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Topic URL' attribute.
+ * @see #setTopicURL(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDatabusStreamTopicClient_TopicURL()
+ * @model unique="false"
+ * @generated
+ */
+ String getTopicURL();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getTopicURL Topic URL}' attribute.
+ *
+ *
+ * @param value the new value of the 'Topic URL' attribute.
+ * @see #getTopicURL()
+ * @generated
+ */
+ void setTopicURL(String value);
+
+} // DatabusStreamTopicClient
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStream.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStream.java
new file mode 100644
index 0000000..dadb69b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStream.java
@@ -0,0 +1,39 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStream()
+ * @model
+ * @generated
+ */
+public interface DcaeStream extends NamedEntity {
+} // DcaeStream
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamDefinition.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamDefinition.java
new file mode 100644
index 0000000..24e4702
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamDefinition.java
@@ -0,0 +1,133 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Definition'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamDefinition()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamDefinition extends NamedEntity {
+ /**
+ * Returns the value of the 'Stream Type' attribute.
+ *
+ *
+ * If the meaning of the 'Stream Type' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Stream Type' attribute.
+ * @see #setStreamType(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamDefinition_StreamType()
+ * @model unique="false"
+ * @generated
+ */
+ String getStreamType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getStreamType Stream Type}' attribute.
+ *
+ *
+ * @param value the new value of the 'Stream Type' attribute.
+ * @see #getStreamType()
+ * @generated
+ */
+ void setStreamType(String value);
+
+ /**
+ * Returns the value of the 'Databus Type' attribute.
+ *
+ *
+ * If the meaning of the 'Databus Type' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Databus Type' attribute.
+ * @see #setDatabusType(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamDefinition_DatabusType()
+ * @model unique="false"
+ * @generated
+ */
+ String getDatabusType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getDatabusType Databus Type}' attribute.
+ *
+ *
+ * @param value the new value of the 'Databus Type' attribute.
+ * @see #getDatabusType()
+ * @generated
+ */
+ void setDatabusType(String value);
+
+ /**
+ * Returns the value of the 'Publishers' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisher}.
+ *
+ *
+ * If the meaning of the 'Publishers' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Publishers' containment reference list.
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamDefinition_Publishers()
+ * @model containment="true"
+ * @generated
+ */
+ EList getPublishers();
+
+ /**
+ * Returns the value of the 'Subscribers' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriber}.
+ *
+ *
+ * If the meaning of the 'Subscribers' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Subscribers' containment reference list.
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamDefinition_Subscribers()
+ * @model containment="true"
+ * @generated
+ */
+ EList getSubscribers();
+
+} // DcaeStreamDefinition
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamExternalEndPoint.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamExternalEndPoint.java
new file mode 100644
index 0000000..b8e9ab3
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamExternalEndPoint.java
@@ -0,0 +1,125 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream External End Point'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamExternalEndPoint()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamExternalEndPoint extends EObject {
+ /**
+ * Returns the value of the 'User' attribute.
+ *
+ *
+ * If the meaning of the 'User' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'User' attribute.
+ * @see #setUser(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamExternalEndPoint_User()
+ * @model unique="false"
+ * @generated
+ */
+ String getUser();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getUser User}' attribute.
+ *
+ *
+ * @param value the new value of the 'User' attribute.
+ * @see #getUser()
+ * @generated
+ */
+ void setUser(String value);
+
+ /**
+ * Returns the value of the 'Password' attribute.
+ *
+ *
+ * If the meaning of the 'Password' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Password' attribute.
+ * @see #setPassword(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamExternalEndPoint_Password()
+ * @model unique="false"
+ * @generated
+ */
+ String getPassword();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getPassword Password}' attribute.
+ *
+ *
+ * @param value the new value of the 'Password' attribute.
+ * @see #getPassword()
+ * @generated
+ */
+ void setPassword(String value);
+
+ /**
+ * Returns the value of the 'Url' attribute.
+ *
+ *
+ * If the meaning of the 'Url' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Url' attribute.
+ * @see #setUrl(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamExternalEndPoint_Url()
+ * @model unique="false"
+ * @generated
+ */
+ String getUrl();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getUrl Url}' attribute.
+ *
+ *
+ * @param value the new value of the 'Url' attribute.
+ * @see #getUrl()
+ * @generated
+ */
+ void setUrl(String value);
+
+} // DcaeStreamExternalEndPoint
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamInternalEndPoint.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamInternalEndPoint.java
new file mode 100644
index 0000000..0fc65fe
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamInternalEndPoint.java
@@ -0,0 +1,98 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Internal End Point'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getLocalName Local Name}
+ *
{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getServiceName Service Name}
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamInternalEndPoint()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamInternalEndPoint extends EObject {
+ /**
+ * Returns the value of the 'Local Name' attribute.
+ *
+ *
+ * If the meaning of the 'Local Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Local Name' attribute.
+ * @see #setLocalName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamInternalEndPoint_LocalName()
+ * @model unique="false"
+ * @generated
+ */
+ String getLocalName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getLocalName Local Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Local Name' attribute.
+ * @see #getLocalName()
+ * @generated
+ */
+ void setLocalName(String value);
+
+ /**
+ * Returns the value of the 'Service Name' attribute.
+ *
+ *
+ * If the meaning of the 'Service Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Service Name' attribute.
+ * @see #setServiceName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamInternalEndPoint_ServiceName()
+ * @model unique="false"
+ * @generated
+ */
+ String getServiceName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getServiceName Service Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Service Name' attribute.
+ * @see #getServiceName()
+ * @generated
+ */
+ void setServiceName(String value);
+
+} // DcaeStreamInternalEndPoint
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisher.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisher.java
new file mode 100644
index 0000000..10e70d7
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisher.java
@@ -0,0 +1,39 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Publisher'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamPublisher()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DcaeStreamPublisher extends NamedEntity {
+} // DcaeStreamPublisher
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisherExternal.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisherExternal.java
new file mode 100644
index 0000000..b4a71a6
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisherExternal.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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Publisher External'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamPublisherExternal()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamPublisherExternal extends DcaeStreamPublisher, DcaeStreamExternalEndPoint {
+} // DcaeStreamPublisherExternal
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisherInternal.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisherInternal.java
new file mode 100644
index 0000000..6821ded
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamPublisherInternal.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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Publisher Internal'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamPublisherInternal()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamPublisherInternal extends DcaeStreamPublisher, DcaeStreamInternalEndPoint {
+} // DcaeStreamPublisherInternal
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriber.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriber.java
new file mode 100644
index 0000000..2df16b0
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriber.java
@@ -0,0 +1,40 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Subscriber'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamSubscriber()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DcaeStreamSubscriber extends NamedEntity {
+
+} // DcaeStreamSubscriber
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriberExternal.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriberExternal.java
new file mode 100644
index 0000000..1a2f6f4
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriberExternal.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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Subscriber External'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamSubscriberExternal()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamSubscriberExternal extends DcaeStreamSubscriber, DcaeStreamExternalEndPoint {
+} // DcaeStreamSubscriberExternal
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriberInternal.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriberInternal.java
new file mode 100644
index 0000000..16bc53f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DcaeStreamSubscriberInternal.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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Dcae Stream Subscriber Internal'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDcaeStreamSubscriberInternal()
+ * @model
+ * @generated
+ */
+public interface DcaeStreamSubscriberInternal extends DcaeStreamSubscriber, DcaeStreamInternalEndPoint {
+} // DcaeStreamSubscriberInternal
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DmaapStream.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DmaapStream.java
new file mode 100644
index 0000000..b0e9b89
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/DmaapStream.java
@@ -0,0 +1,205 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+
+/**
+ *
+ * A representation of the model object 'Dmaap Stream'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapDataType Dmaap Data Type}
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream()
+ * @model
+ * @generated
+ */
+public interface DmaapStream extends DcaeStream {
+ /**
+ * Returns the value of the 'Dmaap Data Type' attribute.
+ *
+ *
+ * If the meaning of the 'Dmaap Data Type' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dmaap Data Type' attribute.
+ * @see #setDmaapDataType(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream_DmaapDataType()
+ * @model unique="false"
+ * @generated
+ */
+ String getDmaapDataType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapDataType Dmaap Data Type}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dmaap Data Type' attribute.
+ * @see #getDmaapDataType()
+ * @generated
+ */
+ void setDmaapDataType(String value);
+
+ /**
+ * Returns the value of the 'Dmaap Action' attribute.
+ *
+ *
+ * If the meaning of the 'Dmaap Action' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dmaap Action' attribute.
+ * @see #setDmaapAction(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream_DmaapAction()
+ * @model unique="false"
+ * @generated
+ */
+ String getDmaapAction();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapAction Dmaap Action}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dmaap Action' attribute.
+ * @see #getDmaapAction()
+ * @generated
+ */
+ void setDmaapAction(String value);
+
+ /**
+ * Returns the value of the 'Dmaap Url' attribute.
+ *
+ *
+ * If the meaning of the 'Dmaap Url' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dmaap Url' attribute.
+ * @see #setDmaapUrl(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream_DmaapUrl()
+ * @model unique="false"
+ * @generated
+ */
+ String getDmaapUrl();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapUrl Dmaap Url}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dmaap Url' attribute.
+ * @see #getDmaapUrl()
+ * @generated
+ */
+ void setDmaapUrl(String value);
+
+ /**
+ * Returns the value of the 'Dmaap User Name' attribute.
+ *
+ *
+ * If the meaning of the 'Dmaap User Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dmaap User Name' attribute.
+ * @see #setDmaapUserName(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream_DmaapUserName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDmaapUserName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapUserName Dmaap User Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dmaap User Name' attribute.
+ * @see #getDmaapUserName()
+ * @generated
+ */
+ void setDmaapUserName(String value);
+
+ /**
+ * Returns the value of the 'Dmaap Password' attribute.
+ *
+ *
+ * If the meaning of the 'Dmaap Password' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dmaap Password' attribute.
+ * @see #setDmaapPassword(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream_DmaapPassword()
+ * @model unique="false"
+ * @generated
+ */
+ String getDmaapPassword();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapPassword Dmaap Password}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dmaap Password' attribute.
+ * @see #getDmaapPassword()
+ * @generated
+ */
+ void setDmaapPassword(String value);
+
+ /**
+ * Returns the value of the 'Dmaap Auth Method' attribute.
+ *
+ *
+ * If the meaning of the 'Dmaap Auth Method' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dmaap Auth Method' attribute.
+ * @see #setDmaapAuthMethod(String)
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getDmaapStream_DmaapAuthMethod()
+ * @model unique="false"
+ * @generated
+ */
+ String getDmaapAuthMethod();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapAuthMethod Dmaap Auth Method}' attribute.
+ *
+ *
+ * @param value the new value of the 'Dmaap Auth Method' attribute.
+ * @see #getDmaapAuthMethod()
+ * @generated
+ */
+ void setDmaapAuthMethod(String value);
+
+} // DmaapStream
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamAuthentication.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamAuthentication.java
new file mode 100644
index 0000000..f798a33
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamAuthentication.java
@@ -0,0 +1,250 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ *
+ * A representation of the literals of the enumeration 'Topic Authentication',
+ * and utility methods for working with them.
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#getStreamAuthentication()
+ * @model
+ * @generated
+ */
+public enum StreamAuthentication implements Enumerator {
+ /**
+ * The 'AAF' literal object.
+ *
+ *
+ * @see #AAF_VALUE
+ * @generated
+ * @ordered
+ */
+ AAF(0, "AAF", "aaf"), /**
+ * The 'NONE' literal object.
+ *
+ *
+ * @see #NONE_VALUE
+ * @generated
+ * @ordered
+ */
+ NONE(0, "NONE", "none"), /**
+ * The 'PASSWORD' literal object.
+ *
+ *
+ * @see #PASSWORD_VALUE
+ * @generated
+ * @ordered
+ */
+ PASSWORD(0, "PASSWORD", "password");
+
+ /**
+ * The 'AAF' literal value.
+ *
+ *
+ * If the meaning of 'AAF' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #AAF
+ * @model literal="aaf"
+ * @generated
+ * @ordered
+ */
+ public static final int AAF_VALUE = 0;
+
+ /**
+ * The 'NONE' literal value.
+ *
+ *
+ * If the meaning of 'NONE' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #NONE
+ * @model literal="none"
+ * @generated
+ * @ordered
+ */
+ public static final int NONE_VALUE = 0;
+
+ /**
+ * The 'PASSWORD' literal value.
+ *
+ *
+ * If the meaning of 'PASSWORD' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #PASSWORD
+ * @model literal="password"
+ * @generated
+ * @ordered
+ */
+ public static final int PASSWORD_VALUE = 0;
+
+ /**
+ * An array of all the 'Authentication' enumerators.
+ *
+ *
+ * @generated
+ */
+ private static final StreamAuthentication[] VALUES_ARRAY =
+ new StreamAuthentication[] {
+ AAF,
+ NONE,
+ PASSWORD,
+ };
+
+ /**
+ * A public read-only list of all the 'Authentication' enumerators.
+ *
+ *
+ * @generated
+ */
+ public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the 'Authentication' literal with the specified literal value.
+ *
+ *
+ * @generated
+ */
+ public static StreamAuthentication get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ StreamAuthentication result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Authentication' literal with the specified name.
+ *
+ *
+ * @generated
+ */
+ public static StreamAuthentication getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ StreamAuthentication result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Authentication' literal with the specified integer value.
+ *
+ *
+ * @generated
+ */
+ public static StreamAuthentication get(int value) {
+ switch (value) {
+ case AAF_VALUE: return AAF;
+ }
+ return null;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final int value;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String name;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ *
+ *
+ * @generated
+ */
+ private StreamAuthentication(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //TopicAuthentication
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamFactory.java
new file mode 100644
index 0000000..7c62a38
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamFactory.java
@@ -0,0 +1,216 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ *
+ * The Factory for the model.
+ * It provides a create method for each non-abstract class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage
+ * @generated
+ */
+public interface StreamFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ *
+ *
+ * @generated
+ */
+ StreamFactory eINSTANCE = org.openecomp.dcae.controller.core.stream.impl.StreamFactoryImpl.init();
+
+ /**
+ * Returns a new object of class 'Dcae Stream'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream'.
+ * @generated
+ */
+ DcaeStream createDcaeStream();
+
+ /**
+ * Returns a new object of class 'Dmaap Stream'.
+ *
+ *
+ * @return a new object of class 'Dmaap Stream'.
+ * @generated
+ */
+ DmaapStream createDmaapStream();
+
+ /**
+ * Returns a new object of class 'Dcae Stream Definition'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream Definition'.
+ * @generated
+ */
+ DcaeStreamDefinition createDcaeStreamDefinition();
+
+ /**
+ * Returns a new object of class 'Dcae Stream Publisher External'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream Publisher External'.
+ * @generated
+ */
+ DcaeStreamPublisherExternal createDcaeStreamPublisherExternal();
+
+ /**
+ * Returns a new object of class 'Dcae Stream Publisher Internal'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream Publisher Internal'.
+ * @generated
+ */
+ DcaeStreamPublisherInternal createDcaeStreamPublisherInternal();
+
+ /**
+ * Returns a new object of class 'Dcae Stream Subscriber External'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream Subscriber External'.
+ * @generated
+ */
+ DcaeStreamSubscriberExternal createDcaeStreamSubscriberExternal();
+
+ /**
+ * Returns a new object of class 'Dcae Stream Subscriber Internal'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream Subscriber Internal'.
+ * @generated
+ */
+ DcaeStreamSubscriberInternal createDcaeStreamSubscriberInternal();
+
+ /**
+ * Returns a new object of class 'Dcae Stream Internal End Point'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream Internal End Point'.
+ * @generated
+ */
+ DcaeStreamInternalEndPoint createDcaeStreamInternalEndPoint();
+
+ /**
+ * Returns a new object of class 'Dcae Stream External End Point'.
+ *
+ *
+ * @return a new object of class 'Dcae Stream External End Point'.
+ * @generated
+ */
+ DcaeStreamExternalEndPoint createDcaeStreamExternalEndPoint();
+
+ /**
+ * Returns a new object of class 'Databus Stream Topic'.
+ *
+ *
+ * @return a new object of class 'Databus Stream Topic'.
+ * @generated
+ */
+ DatabusStreamTopic createDatabusStreamTopic();
+
+ /**
+ * Returns a new object of class 'Databus Stream Topic Client'.
+ *
+ *
+ * @return a new object of class 'Databus Stream Topic Client'.
+ * @generated
+ */
+ DatabusStreamTopicClient createDatabusStreamTopicClient();
+
+ /**
+ * Returns a new object of class 'Databus Stream Feed'.
+ *
+ *
+ * @return a new object of class 'Databus Stream Feed'.
+ * @generated
+ */
+ DatabusStreamFeed createDatabusStreamFeed();
+
+ /**
+ * Returns a new object of class 'Databus Stream Feed Publisher'.
+ *
+ *
+ * @return a new object of class 'Databus Stream Feed Publisher'.
+ * @generated
+ */
+ DatabusStreamFeedPublisher createDatabusStreamFeedPublisher();
+
+ /**
+ * Returns a new object of class 'Databus Stream Feed Subscriber'.
+ *
+ *
+ * @return a new object of class 'Databus Stream Feed Subscriber'.
+ * @generated
+ */
+ DatabusStreamFeedSubscriber createDatabusStreamFeedSubscriber();
+
+ /**
+ * Returns a new object of class 'Databus Entity'.
+ *
+ *
+ * @return a new object of class 'Databus Entity'.
+ * @generated
+ */
+ DatabusEntity createDatabusEntity();
+
+ /**
+ * Returns a new object of class 'Databus Location'.
+ *
+ *
+ * @return a new object of class 'Databus Location'.
+ * @generated
+ */
+ DatabusLocation createDatabusLocation();
+
+ /**
+ * Returns a new object of class 'Databus Message Router Cluster'.
+ *
+ *
+ * @return a new object of class 'Databus Message Router Cluster'.
+ * @generated
+ */
+ DatabusMessageRouterCluster createDatabusMessageRouterCluster();
+
+ /**
+ * Returns a new object of class 'Databus Data Router Node'.
+ *
+ *
+ * @return a new object of class 'Databus Data Router Node'.
+ * @generated
+ */
+ DatabusDataRouterNode createDatabusDataRouterNode();
+
+ /**
+ * Returns the package supported by this factory.
+ *
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ StreamPackage getStreamPackage();
+
+} //StreamFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamPackage.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamPackage.java
new file mode 100644
index 0000000..efeb246
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/StreamPackage.java
@@ -0,0 +1,4179 @@
+
+/*-
+ * ============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.dcae.controller.core.stream;
+
+import org.openecomp.ncomp.core.CorePackage;
+
+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;
+
+/**
+ *
+ * The Package for the model.
+ * It contains accessors for the meta objects to represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-core-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.core'"
+ * @generated
+ */
+public interface StreamPackage extends EPackage {
+ /**
+ * The package name.
+ *
+ *
+ * @generated
+ */
+ String eNAME = "stream";
+
+ /**
+ * The package namespace URI.
+ *
+ *
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.core.stream";
+
+ /**
+ * The package namespace name.
+ *
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "stream";
+
+ /**
+ * The singleton instance of the package.
+ *
+ *
+ * @generated
+ */
+ StreamPackage eINSTANCE = org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamImpl Dcae Stream}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStream()
+ * @generated
+ */
+ int DCAE_STREAM = 0;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The number of structural features of the 'Dcae Stream' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the 'Dcae Stream' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DmaapStreamImpl Dmaap Stream}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DmaapStreamImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDmaapStream()
+ * @generated
+ */
+ int DMAAP_STREAM = 1;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__NAME = DCAE_STREAM__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__LAST_POLLED = DCAE_STREAM__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__LAST_CHANGED = DCAE_STREAM__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__CREATED = DCAE_STREAM__CREATED;
+
+ /**
+ * The feature id for the 'Dmaap Data Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__DMAAP_DATA_TYPE = DCAE_STREAM_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Dmaap Action' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__DMAAP_ACTION = DCAE_STREAM_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Dmaap Url' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__DMAAP_URL = DCAE_STREAM_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Dmaap User Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__DMAAP_USER_NAME = DCAE_STREAM_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Dmaap Password' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__DMAAP_PASSWORD = DCAE_STREAM_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Dmaap Auth Method' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM__DMAAP_AUTH_METHOD = DCAE_STREAM_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the 'Dmaap Stream' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM_FEATURE_COUNT = DCAE_STREAM_FEATURE_COUNT + 6;
+
+ /**
+ * The number of operations of the 'Dmaap Stream' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DMAAP_STREAM_OPERATION_COUNT = DCAE_STREAM_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamDefinitionImpl Dcae Stream Definition}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamDefinitionImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamDefinition()
+ * @generated
+ */
+ int DCAE_STREAM_DEFINITION = 2;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Stream Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__STREAM_TYPE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Databus Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__DATABUS_TYPE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Publishers' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__PUBLISHERS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Subscribers' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION__SUBSCRIBERS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Definition' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The number of operations of the 'Dcae Stream Definition' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_DEFINITION_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherImpl Dcae Stream Publisher}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamPublisher()
+ * @generated
+ */
+ int DCAE_STREAM_PUBLISHER = 3;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Publisher' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the 'Dcae Stream Publisher' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberImpl Dcae Stream Subscriber}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamSubscriber()
+ * @generated
+ */
+ int DCAE_STREAM_SUBSCRIBER = 4;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Subscriber' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the 'Dcae Stream Subscriber' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherExternalImpl Dcae Stream Publisher External}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherExternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamPublisherExternal()
+ * @generated
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL = 5;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__NAME = DCAE_STREAM_PUBLISHER__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__LAST_POLLED = DCAE_STREAM_PUBLISHER__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__LAST_CHANGED = DCAE_STREAM_PUBLISHER__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__CREATED = DCAE_STREAM_PUBLISHER__CREATED;
+
+ /**
+ * The feature id for the 'User' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__USER = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Password' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Url' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL__URL = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Publisher External' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL_FEATURE_COUNT = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the 'Dcae Stream Publisher External' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_EXTERNAL_OPERATION_COUNT = DCAE_STREAM_PUBLISHER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherInternalImpl Dcae Stream Publisher Internal}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherInternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamPublisherInternal()
+ * @generated
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL = 6;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL__NAME = DCAE_STREAM_PUBLISHER__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL__LAST_POLLED = DCAE_STREAM_PUBLISHER__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL__LAST_CHANGED = DCAE_STREAM_PUBLISHER__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL__CREATED = DCAE_STREAM_PUBLISHER__CREATED;
+
+ /**
+ * The feature id for the 'Local Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Service Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Publisher Internal' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL_FEATURE_COUNT = DCAE_STREAM_PUBLISHER_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the 'Dcae Stream Publisher Internal' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_PUBLISHER_INTERNAL_OPERATION_COUNT = DCAE_STREAM_PUBLISHER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberExternalImpl Dcae Stream Subscriber External}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberExternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamSubscriberExternal()
+ * @generated
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL = 7;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__NAME = DCAE_STREAM_SUBSCRIBER__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__LAST_POLLED = DCAE_STREAM_SUBSCRIBER__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__LAST_CHANGED = DCAE_STREAM_SUBSCRIBER__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__CREATED = DCAE_STREAM_SUBSCRIBER__CREATED;
+
+ /**
+ * The feature id for the 'User' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Password' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Url' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Subscriber External' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL_FEATURE_COUNT = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the 'Dcae Stream Subscriber External' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_EXTERNAL_OPERATION_COUNT = DCAE_STREAM_SUBSCRIBER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberInternalImpl Dcae Stream Subscriber Internal}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberInternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamSubscriberInternal()
+ * @generated
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL = 8;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL__NAME = DCAE_STREAM_SUBSCRIBER__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL__LAST_POLLED = DCAE_STREAM_SUBSCRIBER__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL__LAST_CHANGED = DCAE_STREAM_SUBSCRIBER__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL__CREATED = DCAE_STREAM_SUBSCRIBER__CREATED;
+
+ /**
+ * The feature id for the 'Local Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Service Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Subscriber Internal' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL_FEATURE_COUNT = DCAE_STREAM_SUBSCRIBER_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the 'Dcae Stream Subscriber Internal' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_SUBSCRIBER_INTERNAL_OPERATION_COUNT = DCAE_STREAM_SUBSCRIBER_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamInternalEndPointImpl Dcae Stream Internal End Point}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamInternalEndPointImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamInternalEndPoint()
+ * @generated
+ */
+ int DCAE_STREAM_INTERNAL_END_POINT = 9;
+
+ /**
+ * The feature id for the 'Local Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME = 0;
+
+ /**
+ * The feature id for the 'Service Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME = 1;
+
+ /**
+ * The number of structural features of the 'Dcae Stream Internal End Point' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_INTERNAL_END_POINT_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the 'Dcae Stream Internal End Point' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_INTERNAL_END_POINT_OPERATION_COUNT = 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamExternalEndPointImpl Dcae Stream External End Point}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamExternalEndPointImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamExternalEndPoint()
+ * @generated
+ */
+ int DCAE_STREAM_EXTERNAL_END_POINT = 10;
+
+ /**
+ * The feature id for the 'User' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_EXTERNAL_END_POINT__USER = 0;
+
+ /**
+ * The feature id for the 'Password' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD = 1;
+
+ /**
+ * The feature id for the 'Url' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_EXTERNAL_END_POINT__URL = 2;
+
+ /**
+ * The number of structural features of the 'Dcae Stream External End Point' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_EXTERNAL_END_POINT_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the 'Dcae Stream External End Point' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_STREAM_EXTERNAL_END_POINT_OPERATION_COUNT = 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamImpl Databus Stream}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStream()
+ * @generated
+ */
+ int DATABUS_STREAM = 11;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The number of structural features of the 'Databus Stream' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the 'Databus Stream' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicImpl Databus Stream Topic}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamTopic()
+ * @generated
+ */
+ int DATABUS_STREAM_TOPIC = 12;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__NAME = DATABUS_STREAM__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__LAST_POLLED = DATABUS_STREAM__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__LAST_CHANGED = DATABUS_STREAM__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__CREATED = DATABUS_STREAM__CREATED;
+
+ /**
+ * The feature id for the 'Topic Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__TOPIC_NAME = DATABUS_STREAM_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Topic Description' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__TOPIC_DESCRIPTION = DATABUS_STREAM_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Dcae Location Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__DCAE_LOCATION_NAME = DATABUS_STREAM_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Owner' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__OWNER = DATABUS_STREAM_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Txenabled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__TXENABLED = DATABUS_STREAM_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Fqtn' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__FQTN = DATABUS_STREAM_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Last Mod' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__LAST_MOD = DATABUS_STREAM_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__STATUS = DATABUS_STREAM_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the 'Clients' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__CLIENTS = DATABUS_STREAM_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the 'Publish URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__PUBLISH_URL = DATABUS_STREAM_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the 'Subscribe URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__SUBSCRIBE_URL = DATABUS_STREAM_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the 'Authentication Method' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC__AUTHENTICATION_METHOD = DATABUS_STREAM_FEATURE_COUNT + 11;
+
+ /**
+ * The number of structural features of the 'Databus Stream Topic' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_FEATURE_COUNT = DATABUS_STREAM_FEATURE_COUNT + 12;
+
+ /**
+ * The number of operations of the 'Databus Stream Topic' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_OPERATION_COUNT = DATABUS_STREAM_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicClientImpl Databus Stream Topic Client}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicClientImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamTopicClient()
+ * @generated
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT = 13;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__NAME = DATABUS_STREAM__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__LAST_POLLED = DATABUS_STREAM__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__LAST_CHANGED = DATABUS_STREAM__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__CREATED = DATABUS_STREAM__CREATED;
+
+ /**
+ * The feature id for the 'Local Stream Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__LOCAL_STREAM_ID = DATABUS_STREAM_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Dcae Location Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__DCAE_LOCATION_NAME = DATABUS_STREAM_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Client Role' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__CLIENT_ROLE = DATABUS_STREAM_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Action' attribute list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__ACTION = DATABUS_STREAM_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Username' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__USERNAME = DATABUS_STREAM_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Userpwd' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__USERPWD = DATABUS_STREAM_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Fqtn' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__FQTN = DATABUS_STREAM_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the 'Mr Client Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__MR_CLIENT_ID = DATABUS_STREAM_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the 'Topic URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT__TOPIC_URL = DATABUS_STREAM_FEATURE_COUNT + 8;
+
+ /**
+ * The number of structural features of the 'Databus Stream Topic Client' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT_FEATURE_COUNT = DATABUS_STREAM_FEATURE_COUNT + 9;
+
+ /**
+ * The number of operations of the 'Databus Stream Topic Client' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_TOPIC_CLIENT_OPERATION_COUNT = DATABUS_STREAM_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedImpl Databus Stream Feed}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamFeed()
+ * @generated
+ */
+ int DATABUS_STREAM_FEED = 14;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__NAME = DATABUS_STREAM__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__LAST_POLLED = DATABUS_STREAM__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__LAST_CHANGED = DATABUS_STREAM__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__CREATED = DATABUS_STREAM__CREATED;
+
+ /**
+ * The feature id for the 'Feed Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__FEED_NAME = DATABUS_STREAM_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Feed Version' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__FEED_VERSION = DATABUS_STREAM_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Feed Description' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__FEED_DESCRIPTION = DATABUS_STREAM_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Aspr Classification' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__ASPR_CLASSIFICATION = DATABUS_STREAM_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Owner' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__OWNER = DATABUS_STREAM_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Feed Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__FEED_ID = DATABUS_STREAM_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Log URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__LOG_URL = DATABUS_STREAM_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the 'Publish URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__PUBLISH_URL = DATABUS_STREAM_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the 'Subscribe URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__SUBSCRIBE_URL = DATABUS_STREAM_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__STATUS = DATABUS_STREAM_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the 'Suspended' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__SUSPENDED = DATABUS_STREAM_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the 'Publishers' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__PUBLISHERS = DATABUS_STREAM_FEATURE_COUNT + 11;
+
+ /**
+ * The feature id for the 'Subscribers' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED__SUBSCRIBERS = DATABUS_STREAM_FEATURE_COUNT + 12;
+
+ /**
+ * The number of structural features of the 'Databus Stream Feed' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_FEATURE_COUNT = DATABUS_STREAM_FEATURE_COUNT + 13;
+
+ /**
+ * The number of operations of the 'Databus Stream Feed' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_OPERATION_COUNT = DATABUS_STREAM_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedPublisherImpl Databus Stream Feed Publisher}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedPublisherImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER = 15;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Local Stream Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__LOCAL_STREAM_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Dcae Location Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__DCAE_LOCATION_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Feed Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__FEED_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Pub Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__PUB_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__STATUS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Username' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__USERNAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Userpwd' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER__USERPWD = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the 'Databus Stream Feed Publisher' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The number of operations of the 'Databus Stream Feed Publisher' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_PUBLISHER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedSubscriberImpl Databus Stream Feed Subscriber}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedSubscriberImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER = 16;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Local Stream Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__LOCAL_STREAM_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Dcae Location Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__DCAE_LOCATION_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Other Feed Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__OTHER_FEED_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Feed Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__FEED_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Log URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__LOG_URL = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Owner' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__OWNER = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Sub Id' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__SUB_ID = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the 'Suspended' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__SUSPENDED = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the 'Use100' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__USE100 = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the 'Username' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__USERNAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the 'Userpwd' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__USERPWD = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the 'Delivery URL' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER__DELIVERY_URL = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 11;
+
+ /**
+ * The number of structural features of the 'Databus Stream Feed Subscriber' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 12;
+
+ /**
+ * The number of operations of the 'Databus Stream Feed Subscriber' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_STREAM_FEED_SUBSCRIBER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusEntityImpl Databus Entity}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusEntityImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusEntity()
+ * @generated
+ */
+ int DATABUS_ENTITY = 17;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__STATUS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Last Modified' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__LAST_MODIFIED = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY__TYPE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the 'Databus Entity' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the 'Databus Entity' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_ENTITY_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusLocationImpl Databus Location}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusLocationImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusLocation()
+ * @generated
+ */
+ int DATABUS_LOCATION = 18;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__NAME = DATABUS_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__LAST_POLLED = DATABUS_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__LAST_CHANGED = DATABUS_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__CREATED = DATABUS_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__STATUS = DATABUS_ENTITY__STATUS;
+
+ /**
+ * The feature id for the 'Last Modified' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__LAST_MODIFIED = DATABUS_ENTITY__LAST_MODIFIED;
+
+ /**
+ * The feature id for the 'Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__TYPE = DATABUS_ENTITY__TYPE;
+
+ /**
+ * The feature id for the 'Dcae Layer' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION__DCAE_LAYER = DATABUS_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the 'Databus Location' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION_FEATURE_COUNT = DATABUS_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the 'Databus Location' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_LOCATION_OPERATION_COUNT = DATABUS_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusMessageRouterClusterImpl Databus Message Router Cluster}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusMessageRouterClusterImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusMessageRouterCluster()
+ * @generated
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER = 19;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__NAME = DATABUS_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__LAST_POLLED = DATABUS_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__LAST_CHANGED = DATABUS_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__CREATED = DATABUS_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__STATUS = DATABUS_ENTITY__STATUS;
+
+ /**
+ * The feature id for the 'Last Modified' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__LAST_MODIFIED = DATABUS_ENTITY__LAST_MODIFIED;
+
+ /**
+ * The feature id for the 'Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__TYPE = DATABUS_ENTITY__TYPE;
+
+ /**
+ * The feature id for the 'Dcae Location Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__DCAE_LOCATION_NAME = DATABUS_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Service Fqdn' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__SERVICE_FQDN = DATABUS_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Host Fqdn' attribute list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__HOST_FQDN = DATABUS_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Topic Port' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__TOPIC_PORT = DATABUS_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Topic Protocol' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER__TOPIC_PROTOCOL = DATABUS_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The number of structural features of the 'Databus Message Router Cluster' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER_FEATURE_COUNT = DATABUS_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The number of operations of the 'Databus Message Router Cluster' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_MESSAGE_ROUTER_CLUSTER_OPERATION_COUNT = DATABUS_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusDataRouterNodeImpl Databus Data Router Node}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusDataRouterNodeImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusDataRouterNode()
+ * @generated
+ */
+ int DATABUS_DATA_ROUTER_NODE = 20;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__NAME = DATABUS_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__LAST_POLLED = DATABUS_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__LAST_CHANGED = DATABUS_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__CREATED = DATABUS_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Status' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__STATUS = DATABUS_ENTITY__STATUS;
+
+ /**
+ * The feature id for the 'Last Modified' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__LAST_MODIFIED = DATABUS_ENTITY__LAST_MODIFIED;
+
+ /**
+ * The feature id for the 'Type' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__TYPE = DATABUS_ENTITY__TYPE;
+
+ /**
+ * The feature id for the 'Dcae Location Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__DCAE_LOCATION_NAME = DATABUS_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Host Fqdn' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__HOST_FQDN = DATABUS_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Version' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE__VERSION = DATABUS_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the 'Databus Data Router Node' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE_FEATURE_COUNT = DATABUS_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the 'Databus Data Router Node' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DATABUS_DATA_ROUTER_NODE_OPERATION_COUNT = DATABUS_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction Databus Stream Topic Action}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamTopicAction()
+ * @generated
+ */
+ int DATABUS_STREAM_TOPIC_ACTION = 21;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.core.stream.StreamAuthentication Authentication}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamAuthentication
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getStreamAuthentication()
+ * @generated
+ */
+ int STREAM_AUTHENTICATION = 22;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStream Dcae Stream}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStream
+ * @generated
+ */
+ EClass getDcaeStream();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DmaapStream Dmaap Stream}'.
+ *
+ *
+ * @return the meta object for class 'Dmaap Stream'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream
+ * @generated
+ */
+ EClass getDmaapStream();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapDataType Dmaap Data Type}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dmaap Data Type'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapDataType()
+ * @see #getDmaapStream()
+ * @generated
+ */
+ EAttribute getDmaapStream_DmaapDataType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapAction Dmaap Action}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dmaap Action'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapAction()
+ * @see #getDmaapStream()
+ * @generated
+ */
+ EAttribute getDmaapStream_DmaapAction();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapUrl Dmaap Url}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dmaap Url'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapUrl()
+ * @see #getDmaapStream()
+ * @generated
+ */
+ EAttribute getDmaapStream_DmaapUrl();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapUserName Dmaap User Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dmaap User Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapUserName()
+ * @see #getDmaapStream()
+ * @generated
+ */
+ EAttribute getDmaapStream_DmaapUserName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapPassword Dmaap Password}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dmaap Password'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapPassword()
+ * @see #getDmaapStream()
+ * @generated
+ */
+ EAttribute getDmaapStream_DmaapPassword();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapAuthMethod Dmaap Auth Method}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dmaap Auth Method'.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream#getDmaapAuthMethod()
+ * @see #getDmaapStream()
+ * @generated
+ */
+ EAttribute getDmaapStream_DmaapAuthMethod();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition Dcae Stream Definition}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Definition'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition
+ * @generated
+ */
+ EClass getDcaeStreamDefinition();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getStreamType Stream Type}'.
+ *
+ *
+ * @return the meta object for the attribute 'Stream Type'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getStreamType()
+ * @see #getDcaeStreamDefinition()
+ * @generated
+ */
+ EAttribute getDcaeStreamDefinition_StreamType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getDatabusType Databus Type}'.
+ *
+ *
+ * @return the meta object for the attribute 'Databus Type'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getDatabusType()
+ * @see #getDcaeStreamDefinition()
+ * @generated
+ */
+ EAttribute getDcaeStreamDefinition_DatabusType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getPublishers Publishers}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Publishers'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getPublishers()
+ * @see #getDcaeStreamDefinition()
+ * @generated
+ */
+ EReference getDcaeStreamDefinition_Publishers();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getSubscribers Subscribers}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Subscribers'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition#getSubscribers()
+ * @see #getDcaeStreamDefinition()
+ * @generated
+ */
+ EReference getDcaeStreamDefinition_Subscribers();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisher Dcae Stream Publisher}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Publisher'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamPublisher
+ * @generated
+ */
+ EClass getDcaeStreamPublisher();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriber Dcae Stream Subscriber}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Subscriber'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriber
+ * @generated
+ */
+ EClass getDcaeStreamSubscriber();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherExternal Dcae Stream Publisher External}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Publisher External'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherExternal
+ * @generated
+ */
+ EClass getDcaeStreamPublisherExternal();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherInternal Dcae Stream Publisher Internal}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Publisher Internal'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherInternal
+ * @generated
+ */
+ EClass getDcaeStreamPublisherInternal();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberExternal Dcae Stream Subscriber External}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Subscriber External'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberExternal
+ * @generated
+ */
+ EClass getDcaeStreamSubscriberExternal();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberInternal Dcae Stream Subscriber Internal}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Subscriber Internal'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberInternal
+ * @generated
+ */
+ EClass getDcaeStreamSubscriberInternal();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint Dcae Stream Internal End Point}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream Internal End Point'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint
+ * @generated
+ */
+ EClass getDcaeStreamInternalEndPoint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getLocalName Local Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Local Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getLocalName()
+ * @see #getDcaeStreamInternalEndPoint()
+ * @generated
+ */
+ EAttribute getDcaeStreamInternalEndPoint_LocalName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getServiceName Service Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Service Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint#getServiceName()
+ * @see #getDcaeStreamInternalEndPoint()
+ * @generated
+ */
+ EAttribute getDcaeStreamInternalEndPoint_ServiceName();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint Dcae Stream External End Point}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Stream External End Point'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint
+ * @generated
+ */
+ EClass getDcaeStreamExternalEndPoint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getUser User}'.
+ *
+ *
+ * @return the meta object for the attribute 'User'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getUser()
+ * @see #getDcaeStreamExternalEndPoint()
+ * @generated
+ */
+ EAttribute getDcaeStreamExternalEndPoint_User();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getPassword Password}'.
+ *
+ *
+ * @return the meta object for the attribute 'Password'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getPassword()
+ * @see #getDcaeStreamExternalEndPoint()
+ * @generated
+ */
+ EAttribute getDcaeStreamExternalEndPoint_Password();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getUrl Url}'.
+ *
+ *
+ * @return the meta object for the attribute 'Url'.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint#getUrl()
+ * @see #getDcaeStreamExternalEndPoint()
+ * @generated
+ */
+ EAttribute getDcaeStreamExternalEndPoint_Url();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusStream Databus Stream}'.
+ *
+ *
+ * @return the meta object for class 'Databus Stream'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStream
+ * @generated
+ */
+ EClass getDatabusStream();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic Databus Stream Topic}'.
+ *
+ *
+ * @return the meta object for class 'Databus Stream Topic'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic
+ * @generated
+ */
+ EClass getDatabusStreamTopic();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getTopicName Topic Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Topic Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getTopicName()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_TopicName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getTopicDescription Topic Description}'.
+ *
+ *
+ * @return the meta object for the attribute 'Topic Description'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getTopicDescription()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_TopicDescription();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getDcaeLocationName Dcae Location Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Location Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getDcaeLocationName()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_DcaeLocationName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getOwner Owner}'.
+ *
+ *
+ * @return the meta object for the attribute 'Owner'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getOwner()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_Owner();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#isTxenabled Txenabled}'.
+ *
+ *
+ * @return the meta object for the attribute 'Txenabled'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#isTxenabled()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_Txenabled();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getFqtn Fqtn}'.
+ *
+ *
+ * @return the meta object for the attribute 'Fqtn'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getFqtn()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_Fqtn();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getLastMod Last Mod}'.
+ *
+ *
+ * @return the meta object for the attribute 'Last Mod'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getLastMod()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_LastMod();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getStatus Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Status'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getStatus()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_Status();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getClients Clients}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Clients'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getClients()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EReference getDatabusStreamTopic_Clients();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getPublishURL Publish URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Publish URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getPublishURL()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_PublishURL();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getSubscribeURL Subscribe URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Subscribe URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getSubscribeURL()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_SubscribeURL();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getAuthenticationMethod Authentication Method}'.
+ *
+ *
+ * @return the meta object for the attribute 'Authentication Method'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic#getAuthenticationMethod()
+ * @see #getDatabusStreamTopic()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopic_AuthenticationMethod();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient Databus Stream Topic Client}'.
+ *
+ *
+ * @return the meta object for class 'Databus Stream Topic Client'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient
+ * @generated
+ */
+ EClass getDatabusStreamTopicClient();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getLocalStreamId Local Stream Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Local Stream Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getLocalStreamId()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_LocalStreamId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getDcaeLocationName Dcae Location Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Location Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getDcaeLocationName()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_DcaeLocationName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getClientRole Client Role}'.
+ *
+ *
+ * @return the meta object for the attribute 'Client Role'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getClientRole()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_ClientRole();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getAction Action}'.
+ *
+ *
+ * @return the meta object for the attribute list 'Action'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getAction()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_Action();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getUsername Username}'.
+ *
+ *
+ * @return the meta object for the attribute 'Username'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getUsername()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_Username();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getUserpwd Userpwd}'.
+ *
+ *
+ * @return the meta object for the attribute 'Userpwd'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getUserpwd()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_Userpwd();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getFqtn Fqtn}'.
+ *
+ *
+ * @return the meta object for the attribute 'Fqtn'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getFqtn()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_Fqtn();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getMrClientId Mr Client Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Mr Client Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getMrClientId()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_MrClientId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getTopicURL Topic URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Topic URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient#getTopicURL()
+ * @see #getDatabusStreamTopicClient()
+ * @generated
+ */
+ EAttribute getDatabusStreamTopicClient_TopicURL();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed Databus Stream Feed}'.
+ *
+ *
+ * @return the meta object for class 'Databus Stream Feed'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed
+ * @generated
+ */
+ EClass getDatabusStreamFeed();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedName Feed Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Feed Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedName()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_FeedName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedVersion Feed Version}'.
+ *
+ *
+ * @return the meta object for the attribute 'Feed Version'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedVersion()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_FeedVersion();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedDescription Feed Description}'.
+ *
+ *
+ * @return the meta object for the attribute 'Feed Description'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedDescription()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_FeedDescription();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getAsprClassification Aspr Classification}'.
+ *
+ *
+ * @return the meta object for the attribute 'Aspr Classification'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getAsprClassification()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_AsprClassification();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getOwner Owner}'.
+ *
+ *
+ * @return the meta object for the attribute 'Owner'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getOwner()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_Owner();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedId Feed Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Feed Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getFeedId()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_FeedId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getLogURL Log URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Log URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getLogURL()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_LogURL();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getPublishURL Publish URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Publish URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getPublishURL()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_PublishURL();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSubscribeURL Subscribe URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Subscribe URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSubscribeURL()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_SubscribeURL();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getStatus Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Status'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getStatus()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_Status();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSuspended Suspended}'.
+ *
+ *
+ * @return the meta object for the attribute 'Suspended'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSuspended()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeed_Suspended();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getPublishers Publishers}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Publishers'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getPublishers()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EReference getDatabusStreamFeed_Publishers();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSubscribers Subscribers}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Subscribers'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed#getSubscribers()
+ * @see #getDatabusStreamFeed()
+ * @generated
+ */
+ EReference getDatabusStreamFeed_Subscribers();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher Databus Stream Feed Publisher}'.
+ *
+ *
+ * @return the meta object for class 'Databus Stream Feed Publisher'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher
+ * @generated
+ */
+ EClass getDatabusStreamFeedPublisher();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getLocalStreamId Local Stream Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Local Stream Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getLocalStreamId()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_LocalStreamId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getDcaeLocationName Dcae Location Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Location Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getDcaeLocationName()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_DcaeLocationName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getFeedId Feed Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Feed Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getFeedId()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_FeedId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getPubId Pub Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Pub Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getPubId()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_PubId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getStatus Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Status'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getStatus()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_Status();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getUsername Username}'.
+ *
+ *
+ * @return the meta object for the attribute 'Username'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getUsername()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_Username();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getUserpwd Userpwd}'.
+ *
+ *
+ * @return the meta object for the attribute 'Userpwd'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher#getUserpwd()
+ * @see #getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedPublisher_Userpwd();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber Databus Stream Feed Subscriber}'.
+ *
+ *
+ * @return the meta object for class 'Databus Stream Feed Subscriber'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber
+ * @generated
+ */
+ EClass getDatabusStreamFeedSubscriber();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLocalStreamId Local Stream Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Local Stream Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLocalStreamId()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_LocalStreamId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getDcaeLocationName Dcae Location Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Location Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getDcaeLocationName()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_DcaeLocationName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getOtherFeedName Other Feed Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Other Feed Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getOtherFeedName()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_OtherFeedName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getFeedId Feed Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Feed Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getFeedId()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_FeedId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLogURL Log URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Log URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getLogURL()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_LogURL();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getOwner Owner}'.
+ *
+ *
+ * @return the meta object for the attribute 'Owner'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getOwner()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_Owner();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getSubId Sub Id}'.
+ *
+ *
+ * @return the meta object for the attribute 'Sub Id'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getSubId()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_SubId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#isSuspended Suspended}'.
+ *
+ *
+ * @return the meta object for the attribute 'Suspended'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#isSuspended()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_Suspended();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#isUse100 Use100}'.
+ *
+ *
+ * @return the meta object for the attribute 'Use100'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#isUse100()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_Use100();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getUsername Username}'.
+ *
+ *
+ * @return the meta object for the attribute 'Username'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getUsername()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_Username();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getUserpwd Userpwd}'.
+ *
+ *
+ * @return the meta object for the attribute 'Userpwd'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getUserpwd()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_Userpwd();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getDeliveryURL Delivery URL}'.
+ *
+ *
+ * @return the meta object for the attribute 'Delivery URL'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber#getDeliveryURL()
+ * @see #getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EAttribute getDatabusStreamFeedSubscriber_DeliveryURL();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity Databus Entity}'.
+ *
+ *
+ * @return the meta object for class 'Databus Entity'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusEntity
+ * @generated
+ */
+ EClass getDatabusEntity();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity#getStatus Status}'.
+ *
+ *
+ * @return the meta object for the attribute 'Status'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusEntity#getStatus()
+ * @see #getDatabusEntity()
+ * @generated
+ */
+ EAttribute getDatabusEntity_Status();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity#getLastModified Last Modified}'.
+ *
+ *
+ * @return the meta object for the attribute 'Last Modified'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusEntity#getLastModified()
+ * @see #getDatabusEntity()
+ * @generated
+ */
+ EAttribute getDatabusEntity_LastModified();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity#getType Type}'.
+ *
+ *
+ * @return the meta object for the attribute 'Type'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusEntity#getType()
+ * @see #getDatabusEntity()
+ * @generated
+ */
+ EAttribute getDatabusEntity_Type();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusLocation Databus Location}'.
+ *
+ *
+ * @return the meta object for class 'Databus Location'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusLocation
+ * @generated
+ */
+ EClass getDatabusLocation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusLocation#getDcaeLayer Dcae Layer}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Layer'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusLocation#getDcaeLayer()
+ * @see #getDatabusLocation()
+ * @generated
+ */
+ EAttribute getDatabusLocation_DcaeLayer();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster Databus Message Router Cluster}'.
+ *
+ *
+ * @return the meta object for class 'Databus Message Router Cluster'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster
+ * @generated
+ */
+ EClass getDatabusMessageRouterCluster();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getDcaeLocationName Dcae Location Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Location Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getDcaeLocationName()
+ * @see #getDatabusMessageRouterCluster()
+ * @generated
+ */
+ EAttribute getDatabusMessageRouterCluster_DcaeLocationName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getServiceFqdn Service Fqdn}'.
+ *
+ *
+ * @return the meta object for the attribute 'Service Fqdn'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getServiceFqdn()
+ * @see #getDatabusMessageRouterCluster()
+ * @generated
+ */
+ EAttribute getDatabusMessageRouterCluster_ServiceFqdn();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getHostFqdn Host Fqdn}'.
+ *
+ *
+ * @return the meta object for the attribute list 'Host Fqdn'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getHostFqdn()
+ * @see #getDatabusMessageRouterCluster()
+ * @generated
+ */
+ EAttribute getDatabusMessageRouterCluster_HostFqdn();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getTopicPort Topic Port}'.
+ *
+ *
+ * @return the meta object for the attribute 'Topic Port'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getTopicPort()
+ * @see #getDatabusMessageRouterCluster()
+ * @generated
+ */
+ EAttribute getDatabusMessageRouterCluster_TopicPort();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getTopicProtocol Topic Protocol}'.
+ *
+ *
+ * @return the meta object for the attribute 'Topic Protocol'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster#getTopicProtocol()
+ * @see #getDatabusMessageRouterCluster()
+ * @generated
+ */
+ EAttribute getDatabusMessageRouterCluster_TopicProtocol();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode Databus Data Router Node}'.
+ *
+ *
+ * @return the meta object for class 'Databus Data Router Node'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode
+ * @generated
+ */
+ EClass getDatabusDataRouterNode();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getDcaeLocationName Dcae Location Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'Dcae Location Name'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getDcaeLocationName()
+ * @see #getDatabusDataRouterNode()
+ * @generated
+ */
+ EAttribute getDatabusDataRouterNode_DcaeLocationName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getHostFqdn Host Fqdn}'.
+ *
+ *
+ * @return the meta object for the attribute 'Host Fqdn'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getHostFqdn()
+ * @see #getDatabusDataRouterNode()
+ * @generated
+ */
+ EAttribute getDatabusDataRouterNode_HostFqdn();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getVersion Version}'.
+ *
+ *
+ * @return the meta object for the attribute 'Version'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode#getVersion()
+ * @see #getDatabusDataRouterNode()
+ * @generated
+ */
+ EAttribute getDatabusDataRouterNode_Version();
+
+ /**
+ * Returns the meta object for enum '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction Databus Stream Topic Action}'.
+ *
+ *
+ * @return the meta object for enum 'Databus Stream Topic Action'.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction
+ * @generated
+ */
+ EEnum getDatabusStreamTopicAction();
+
+ /**
+ * Returns the meta object for enum '{@link org.openecomp.dcae.controller.core.stream.StreamAuthentication Authentication}'.
+ *
+ *
+ * @return the meta object for enum 'Authentication'.
+ * @see org.openecomp.dcae.controller.core.stream.StreamAuthentication
+ * @generated
+ */
+ EEnum getStreamAuthentication();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ *
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ StreamFactory getStreamFactory();
+
+ /**
+ *
+ * Defines literals for the meta objects that represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamImpl Dcae Stream}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStream()
+ * @generated
+ */
+ EClass DCAE_STREAM = eINSTANCE.getDcaeStream();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DmaapStreamImpl Dmaap Stream}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DmaapStreamImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDmaapStream()
+ * @generated
+ */
+ EClass DMAAP_STREAM = eINSTANCE.getDmaapStream();
+ /**
+ * The meta object literal for the 'Dmaap Data Type' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DMAAP_STREAM__DMAAP_DATA_TYPE = eINSTANCE.getDmaapStream_DmaapDataType();
+ /**
+ * The meta object literal for the 'Dmaap Action' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DMAAP_STREAM__DMAAP_ACTION = eINSTANCE.getDmaapStream_DmaapAction();
+ /**
+ * The meta object literal for the 'Dmaap Url' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DMAAP_STREAM__DMAAP_URL = eINSTANCE.getDmaapStream_DmaapUrl();
+ /**
+ * The meta object literal for the 'Dmaap User Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DMAAP_STREAM__DMAAP_USER_NAME = eINSTANCE.getDmaapStream_DmaapUserName();
+ /**
+ * The meta object literal for the 'Dmaap Password' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DMAAP_STREAM__DMAAP_PASSWORD = eINSTANCE.getDmaapStream_DmaapPassword();
+ /**
+ * The meta object literal for the 'Dmaap Auth Method' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DMAAP_STREAM__DMAAP_AUTH_METHOD = eINSTANCE.getDmaapStream_DmaapAuthMethod();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamDefinitionImpl Dcae Stream Definition}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamDefinitionImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamDefinition()
+ * @generated
+ */
+ EClass DCAE_STREAM_DEFINITION = eINSTANCE.getDcaeStreamDefinition();
+ /**
+ * The meta object literal for the 'Stream Type' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_DEFINITION__STREAM_TYPE = eINSTANCE.getDcaeStreamDefinition_StreamType();
+ /**
+ * The meta object literal for the 'Databus Type' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_DEFINITION__DATABUS_TYPE = eINSTANCE.getDcaeStreamDefinition_DatabusType();
+ /**
+ * The meta object literal for the 'Publishers' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_STREAM_DEFINITION__PUBLISHERS = eINSTANCE.getDcaeStreamDefinition_Publishers();
+ /**
+ * The meta object literal for the 'Subscribers' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_STREAM_DEFINITION__SUBSCRIBERS = eINSTANCE.getDcaeStreamDefinition_Subscribers();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherImpl Dcae Stream Publisher}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamPublisher()
+ * @generated
+ */
+ EClass DCAE_STREAM_PUBLISHER = eINSTANCE.getDcaeStreamPublisher();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberImpl Dcae Stream Subscriber}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamSubscriber()
+ * @generated
+ */
+ EClass DCAE_STREAM_SUBSCRIBER = eINSTANCE.getDcaeStreamSubscriber();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherExternalImpl Dcae Stream Publisher External}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherExternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamPublisherExternal()
+ * @generated
+ */
+ EClass DCAE_STREAM_PUBLISHER_EXTERNAL = eINSTANCE.getDcaeStreamPublisherExternal();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherInternalImpl Dcae Stream Publisher Internal}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherInternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamPublisherInternal()
+ * @generated
+ */
+ EClass DCAE_STREAM_PUBLISHER_INTERNAL = eINSTANCE.getDcaeStreamPublisherInternal();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberExternalImpl Dcae Stream Subscriber External}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberExternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamSubscriberExternal()
+ * @generated
+ */
+ EClass DCAE_STREAM_SUBSCRIBER_EXTERNAL = eINSTANCE.getDcaeStreamSubscriberExternal();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberInternalImpl Dcae Stream Subscriber Internal}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberInternalImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamSubscriberInternal()
+ * @generated
+ */
+ EClass DCAE_STREAM_SUBSCRIBER_INTERNAL = eINSTANCE.getDcaeStreamSubscriberInternal();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamInternalEndPointImpl Dcae Stream Internal End Point}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamInternalEndPointImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamInternalEndPoint()
+ * @generated
+ */
+ EClass DCAE_STREAM_INTERNAL_END_POINT = eINSTANCE.getDcaeStreamInternalEndPoint();
+ /**
+ * The meta object literal for the 'Local Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME = eINSTANCE.getDcaeStreamInternalEndPoint_LocalName();
+ /**
+ * The meta object literal for the 'Service Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME = eINSTANCE.getDcaeStreamInternalEndPoint_ServiceName();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamExternalEndPointImpl Dcae Stream External End Point}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DcaeStreamExternalEndPointImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDcaeStreamExternalEndPoint()
+ * @generated
+ */
+ EClass DCAE_STREAM_EXTERNAL_END_POINT = eINSTANCE.getDcaeStreamExternalEndPoint();
+ /**
+ * The meta object literal for the 'User' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_EXTERNAL_END_POINT__USER = eINSTANCE.getDcaeStreamExternalEndPoint_User();
+ /**
+ * The meta object literal for the 'Password' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD = eINSTANCE.getDcaeStreamExternalEndPoint_Password();
+ /**
+ * The meta object literal for the 'Url' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DCAE_STREAM_EXTERNAL_END_POINT__URL = eINSTANCE.getDcaeStreamExternalEndPoint_Url();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamImpl Databus Stream}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStream()
+ * @generated
+ */
+ EClass DATABUS_STREAM = eINSTANCE.getDatabusStream();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicImpl Databus Stream Topic}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamTopic()
+ * @generated
+ */
+ EClass DATABUS_STREAM_TOPIC = eINSTANCE.getDatabusStreamTopic();
+ /**
+ * The meta object literal for the 'Topic Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__TOPIC_NAME = eINSTANCE.getDatabusStreamTopic_TopicName();
+ /**
+ * The meta object literal for the 'Topic Description' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__TOPIC_DESCRIPTION = eINSTANCE.getDatabusStreamTopic_TopicDescription();
+ /**
+ * The meta object literal for the 'Dcae Location Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__DCAE_LOCATION_NAME = eINSTANCE.getDatabusStreamTopic_DcaeLocationName();
+ /**
+ * The meta object literal for the 'Owner' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__OWNER = eINSTANCE.getDatabusStreamTopic_Owner();
+ /**
+ * The meta object literal for the 'Txenabled' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__TXENABLED = eINSTANCE.getDatabusStreamTopic_Txenabled();
+ /**
+ * The meta object literal for the 'Fqtn' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__FQTN = eINSTANCE.getDatabusStreamTopic_Fqtn();
+ /**
+ * The meta object literal for the 'Last Mod' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__LAST_MOD = eINSTANCE.getDatabusStreamTopic_LastMod();
+ /**
+ * The meta object literal for the 'Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__STATUS = eINSTANCE.getDatabusStreamTopic_Status();
+ /**
+ * The meta object literal for the 'Clients' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DATABUS_STREAM_TOPIC__CLIENTS = eINSTANCE.getDatabusStreamTopic_Clients();
+ /**
+ * The meta object literal for the 'Publish URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__PUBLISH_URL = eINSTANCE.getDatabusStreamTopic_PublishURL();
+ /**
+ * The meta object literal for the 'Subscribe URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__SUBSCRIBE_URL = eINSTANCE.getDatabusStreamTopic_SubscribeURL();
+ /**
+ * The meta object literal for the 'Authentication Method' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC__AUTHENTICATION_METHOD = eINSTANCE.getDatabusStreamTopic_AuthenticationMethod();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicClientImpl Databus Stream Topic Client}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamTopicClientImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamTopicClient()
+ * @generated
+ */
+ EClass DATABUS_STREAM_TOPIC_CLIENT = eINSTANCE.getDatabusStreamTopicClient();
+ /**
+ * The meta object literal for the 'Local Stream Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__LOCAL_STREAM_ID = eINSTANCE.getDatabusStreamTopicClient_LocalStreamId();
+ /**
+ * The meta object literal for the 'Dcae Location Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__DCAE_LOCATION_NAME = eINSTANCE.getDatabusStreamTopicClient_DcaeLocationName();
+ /**
+ * The meta object literal for the 'Client Role' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__CLIENT_ROLE = eINSTANCE.getDatabusStreamTopicClient_ClientRole();
+ /**
+ * The meta object literal for the 'Action' attribute list feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__ACTION = eINSTANCE.getDatabusStreamTopicClient_Action();
+ /**
+ * The meta object literal for the 'Username' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__USERNAME = eINSTANCE.getDatabusStreamTopicClient_Username();
+ /**
+ * The meta object literal for the 'Userpwd' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__USERPWD = eINSTANCE.getDatabusStreamTopicClient_Userpwd();
+ /**
+ * The meta object literal for the 'Fqtn' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__FQTN = eINSTANCE.getDatabusStreamTopicClient_Fqtn();
+ /**
+ * The meta object literal for the 'Mr Client Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__MR_CLIENT_ID = eINSTANCE.getDatabusStreamTopicClient_MrClientId();
+ /**
+ * The meta object literal for the 'Topic URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_TOPIC_CLIENT__TOPIC_URL = eINSTANCE.getDatabusStreamTopicClient_TopicURL();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedImpl Databus Stream Feed}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamFeed()
+ * @generated
+ */
+ EClass DATABUS_STREAM_FEED = eINSTANCE.getDatabusStreamFeed();
+ /**
+ * The meta object literal for the 'Feed Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__FEED_NAME = eINSTANCE.getDatabusStreamFeed_FeedName();
+ /**
+ * The meta object literal for the 'Feed Version' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__FEED_VERSION = eINSTANCE.getDatabusStreamFeed_FeedVersion();
+ /**
+ * The meta object literal for the 'Feed Description' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__FEED_DESCRIPTION = eINSTANCE.getDatabusStreamFeed_FeedDescription();
+ /**
+ * The meta object literal for the 'Aspr Classification' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__ASPR_CLASSIFICATION = eINSTANCE.getDatabusStreamFeed_AsprClassification();
+ /**
+ * The meta object literal for the 'Owner' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__OWNER = eINSTANCE.getDatabusStreamFeed_Owner();
+ /**
+ * The meta object literal for the 'Feed Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__FEED_ID = eINSTANCE.getDatabusStreamFeed_FeedId();
+ /**
+ * The meta object literal for the 'Log URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__LOG_URL = eINSTANCE.getDatabusStreamFeed_LogURL();
+ /**
+ * The meta object literal for the 'Publish URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__PUBLISH_URL = eINSTANCE.getDatabusStreamFeed_PublishURL();
+ /**
+ * The meta object literal for the 'Subscribe URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__SUBSCRIBE_URL = eINSTANCE.getDatabusStreamFeed_SubscribeURL();
+ /**
+ * The meta object literal for the 'Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__STATUS = eINSTANCE.getDatabusStreamFeed_Status();
+ /**
+ * The meta object literal for the 'Suspended' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED__SUSPENDED = eINSTANCE.getDatabusStreamFeed_Suspended();
+ /**
+ * The meta object literal for the 'Publishers' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DATABUS_STREAM_FEED__PUBLISHERS = eINSTANCE.getDatabusStreamFeed_Publishers();
+ /**
+ * The meta object literal for the 'Subscribers' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DATABUS_STREAM_FEED__SUBSCRIBERS = eINSTANCE.getDatabusStreamFeed_Subscribers();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedPublisherImpl Databus Stream Feed Publisher}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedPublisherImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamFeedPublisher()
+ * @generated
+ */
+ EClass DATABUS_STREAM_FEED_PUBLISHER = eINSTANCE.getDatabusStreamFeedPublisher();
+ /**
+ * The meta object literal for the 'Local Stream Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__LOCAL_STREAM_ID = eINSTANCE.getDatabusStreamFeedPublisher_LocalStreamId();
+ /**
+ * The meta object literal for the 'Dcae Location Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__DCAE_LOCATION_NAME = eINSTANCE.getDatabusStreamFeedPublisher_DcaeLocationName();
+ /**
+ * The meta object literal for the 'Feed Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__FEED_ID = eINSTANCE.getDatabusStreamFeedPublisher_FeedId();
+ /**
+ * The meta object literal for the 'Pub Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__PUB_ID = eINSTANCE.getDatabusStreamFeedPublisher_PubId();
+ /**
+ * The meta object literal for the 'Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__STATUS = eINSTANCE.getDatabusStreamFeedPublisher_Status();
+ /**
+ * The meta object literal for the 'Username' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__USERNAME = eINSTANCE.getDatabusStreamFeedPublisher_Username();
+ /**
+ * The meta object literal for the 'Userpwd' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_PUBLISHER__USERPWD = eINSTANCE.getDatabusStreamFeedPublisher_Userpwd();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedSubscriberImpl Databus Stream Feed Subscriber}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusStreamFeedSubscriberImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamFeedSubscriber()
+ * @generated
+ */
+ EClass DATABUS_STREAM_FEED_SUBSCRIBER = eINSTANCE.getDatabusStreamFeedSubscriber();
+ /**
+ * The meta object literal for the 'Local Stream Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__LOCAL_STREAM_ID = eINSTANCE.getDatabusStreamFeedSubscriber_LocalStreamId();
+ /**
+ * The meta object literal for the 'Dcae Location Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__DCAE_LOCATION_NAME = eINSTANCE.getDatabusStreamFeedSubscriber_DcaeLocationName();
+ /**
+ * The meta object literal for the 'Other Feed Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__OTHER_FEED_NAME = eINSTANCE.getDatabusStreamFeedSubscriber_OtherFeedName();
+ /**
+ * The meta object literal for the 'Feed Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__FEED_ID = eINSTANCE.getDatabusStreamFeedSubscriber_FeedId();
+ /**
+ * The meta object literal for the 'Log URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__LOG_URL = eINSTANCE.getDatabusStreamFeedSubscriber_LogURL();
+ /**
+ * The meta object literal for the 'Owner' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__OWNER = eINSTANCE.getDatabusStreamFeedSubscriber_Owner();
+ /**
+ * The meta object literal for the 'Sub Id' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__SUB_ID = eINSTANCE.getDatabusStreamFeedSubscriber_SubId();
+ /**
+ * The meta object literal for the 'Suspended' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__SUSPENDED = eINSTANCE.getDatabusStreamFeedSubscriber_Suspended();
+ /**
+ * The meta object literal for the 'Use100' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__USE100 = eINSTANCE.getDatabusStreamFeedSubscriber_Use100();
+ /**
+ * The meta object literal for the 'Username' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__USERNAME = eINSTANCE.getDatabusStreamFeedSubscriber_Username();
+ /**
+ * The meta object literal for the 'Userpwd' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__USERPWD = eINSTANCE.getDatabusStreamFeedSubscriber_Userpwd();
+ /**
+ * The meta object literal for the 'Delivery URL' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_STREAM_FEED_SUBSCRIBER__DELIVERY_URL = eINSTANCE.getDatabusStreamFeedSubscriber_DeliveryURL();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusEntityImpl Databus Entity}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusEntityImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusEntity()
+ * @generated
+ */
+ EClass DATABUS_ENTITY = eINSTANCE.getDatabusEntity();
+ /**
+ * The meta object literal for the 'Status' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_ENTITY__STATUS = eINSTANCE.getDatabusEntity_Status();
+ /**
+ * The meta object literal for the 'Last Modified' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_ENTITY__LAST_MODIFIED = eINSTANCE.getDatabusEntity_LastModified();
+ /**
+ * The meta object literal for the 'Type' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_ENTITY__TYPE = eINSTANCE.getDatabusEntity_Type();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusLocationImpl Databus Location}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusLocationImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusLocation()
+ * @generated
+ */
+ EClass DATABUS_LOCATION = eINSTANCE.getDatabusLocation();
+ /**
+ * The meta object literal for the 'Dcae Layer' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_LOCATION__DCAE_LAYER = eINSTANCE.getDatabusLocation_DcaeLayer();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusMessageRouterClusterImpl Databus Message Router Cluster}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusMessageRouterClusterImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusMessageRouterCluster()
+ * @generated
+ */
+ EClass DATABUS_MESSAGE_ROUTER_CLUSTER = eINSTANCE.getDatabusMessageRouterCluster();
+ /**
+ * The meta object literal for the 'Dcae Location Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_MESSAGE_ROUTER_CLUSTER__DCAE_LOCATION_NAME = eINSTANCE.getDatabusMessageRouterCluster_DcaeLocationName();
+ /**
+ * The meta object literal for the 'Service Fqdn' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_MESSAGE_ROUTER_CLUSTER__SERVICE_FQDN = eINSTANCE.getDatabusMessageRouterCluster_ServiceFqdn();
+ /**
+ * The meta object literal for the 'Host Fqdn' attribute list feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_MESSAGE_ROUTER_CLUSTER__HOST_FQDN = eINSTANCE.getDatabusMessageRouterCluster_HostFqdn();
+ /**
+ * The meta object literal for the 'Topic Port' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_MESSAGE_ROUTER_CLUSTER__TOPIC_PORT = eINSTANCE.getDatabusMessageRouterCluster_TopicPort();
+ /**
+ * The meta object literal for the 'Topic Protocol' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_MESSAGE_ROUTER_CLUSTER__TOPIC_PROTOCOL = eINSTANCE.getDatabusMessageRouterCluster_TopicProtocol();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.impl.DatabusDataRouterNodeImpl Databus Data Router Node}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.impl.DatabusDataRouterNodeImpl
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusDataRouterNode()
+ * @generated
+ */
+ EClass DATABUS_DATA_ROUTER_NODE = eINSTANCE.getDatabusDataRouterNode();
+ /**
+ * The meta object literal for the 'Dcae Location Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_DATA_ROUTER_NODE__DCAE_LOCATION_NAME = eINSTANCE.getDatabusDataRouterNode_DcaeLocationName();
+ /**
+ * The meta object literal for the 'Host Fqdn' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_DATA_ROUTER_NODE__HOST_FQDN = eINSTANCE.getDatabusDataRouterNode_HostFqdn();
+ /**
+ * The meta object literal for the 'Version' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute DATABUS_DATA_ROUTER_NODE__VERSION = eINSTANCE.getDatabusDataRouterNode_Version();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction Databus Stream Topic Action}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicAction
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getDatabusStreamTopicAction()
+ * @generated
+ */
+ EEnum DATABUS_STREAM_TOPIC_ACTION = eINSTANCE.getDatabusStreamTopicAction();
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.core.stream.StreamAuthentication Authentication}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamAuthentication
+ * @see org.openecomp.dcae.controller.core.stream.impl.StreamPackageImpl#getStreamAuthentication()
+ * @generated
+ */
+ EEnum STREAM_AUTHENTICATION = eINSTANCE.getStreamAuthentication();
+
+ }
+
+} //StreamPackage
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DatabusDataRouterNodeImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DatabusDataRouterNodeImpl.java
new file mode 100644
index 0000000..605ad95
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DatabusDataRouterNodeImpl.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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Databus Data Router Node'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamExternalEndPointImpl extends MinimalEObjectImpl.Container implements DcaeStreamExternalEndPoint {
+ /**
+ * The default value of the '{@link #getUser() User}' attribute.
+ *
+ *
+ * @see #getUser()
+ * @generated
+ * @ordered
+ */
+ protected static final String USER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUser() User}' attribute.
+ *
+ *
+ * @see #getUser()
+ * @generated
+ * @ordered
+ */
+ protected String user = USER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPassword() Password}' attribute.
+ *
+ *
+ * @see #getPassword()
+ * @generated
+ * @ordered
+ */
+ protected static final String PASSWORD_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPassword() Password}' attribute.
+ *
+ *
+ * @see #getPassword()
+ * @generated
+ * @ordered
+ */
+ protected String password = PASSWORD_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getUrl() Url}' attribute.
+ *
+ *
+ * @see #getUrl()
+ * @generated
+ * @ordered
+ */
+ protected static final String URL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUrl() Url}' attribute.
+ *
+ *
+ * @see #getUrl()
+ * @generated
+ * @ordered
+ */
+ protected String url = URL_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamExternalEndPointImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_EXTERNAL_END_POINT;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getUser() {
+ return user;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setUser(String newUser) {
+ String oldUser = user;
+ user = newUser;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER, oldUser, user));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getPassword() {
+ return password;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setPassword(String newPassword) {
+ String oldPassword = password;
+ password = newPassword;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD, oldPassword, password));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getUrl() {
+ return url;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setUrl(String newUrl) {
+ String oldUrl = url;
+ url = newUrl;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL, oldUrl, url));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER:
+ return getUser();
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD:
+ return getPassword();
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL:
+ return getUrl();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER:
+ setUser((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD:
+ setPassword((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL:
+ setUrl((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER:
+ setUser(USER_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD:
+ setPassword(PASSWORD_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL:
+ setUrl(URL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER:
+ return USER_EDEFAULT == null ? user != null : !USER_EDEFAULT.equals(user);
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD:
+ return PASSWORD_EDEFAULT == null ? password != null : !PASSWORD_EDEFAULT.equals(password);
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL:
+ return URL_EDEFAULT == null ? url != null : !URL_EDEFAULT.equals(url);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (user: ");
+ result.append(user);
+ result.append(", password: ");
+ result.append(password);
+ result.append(", url: ");
+ result.append(url);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeStreamExternalEndPointImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamImpl.java
new file mode 100644
index 0000000..69a342d
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamImpl.java
@@ -0,0 +1,62 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStream;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamImpl extends NamedEntityImpl implements DcaeStream {
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM;
+ }
+
+} //DcaeStreamImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamInternalEndPointImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamInternalEndPointImpl.java
new file mode 100644
index 0000000..4286bab
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamInternalEndPointImpl.java
@@ -0,0 +1,238 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+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;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Internal End Point'.
+ *
+ *
+ * The following features are implemented:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamInternalEndPointImpl#getLocalName Local Name}
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamInternalEndPointImpl#getServiceName Service Name}
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamInternalEndPointImpl extends MinimalEObjectImpl.Container implements DcaeStreamInternalEndPoint {
+ /**
+ * The default value of the '{@link #getLocalName() Local Name}' attribute.
+ *
+ *
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected static final String LOCAL_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLocalName() Local Name}' attribute.
+ *
+ *
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected String localName = LOCAL_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getServiceName() Service Name}' attribute.
+ *
+ *
+ * @see #getServiceName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SERVICE_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getServiceName() Service Name}' attribute.
+ *
+ *
+ * @see #getServiceName()
+ * @generated
+ * @ordered
+ */
+ protected String serviceName = SERVICE_NAME_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamInternalEndPointImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_INTERNAL_END_POINT;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLocalName() {
+ return localName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setLocalName(String newLocalName) {
+ String oldLocalName = localName;
+ localName = newLocalName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME, oldLocalName, localName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getServiceName() {
+ return serviceName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setServiceName(String newServiceName) {
+ String oldServiceName = serviceName;
+ serviceName = newServiceName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME, oldServiceName, serviceName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME:
+ return getLocalName();
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME:
+ return getServiceName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME:
+ setLocalName((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME:
+ setServiceName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME:
+ setLocalName(LOCAL_NAME_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME:
+ setServiceName(SERVICE_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME:
+ return LOCAL_NAME_EDEFAULT == null ? localName != null : !LOCAL_NAME_EDEFAULT.equals(localName);
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME:
+ return SERVICE_NAME_EDEFAULT == null ? serviceName != null : !SERVICE_NAME_EDEFAULT.equals(serviceName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (localName: ");
+ result.append(localName);
+ result.append(", serviceName: ");
+ result.append(serviceName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeStreamInternalEndPointImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherExternalImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherExternalImpl.java
new file mode 100644
index 0000000..eccb2f7
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherExternalImpl.java
@@ -0,0 +1,328 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint;
+import org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherExternal;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Publisher External'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamPublisherExternalImpl extends DcaeStreamPublisherImpl implements DcaeStreamPublisherExternal {
+ /**
+ * The default value of the '{@link #getUser() User}' attribute.
+ *
+ *
+ * @see #getUser()
+ * @generated
+ * @ordered
+ */
+ protected static final String USER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUser() User}' attribute.
+ *
+ *
+ * @see #getUser()
+ * @generated
+ * @ordered
+ */
+ protected String user = USER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPassword() Password}' attribute.
+ *
+ *
+ * @see #getPassword()
+ * @generated
+ * @ordered
+ */
+ protected static final String PASSWORD_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPassword() Password}' attribute.
+ *
+ *
+ * @see #getPassword()
+ * @generated
+ * @ordered
+ */
+ protected String password = PASSWORD_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getUrl() Url}' attribute.
+ *
+ *
+ * @see #getUrl()
+ * @generated
+ * @ordered
+ */
+ protected static final String URL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUrl() Url}' attribute.
+ *
+ *
+ * @see #getUrl()
+ * @generated
+ * @ordered
+ */
+ protected String url = URL_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamPublisherExternalImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_PUBLISHER_EXTERNAL;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getUser() {
+ return user;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setUser(String newUser) {
+ String oldUser = user;
+ user = newUser;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER, oldUser, user));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getPassword() {
+ return password;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setPassword(String newPassword) {
+ String oldPassword = password;
+ password = newPassword;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD, oldPassword, password));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getUrl() {
+ return url;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setUrl(String newUrl) {
+ String oldUrl = url;
+ url = newUrl;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL, oldUrl, url));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER:
+ return getUser();
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD:
+ return getPassword();
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL:
+ return getUrl();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER:
+ setUser((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD:
+ setPassword((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL:
+ setUrl((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER:
+ setUser(USER_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD:
+ setPassword(PASSWORD_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL:
+ setUrl(URL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER:
+ return USER_EDEFAULT == null ? user != null : !USER_EDEFAULT.equals(user);
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD:
+ return PASSWORD_EDEFAULT == null ? password != null : !PASSWORD_EDEFAULT.equals(password);
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL:
+ return URL_EDEFAULT == null ? url != null : !URL_EDEFAULT.equals(url);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamExternalEndPoint.class) {
+ switch (derivedFeatureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER: return StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD: return StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL: return StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamExternalEndPoint.class) {
+ switch (baseFeatureID) {
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER: return StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__USER;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD: return StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__PASSWORD;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL: return StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL__URL;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (user: ");
+ result.append(user);
+ result.append(", password: ");
+ result.append(password);
+ result.append(", url: ");
+ result.append(url);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeStreamPublisherExternalImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherImpl.java
new file mode 100644
index 0000000..bbcaf85
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherImpl.java
@@ -0,0 +1,62 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamPublisher;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Publisher'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public abstract class DcaeStreamPublisherImpl extends NamedEntityImpl implements DcaeStreamPublisher {
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamPublisherImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_PUBLISHER;
+ }
+
+} //DcaeStreamPublisherImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherInternalImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherInternalImpl.java
new file mode 100644
index 0000000..480d1d3
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamPublisherInternalImpl.java
@@ -0,0 +1,272 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint;
+import org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherInternal;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Publisher Internal'.
+ *
+ *
+ * The following features are implemented:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherInternalImpl#getLocalName Local Name}
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamPublisherInternalImpl#getServiceName Service Name}
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamPublisherInternalImpl extends DcaeStreamPublisherImpl implements DcaeStreamPublisherInternal {
+ /**
+ * The default value of the '{@link #getLocalName() Local Name}' attribute.
+ *
+ *
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected static final String LOCAL_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLocalName() Local Name}' attribute.
+ *
+ *
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected String localName = LOCAL_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getServiceName() Service Name}' attribute.
+ *
+ *
+ * @see #getServiceName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SERVICE_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getServiceName() Service Name}' attribute.
+ *
+ *
+ * @see #getServiceName()
+ * @generated
+ * @ordered
+ */
+ protected String serviceName = SERVICE_NAME_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamPublisherInternalImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_PUBLISHER_INTERNAL;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLocalName() {
+ return localName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setLocalName(String newLocalName) {
+ String oldLocalName = localName;
+ localName = newLocalName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME, oldLocalName, localName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getServiceName() {
+ return serviceName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setServiceName(String newServiceName) {
+ String oldServiceName = serviceName;
+ serviceName = newServiceName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME, oldServiceName, serviceName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME:
+ return getLocalName();
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME:
+ return getServiceName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME:
+ setLocalName((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME:
+ setServiceName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME:
+ setLocalName(LOCAL_NAME_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME:
+ setServiceName(SERVICE_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME:
+ return LOCAL_NAME_EDEFAULT == null ? localName != null : !LOCAL_NAME_EDEFAULT.equals(localName);
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME:
+ return SERVICE_NAME_EDEFAULT == null ? serviceName != null : !SERVICE_NAME_EDEFAULT.equals(serviceName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamInternalEndPoint.class) {
+ switch (derivedFeatureID) {
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME: return StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME;
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME: return StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamInternalEndPoint.class) {
+ switch (baseFeatureID) {
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME: return StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__LOCAL_NAME;
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME: return StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL__SERVICE_NAME;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (localName: ");
+ result.append(localName);
+ result.append(", serviceName: ");
+ result.append(serviceName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeStreamPublisherInternalImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberExternalImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberExternalImpl.java
new file mode 100644
index 0000000..130a016
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberExternalImpl.java
@@ -0,0 +1,321 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint;
+import org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberExternal;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Subscriber External'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamSubscriberExternalImpl extends DcaeStreamSubscriberImpl implements DcaeStreamSubscriberExternal {
+ /**
+ * The default value of the '{@link #getUser() User}' attribute.
+ *
+ *
+ * @see #getUser()
+ * @generated
+ * @ordered
+ */
+ protected static final String USER_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getUser() User}' attribute.
+ *
+ *
+ * @see #getUser()
+ * @generated
+ * @ordered
+ */
+ protected String user = USER_EDEFAULT;
+ /**
+ * The default value of the '{@link #getPassword() Password}' attribute.
+ *
+ *
+ * @see #getPassword()
+ * @generated
+ * @ordered
+ */
+ protected static final String PASSWORD_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getPassword() Password}' attribute.
+ *
+ *
+ * @see #getPassword()
+ * @generated
+ * @ordered
+ */
+ protected String password = PASSWORD_EDEFAULT;
+ /**
+ * The default value of the '{@link #getUrl() Url}' attribute.
+ *
+ *
+ * @see #getUrl()
+ * @generated
+ * @ordered
+ */
+ protected static final String URL_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getUrl() Url}' attribute.
+ *
+ *
+ * @see #getUrl()
+ * @generated
+ * @ordered
+ */
+ protected String url = URL_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamSubscriberExternalImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_SUBSCRIBER_EXTERNAL;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getUser() {
+ return user;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setUser(String newUser) {
+ String oldUser = user;
+ user = newUser;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER, oldUser, user));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getPassword() {
+ return password;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setPassword(String newPassword) {
+ String oldPassword = password;
+ password = newPassword;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD, oldPassword, password));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getUrl() {
+ return url;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setUrl(String newUrl) {
+ String oldUrl = url;
+ url = newUrl;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL, oldUrl, url));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER:
+ return getUser();
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD:
+ return getPassword();
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL:
+ return getUrl();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER:
+ setUser((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD:
+ setPassword((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL:
+ setUrl((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER:
+ setUser(USER_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD:
+ setPassword(PASSWORD_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL:
+ setUrl(URL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER:
+ return USER_EDEFAULT == null ? user != null : !USER_EDEFAULT.equals(user);
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD:
+ return PASSWORD_EDEFAULT == null ? password != null : !PASSWORD_EDEFAULT.equals(password);
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL:
+ return URL_EDEFAULT == null ? url != null : !URL_EDEFAULT.equals(url);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamExternalEndPoint.class) {
+ switch (derivedFeatureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER: return StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD: return StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL: return StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamExternalEndPoint.class) {
+ switch (baseFeatureID) {
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__USER: return StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__USER;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD: return StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__PASSWORD;
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT__URL: return StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL__URL;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (user: ");
+ result.append(user);
+ result.append(", password: ");
+ result.append(password);
+ result.append(", url: ");
+ result.append(url);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeStreamSubscriberExternalImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberImpl.java
new file mode 100644
index 0000000..b136cfd
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberImpl.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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriber;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Subscriber'.
+ *
+ *
+ *
+ *
+ * @generated
+ */
+public abstract class DcaeStreamSubscriberImpl extends NamedEntityImpl implements DcaeStreamSubscriber {
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamSubscriberImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_SUBSCRIBER;
+ }
+
+} //DcaeStreamSubscriberImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberInternalImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberInternalImpl.java
new file mode 100644
index 0000000..075fa66
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DcaeStreamSubscriberInternalImpl.java
@@ -0,0 +1,267 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint;
+import org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberInternal;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Stream Subscriber Internal'.
+ *
+ *
+ * The following features are implemented:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberInternalImpl#getLocalName Local Name}
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DcaeStreamSubscriberInternalImpl#getServiceName Service Name}
+ *
+ *
+ *
+ * @generated
+ */
+public class DcaeStreamSubscriberInternalImpl extends DcaeStreamSubscriberImpl implements DcaeStreamSubscriberInternal {
+ /**
+ * The default value of the '{@link #getLocalName() Local Name}' attribute.
+ *
+ *
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected static final String LOCAL_NAME_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getLocalName() Local Name}' attribute.
+ *
+ *
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected String localName = LOCAL_NAME_EDEFAULT;
+ /**
+ * The default value of the '{@link #getServiceName() Service Name}' attribute.
+ *
+ *
+ * @see #getServiceName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SERVICE_NAME_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getServiceName() Service Name}' attribute.
+ *
+ *
+ * @see #getServiceName()
+ * @generated
+ * @ordered
+ */
+ protected String serviceName = SERVICE_NAME_EDEFAULT;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected DcaeStreamSubscriberInternalImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StreamPackage.Literals.DCAE_STREAM_SUBSCRIBER_INTERNAL;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLocalName() {
+ return localName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setLocalName(String newLocalName) {
+ String oldLocalName = localName;
+ localName = newLocalName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME, oldLocalName, localName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getServiceName() {
+ return serviceName;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setServiceName(String newServiceName) {
+ String oldServiceName = serviceName;
+ serviceName = newServiceName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME, oldServiceName, serviceName));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME:
+ return getLocalName();
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME:
+ return getServiceName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME:
+ setLocalName((String)newValue);
+ return;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME:
+ setServiceName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME:
+ setLocalName(LOCAL_NAME_EDEFAULT);
+ return;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME:
+ setServiceName(SERVICE_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME:
+ return LOCAL_NAME_EDEFAULT == null ? localName != null : !LOCAL_NAME_EDEFAULT.equals(localName);
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME:
+ return SERVICE_NAME_EDEFAULT == null ? serviceName != null : !SERVICE_NAME_EDEFAULT.equals(serviceName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamInternalEndPoint.class) {
+ switch (derivedFeatureID) {
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME: return StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME;
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME: return StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class> baseClass) {
+ if (baseClass == DcaeStreamInternalEndPoint.class) {
+ switch (baseFeatureID) {
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME: return StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__LOCAL_NAME;
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME: return StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL__SERVICE_NAME;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (localName: ");
+ result.append(localName);
+ result.append(", serviceName: ");
+ result.append(serviceName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DcaeStreamSubscriberInternalImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DmaapStreamImpl.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DmaapStreamImpl.java
new file mode 100644
index 0000000..a365d18
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/impl/DmaapStreamImpl.java
@@ -0,0 +1,453 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.impl;
+
+import org.openecomp.dcae.controller.core.stream.DmaapStream;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ *
+ * An implementation of the model object 'Dmaap Stream'.
+ *
+ *
+ * The following features are implemented:
+ *
+ *
{@link org.openecomp.dcae.controller.core.stream.impl.DmaapStreamImpl#getDmaapDataType Dmaap Data Type}
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.
+ *
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private StreamPackageImpl() {
+ super(eNS_URI, StreamFactory.eINSTANCE);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the Package for this model, and for any others upon which it depends.
+ *
+ *
This method is used to initialize {@link StreamPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ *
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static StreamPackage init() {
+ if (isInited) return (StreamPackage)EPackage.Registry.INSTANCE.getEPackage(StreamPackage.eNS_URI);
+
+ // Obtain or create and register package
+ StreamPackageImpl theStreamPackage = (StreamPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof StreamPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new StreamPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theStreamPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theStreamPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theStreamPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(StreamPackage.eNS_URI, theStreamPackage);
+ return theStreamPackage;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStream() {
+ return dcaeStreamEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDmaapStream() {
+ return dmaapStreamEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDmaapStream_DmaapDataType() {
+ return (EAttribute)dmaapStreamEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDmaapStream_DmaapAction() {
+ return (EAttribute)dmaapStreamEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDmaapStream_DmaapUrl() {
+ return (EAttribute)dmaapStreamEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDmaapStream_DmaapUserName() {
+ return (EAttribute)dmaapStreamEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDmaapStream_DmaapPassword() {
+ return (EAttribute)dmaapStreamEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDmaapStream_DmaapAuthMethod() {
+ return (EAttribute)dmaapStreamEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamDefinition() {
+ return dcaeStreamDefinitionEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamDefinition_StreamType() {
+ return (EAttribute)dcaeStreamDefinitionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamDefinition_DatabusType() {
+ return (EAttribute)dcaeStreamDefinitionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeStreamDefinition_Publishers() {
+ return (EReference)dcaeStreamDefinitionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDcaeStreamDefinition_Subscribers() {
+ return (EReference)dcaeStreamDefinitionEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamPublisher() {
+ return dcaeStreamPublisherEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamSubscriber() {
+ return dcaeStreamSubscriberEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamPublisherExternal() {
+ return dcaeStreamPublisherExternalEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamPublisherInternal() {
+ return dcaeStreamPublisherInternalEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamSubscriberExternal() {
+ return dcaeStreamSubscriberExternalEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamSubscriberInternal() {
+ return dcaeStreamSubscriberInternalEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamInternalEndPoint() {
+ return dcaeStreamInternalEndPointEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamInternalEndPoint_LocalName() {
+ return (EAttribute)dcaeStreamInternalEndPointEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamInternalEndPoint_ServiceName() {
+ return (EAttribute)dcaeStreamInternalEndPointEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDcaeStreamExternalEndPoint() {
+ return dcaeStreamExternalEndPointEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamExternalEndPoint_User() {
+ return (EAttribute)dcaeStreamExternalEndPointEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamExternalEndPoint_Password() {
+ return (EAttribute)dcaeStreamExternalEndPointEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDcaeStreamExternalEndPoint_Url() {
+ return (EAttribute)dcaeStreamExternalEndPointEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusStream() {
+ return databusStreamEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusStreamTopic() {
+ return databusStreamTopicEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_TopicName() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_TopicDescription() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_DcaeLocationName() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_Owner() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_Txenabled() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_Fqtn() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_LastMod() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_Status() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDatabusStreamTopic_Clients() {
+ return (EReference)databusStreamTopicEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_PublishURL() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_SubscribeURL() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopic_AuthenticationMethod() {
+ return (EAttribute)databusStreamTopicEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusStreamTopicClient() {
+ return databusStreamTopicClientEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_LocalStreamId() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_DcaeLocationName() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_ClientRole() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_Action() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_Username() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_Userpwd() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_Fqtn() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_MrClientId() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamTopicClient_TopicURL() {
+ return (EAttribute)databusStreamTopicClientEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusStreamFeed() {
+ return databusStreamFeedEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_FeedName() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_FeedVersion() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_FeedDescription() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_AsprClassification() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_Owner() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_FeedId() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_LogURL() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_PublishURL() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_SubscribeURL() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_Status() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeed_Suspended() {
+ return (EAttribute)databusStreamFeedEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDatabusStreamFeed_Publishers() {
+ return (EReference)databusStreamFeedEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EReference getDatabusStreamFeed_Subscribers() {
+ return (EReference)databusStreamFeedEClass.getEStructuralFeatures().get(12);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusStreamFeedPublisher() {
+ return databusStreamFeedPublisherEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_LocalStreamId() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_DcaeLocationName() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_FeedId() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_PubId() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_Status() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_Username() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedPublisher_Userpwd() {
+ return (EAttribute)databusStreamFeedPublisherEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusStreamFeedSubscriber() {
+ return databusStreamFeedSubscriberEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_LocalStreamId() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_DcaeLocationName() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_OtherFeedName() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_FeedId() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_LogURL() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_Owner() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_SubId() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_Suspended() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_Use100() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_Username() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_Userpwd() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusStreamFeedSubscriber_DeliveryURL() {
+ return (EAttribute)databusStreamFeedSubscriberEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusEntity() {
+ return databusEntityEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusEntity_Status() {
+ return (EAttribute)databusEntityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusEntity_LastModified() {
+ return (EAttribute)databusEntityEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusEntity_Type() {
+ return (EAttribute)databusEntityEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusLocation() {
+ return databusLocationEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusLocation_DcaeLayer() {
+ return (EAttribute)databusLocationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusMessageRouterCluster() {
+ return databusMessageRouterClusterEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusMessageRouterCluster_DcaeLocationName() {
+ return (EAttribute)databusMessageRouterClusterEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusMessageRouterCluster_ServiceFqdn() {
+ return (EAttribute)databusMessageRouterClusterEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusMessageRouterCluster_HostFqdn() {
+ return (EAttribute)databusMessageRouterClusterEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusMessageRouterCluster_TopicPort() {
+ return (EAttribute)databusMessageRouterClusterEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusMessageRouterCluster_TopicProtocol() {
+ return (EAttribute)databusMessageRouterClusterEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EClass getDatabusDataRouterNode() {
+ return databusDataRouterNodeEClass;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusDataRouterNode_DcaeLocationName() {
+ return (EAttribute)databusDataRouterNodeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusDataRouterNode_HostFqdn() {
+ return (EAttribute)databusDataRouterNodeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getDatabusDataRouterNode_Version() {
+ return (EAttribute)databusDataRouterNodeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EEnum getDatabusStreamTopicAction() {
+ return databusStreamTopicActionEEnum;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EEnum getStreamAuthentication() {
+ return streamAuthenticationEEnum;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public StreamFactory getStreamFactory() {
+ return (StreamFactory)getEFactoryInstance();
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dcaeStreamEClass = createEClass(DCAE_STREAM);
+
+ dmaapStreamEClass = createEClass(DMAAP_STREAM);
+ createEAttribute(dmaapStreamEClass, DMAAP_STREAM__DMAAP_DATA_TYPE);
+ createEAttribute(dmaapStreamEClass, DMAAP_STREAM__DMAAP_ACTION);
+ createEAttribute(dmaapStreamEClass, DMAAP_STREAM__DMAAP_URL);
+ createEAttribute(dmaapStreamEClass, DMAAP_STREAM__DMAAP_USER_NAME);
+ createEAttribute(dmaapStreamEClass, DMAAP_STREAM__DMAAP_PASSWORD);
+ createEAttribute(dmaapStreamEClass, DMAAP_STREAM__DMAAP_AUTH_METHOD);
+
+ dcaeStreamDefinitionEClass = createEClass(DCAE_STREAM_DEFINITION);
+ createEAttribute(dcaeStreamDefinitionEClass, DCAE_STREAM_DEFINITION__STREAM_TYPE);
+ createEAttribute(dcaeStreamDefinitionEClass, DCAE_STREAM_DEFINITION__DATABUS_TYPE);
+ createEReference(dcaeStreamDefinitionEClass, DCAE_STREAM_DEFINITION__PUBLISHERS);
+ createEReference(dcaeStreamDefinitionEClass, DCAE_STREAM_DEFINITION__SUBSCRIBERS);
+
+ dcaeStreamPublisherEClass = createEClass(DCAE_STREAM_PUBLISHER);
+
+ dcaeStreamSubscriberEClass = createEClass(DCAE_STREAM_SUBSCRIBER);
+
+ dcaeStreamPublisherExternalEClass = createEClass(DCAE_STREAM_PUBLISHER_EXTERNAL);
+
+ dcaeStreamPublisherInternalEClass = createEClass(DCAE_STREAM_PUBLISHER_INTERNAL);
+
+ dcaeStreamSubscriberExternalEClass = createEClass(DCAE_STREAM_SUBSCRIBER_EXTERNAL);
+
+ dcaeStreamSubscriberInternalEClass = createEClass(DCAE_STREAM_SUBSCRIBER_INTERNAL);
+
+ dcaeStreamInternalEndPointEClass = createEClass(DCAE_STREAM_INTERNAL_END_POINT);
+ createEAttribute(dcaeStreamInternalEndPointEClass, DCAE_STREAM_INTERNAL_END_POINT__LOCAL_NAME);
+ createEAttribute(dcaeStreamInternalEndPointEClass, DCAE_STREAM_INTERNAL_END_POINT__SERVICE_NAME);
+
+ dcaeStreamExternalEndPointEClass = createEClass(DCAE_STREAM_EXTERNAL_END_POINT);
+ createEAttribute(dcaeStreamExternalEndPointEClass, DCAE_STREAM_EXTERNAL_END_POINT__USER);
+ createEAttribute(dcaeStreamExternalEndPointEClass, DCAE_STREAM_EXTERNAL_END_POINT__PASSWORD);
+ createEAttribute(dcaeStreamExternalEndPointEClass, DCAE_STREAM_EXTERNAL_END_POINT__URL);
+
+ databusStreamEClass = createEClass(DATABUS_STREAM);
+
+ databusStreamTopicEClass = createEClass(DATABUS_STREAM_TOPIC);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__TOPIC_NAME);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__TOPIC_DESCRIPTION);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__DCAE_LOCATION_NAME);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__OWNER);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__TXENABLED);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__FQTN);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__LAST_MOD);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__STATUS);
+ createEReference(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__CLIENTS);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__PUBLISH_URL);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__SUBSCRIBE_URL);
+ createEAttribute(databusStreamTopicEClass, DATABUS_STREAM_TOPIC__AUTHENTICATION_METHOD);
+
+ databusStreamTopicClientEClass = createEClass(DATABUS_STREAM_TOPIC_CLIENT);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__LOCAL_STREAM_ID);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__DCAE_LOCATION_NAME);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__CLIENT_ROLE);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__ACTION);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__USERNAME);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__USERPWD);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__FQTN);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__MR_CLIENT_ID);
+ createEAttribute(databusStreamTopicClientEClass, DATABUS_STREAM_TOPIC_CLIENT__TOPIC_URL);
+
+ databusStreamFeedEClass = createEClass(DATABUS_STREAM_FEED);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__FEED_NAME);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__FEED_VERSION);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__FEED_DESCRIPTION);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__ASPR_CLASSIFICATION);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__OWNER);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__FEED_ID);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__LOG_URL);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__PUBLISH_URL);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__SUBSCRIBE_URL);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__STATUS);
+ createEAttribute(databusStreamFeedEClass, DATABUS_STREAM_FEED__SUSPENDED);
+ createEReference(databusStreamFeedEClass, DATABUS_STREAM_FEED__PUBLISHERS);
+ createEReference(databusStreamFeedEClass, DATABUS_STREAM_FEED__SUBSCRIBERS);
+
+ databusStreamFeedPublisherEClass = createEClass(DATABUS_STREAM_FEED_PUBLISHER);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__LOCAL_STREAM_ID);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__DCAE_LOCATION_NAME);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__FEED_ID);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__PUB_ID);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__STATUS);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__USERNAME);
+ createEAttribute(databusStreamFeedPublisherEClass, DATABUS_STREAM_FEED_PUBLISHER__USERPWD);
+
+ databusStreamFeedSubscriberEClass = createEClass(DATABUS_STREAM_FEED_SUBSCRIBER);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__LOCAL_STREAM_ID);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__DCAE_LOCATION_NAME);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__OTHER_FEED_NAME);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__FEED_ID);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__LOG_URL);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__OWNER);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__SUB_ID);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__SUSPENDED);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__USE100);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__USERNAME);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__USERPWD);
+ createEAttribute(databusStreamFeedSubscriberEClass, DATABUS_STREAM_FEED_SUBSCRIBER__DELIVERY_URL);
+
+ databusEntityEClass = createEClass(DATABUS_ENTITY);
+ createEAttribute(databusEntityEClass, DATABUS_ENTITY__STATUS);
+ createEAttribute(databusEntityEClass, DATABUS_ENTITY__LAST_MODIFIED);
+ createEAttribute(databusEntityEClass, DATABUS_ENTITY__TYPE);
+
+ databusLocationEClass = createEClass(DATABUS_LOCATION);
+ createEAttribute(databusLocationEClass, DATABUS_LOCATION__DCAE_LAYER);
+
+ databusMessageRouterClusterEClass = createEClass(DATABUS_MESSAGE_ROUTER_CLUSTER);
+ createEAttribute(databusMessageRouterClusterEClass, DATABUS_MESSAGE_ROUTER_CLUSTER__DCAE_LOCATION_NAME);
+ createEAttribute(databusMessageRouterClusterEClass, DATABUS_MESSAGE_ROUTER_CLUSTER__SERVICE_FQDN);
+ createEAttribute(databusMessageRouterClusterEClass, DATABUS_MESSAGE_ROUTER_CLUSTER__HOST_FQDN);
+ createEAttribute(databusMessageRouterClusterEClass, DATABUS_MESSAGE_ROUTER_CLUSTER__TOPIC_PORT);
+ createEAttribute(databusMessageRouterClusterEClass, DATABUS_MESSAGE_ROUTER_CLUSTER__TOPIC_PROTOCOL);
+
+ databusDataRouterNodeEClass = createEClass(DATABUS_DATA_ROUTER_NODE);
+ createEAttribute(databusDataRouterNodeEClass, DATABUS_DATA_ROUTER_NODE__DCAE_LOCATION_NAME);
+ createEAttribute(databusDataRouterNodeEClass, DATABUS_DATA_ROUTER_NODE__HOST_FQDN);
+ createEAttribute(databusDataRouterNodeEClass, DATABUS_DATA_ROUTER_NODE__VERSION);
+
+ // Create enums
+ databusStreamTopicActionEEnum = createEEnum(DATABUS_STREAM_TOPIC_ACTION);
+ streamAuthenticationEEnum = createEEnum(STREAM_AUTHENTICATION);
+ }
+
+ /**
+ *
+ *
+ * @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.
+ *
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CorePackage theCorePackage = (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ dcaeStreamEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dmaapStreamEClass.getESuperTypes().add(this.getDcaeStream());
+ dcaeStreamDefinitionEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeStreamPublisherEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeStreamSubscriberEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ dcaeStreamPublisherExternalEClass.getESuperTypes().add(this.getDcaeStreamPublisher());
+ dcaeStreamPublisherExternalEClass.getESuperTypes().add(this.getDcaeStreamExternalEndPoint());
+ dcaeStreamPublisherInternalEClass.getESuperTypes().add(this.getDcaeStreamPublisher());
+ dcaeStreamPublisherInternalEClass.getESuperTypes().add(this.getDcaeStreamInternalEndPoint());
+ dcaeStreamSubscriberExternalEClass.getESuperTypes().add(this.getDcaeStreamSubscriber());
+ dcaeStreamSubscriberExternalEClass.getESuperTypes().add(this.getDcaeStreamExternalEndPoint());
+ dcaeStreamSubscriberInternalEClass.getESuperTypes().add(this.getDcaeStreamSubscriber());
+ dcaeStreamSubscriberInternalEClass.getESuperTypes().add(this.getDcaeStreamInternalEndPoint());
+ databusStreamEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ databusStreamTopicEClass.getESuperTypes().add(this.getDatabusStream());
+ databusStreamTopicClientEClass.getESuperTypes().add(this.getDatabusStream());
+ databusStreamFeedEClass.getESuperTypes().add(this.getDatabusStream());
+ databusStreamFeedPublisherEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ databusStreamFeedSubscriberEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ databusEntityEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ databusLocationEClass.getESuperTypes().add(this.getDatabusEntity());
+ databusMessageRouterClusterEClass.getESuperTypes().add(this.getDatabusEntity());
+ databusDataRouterNodeEClass.getESuperTypes().add(this.getDatabusEntity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dcaeStreamEClass, DcaeStream.class, "DcaeStream", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dmaapStreamEClass, DmaapStream.class, "DmaapStream", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDmaapStream_DmaapDataType(), theEcorePackage.getEString(), "dmaapDataType", null, 0, 1, DmaapStream.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDmaapStream_DmaapAction(), theEcorePackage.getEString(), "dmaapAction", null, 0, 1, DmaapStream.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDmaapStream_DmaapUrl(), theEcorePackage.getEString(), "dmaapUrl", null, 0, 1, DmaapStream.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDmaapStream_DmaapUserName(), theEcorePackage.getEString(), "dmaapUserName", null, 0, 1, DmaapStream.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDmaapStream_DmaapPassword(), theEcorePackage.getEString(), "dmaapPassword", null, 0, 1, DmaapStream.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDmaapStream_DmaapAuthMethod(), theEcorePackage.getEString(), "dmaapAuthMethod", null, 0, 1, DmaapStream.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeStreamDefinitionEClass, DcaeStreamDefinition.class, "DcaeStreamDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeStreamDefinition_StreamType(), theEcorePackage.getEString(), "streamType", null, 0, 1, DcaeStreamDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeStreamDefinition_DatabusType(), theEcorePackage.getEString(), "databusType", null, 0, 1, DcaeStreamDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeStreamDefinition_Publishers(), this.getDcaeStreamPublisher(), null, "publishers", null, 0, -1, DcaeStreamDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDcaeStreamDefinition_Subscribers(), this.getDcaeStreamSubscriber(), null, "subscribers", null, 0, -1, DcaeStreamDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeStreamPublisherEClass, DcaeStreamPublisher.class, "DcaeStreamPublisher", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dcaeStreamSubscriberEClass, DcaeStreamSubscriber.class, "DcaeStreamSubscriber", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dcaeStreamPublisherExternalEClass, DcaeStreamPublisherExternal.class, "DcaeStreamPublisherExternal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dcaeStreamPublisherInternalEClass, DcaeStreamPublisherInternal.class, "DcaeStreamPublisherInternal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dcaeStreamSubscriberExternalEClass, DcaeStreamSubscriberExternal.class, "DcaeStreamSubscriberExternal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dcaeStreamSubscriberInternalEClass, DcaeStreamSubscriberInternal.class, "DcaeStreamSubscriberInternal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dcaeStreamInternalEndPointEClass, DcaeStreamInternalEndPoint.class, "DcaeStreamInternalEndPoint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeStreamInternalEndPoint_LocalName(), theEcorePackage.getEString(), "localName", null, 0, 1, DcaeStreamInternalEndPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeStreamInternalEndPoint_ServiceName(), theEcorePackage.getEString(), "serviceName", null, 0, 1, DcaeStreamInternalEndPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dcaeStreamExternalEndPointEClass, DcaeStreamExternalEndPoint.class, "DcaeStreamExternalEndPoint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDcaeStreamExternalEndPoint_User(), theEcorePackage.getEString(), "user", null, 0, 1, DcaeStreamExternalEndPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeStreamExternalEndPoint_Password(), theEcorePackage.getEString(), "password", null, 0, 1, DcaeStreamExternalEndPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDcaeStreamExternalEndPoint_Url(), theEcorePackage.getEString(), "url", null, 0, 1, DcaeStreamExternalEndPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusStreamEClass, DatabusStream.class, "DatabusStream", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(databusStreamTopicEClass, DatabusStreamTopic.class, "DatabusStreamTopic", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusStreamTopic_TopicName(), theEcorePackage.getEString(), "topicName", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_TopicDescription(), theEcorePackage.getEString(), "topicDescription", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_DcaeLocationName(), theEcorePackage.getEString(), "dcaeLocationName", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_Owner(), theEcorePackage.getEString(), "owner", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_Txenabled(), theEcorePackage.getEBoolean(), "txenabled", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_Fqtn(), theEcorePackage.getEString(), "fqtn", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_LastMod(), theEcorePackage.getEDate(), "lastMod", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_Status(), theEcorePackage.getEString(), "status", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDatabusStreamTopic_Clients(), this.getDatabusStreamTopicClient(), null, "clients", null, 0, -1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_PublishURL(), theEcorePackage.getEString(), "publishURL", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_SubscribeURL(), theEcorePackage.getEString(), "subscribeURL", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopic_AuthenticationMethod(), this.getStreamAuthentication(), "authenticationMethod", null, 0, 1, DatabusStreamTopic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusStreamTopicClientEClass, DatabusStreamTopicClient.class, "DatabusStreamTopicClient", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusStreamTopicClient_LocalStreamId(), theEcorePackage.getEString(), "localStreamId", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_DcaeLocationName(), theEcorePackage.getEString(), "dcaeLocationName", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_ClientRole(), theEcorePackage.getEString(), "clientRole", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_Action(), this.getDatabusStreamTopicAction(), "action", null, 0, -1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_Username(), theEcorePackage.getEString(), "username", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_Userpwd(), theEcorePackage.getEString(), "userpwd", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_Fqtn(), theEcorePackage.getEString(), "fqtn", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_MrClientId(), theEcorePackage.getEString(), "mrClientId", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamTopicClient_TopicURL(), theEcorePackage.getEString(), "topicURL", null, 0, 1, DatabusStreamTopicClient.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusStreamFeedEClass, DatabusStreamFeed.class, "DatabusStreamFeed", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusStreamFeed_FeedName(), theEcorePackage.getEString(), "feedName", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_FeedVersion(), theEcorePackage.getEString(), "feedVersion", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_FeedDescription(), theEcorePackage.getEString(), "feedDescription", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_AsprClassification(), theEcorePackage.getEString(), "asprClassification", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_Owner(), theEcorePackage.getEString(), "owner", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_FeedId(), theEcorePackage.getEString(), "feedId", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_LogURL(), theEcorePackage.getEString(), "logURL", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_PublishURL(), theEcorePackage.getEString(), "publishURL", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_SubscribeURL(), theEcorePackage.getEString(), "subscribeURL", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_Status(), theEcorePackage.getEString(), "status", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeed_Suspended(), theEcorePackage.getEString(), "suspended", null, 0, 1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDatabusStreamFeed_Publishers(), this.getDatabusStreamFeedPublisher(), null, "publishers", null, 0, -1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDatabusStreamFeed_Subscribers(), this.getDatabusStreamFeedSubscriber(), null, "subscribers", null, 0, -1, DatabusStreamFeed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusStreamFeedPublisherEClass, DatabusStreamFeedPublisher.class, "DatabusStreamFeedPublisher", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusStreamFeedPublisher_LocalStreamId(), theEcorePackage.getEString(), "localStreamId", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedPublisher_DcaeLocationName(), theEcorePackage.getEString(), "dcaeLocationName", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedPublisher_FeedId(), theEcorePackage.getEString(), "feedId", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedPublisher_PubId(), theEcorePackage.getEString(), "pubId", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedPublisher_Status(), theEcorePackage.getEString(), "status", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedPublisher_Username(), theEcorePackage.getEString(), "username", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedPublisher_Userpwd(), theEcorePackage.getEString(), "userpwd", null, 0, 1, DatabusStreamFeedPublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusStreamFeedSubscriberEClass, DatabusStreamFeedSubscriber.class, "DatabusStreamFeedSubscriber", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusStreamFeedSubscriber_LocalStreamId(), theEcorePackage.getEString(), "localStreamId", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_DcaeLocationName(), theEcorePackage.getEString(), "dcaeLocationName", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_OtherFeedName(), theEcorePackage.getEString(), "otherFeedName", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_FeedId(), theEcorePackage.getEString(), "feedId", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_LogURL(), theEcorePackage.getEString(), "logURL", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_Owner(), theEcorePackage.getEString(), "owner", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_SubId(), theEcorePackage.getEString(), "subId", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_Suspended(), theEcorePackage.getEBoolean(), "suspended", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_Use100(), theEcorePackage.getEBoolean(), "use100", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_Username(), theEcorePackage.getEString(), "username", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_Userpwd(), theEcorePackage.getEString(), "userpwd", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusStreamFeedSubscriber_DeliveryURL(), theEcorePackage.getEString(), "deliveryURL", null, 0, 1, DatabusStreamFeedSubscriber.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusEntityEClass, DatabusEntity.class, "DatabusEntity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusEntity_Status(), theEcorePackage.getEString(), "status", null, 0, 1, DatabusEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusEntity_LastModified(), theEcorePackage.getEDate(), "lastModified", null, 0, 1, DatabusEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusEntity_Type(), theEcorePackage.getEString(), "type", null, 0, 1, DatabusEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusLocationEClass, DatabusLocation.class, "DatabusLocation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusLocation_DcaeLayer(), theEcorePackage.getEString(), "dcaeLayer", null, 0, 1, DatabusLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusMessageRouterClusterEClass, DatabusMessageRouterCluster.class, "DatabusMessageRouterCluster", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusMessageRouterCluster_DcaeLocationName(), theEcorePackage.getEString(), "dcaeLocationName", null, 0, 1, DatabusMessageRouterCluster.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusMessageRouterCluster_ServiceFqdn(), theEcorePackage.getEString(), "serviceFqdn", null, 0, 1, DatabusMessageRouterCluster.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusMessageRouterCluster_HostFqdn(), theEcorePackage.getEString(), "hostFqdn", null, 0, -1, DatabusMessageRouterCluster.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusMessageRouterCluster_TopicPort(), theEcorePackage.getEString(), "topicPort", null, 0, 1, DatabusMessageRouterCluster.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusMessageRouterCluster_TopicProtocol(), theEcorePackage.getEString(), "topicProtocol", null, 0, 1, DatabusMessageRouterCluster.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(databusDataRouterNodeEClass, DatabusDataRouterNode.class, "DatabusDataRouterNode", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDatabusDataRouterNode_DcaeLocationName(), theEcorePackage.getEString(), "dcaeLocationName", null, 0, 1, DatabusDataRouterNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusDataRouterNode_HostFqdn(), theEcorePackage.getEString(), "hostFqdn", null, 0, 1, DatabusDataRouterNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDatabusDataRouterNode_Version(), theEcorePackage.getEString(), "version", null, 0, 1, DatabusDataRouterNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(databusStreamTopicActionEEnum, DatabusStreamTopicAction.class, "DatabusStreamTopicAction");
+ addEEnumLiteral(databusStreamTopicActionEEnum, DatabusStreamTopicAction.PUB);
+ addEEnumLiteral(databusStreamTopicActionEEnum, DatabusStreamTopicAction.SUB);
+ addEEnumLiteral(databusStreamTopicActionEEnum, DatabusStreamTopicAction.VIEW);
+
+ initEEnum(streamAuthenticationEEnum, StreamAuthentication.class, "StreamAuthentication");
+ addEEnumLiteral(streamAuthenticationEEnum, StreamAuthentication.AAF);
+ addEEnumLiteral(streamAuthenticationEEnum, StreamAuthentication.NONE);
+ addEEnumLiteral(streamAuthenticationEEnum, StreamAuthentication.PASSWORD);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //StreamPackageImpl
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/util/StreamAdapterFactory.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/util/StreamAdapterFactory.java
new file mode 100644
index 0000000..118e807
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/util/StreamAdapterFactory.java
@@ -0,0 +1,521 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.util;
+
+import org.openecomp.dcae.controller.core.stream.*;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+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;
+
+/**
+ *
+ * The Adapter Factory for the model.
+ * It provides an adapter createXXX method for each class of the model.
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage
+ * @generated
+ */
+public class StreamAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ *
+ *
+ * @generated
+ */
+ protected static StreamPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ *
+ *
+ * @generated
+ */
+ public StreamAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = StreamPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ *
+ * This implementation returns true if the object is either the model's package or is an instance object of the model.
+ *
+ * @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 createXXX methods.
+ *
+ *
+ * @generated
+ */
+ protected StreamSwitch modelSwitch =
+ new StreamSwitch() {
+ @Override
+ public Adapter caseDcaeStream(DcaeStream object) {
+ return createDcaeStreamAdapter();
+ }
+ @Override
+ public Adapter caseDmaapStream(DmaapStream object) {
+ return createDmaapStreamAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamDefinition(DcaeStreamDefinition object) {
+ return createDcaeStreamDefinitionAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamPublisher(DcaeStreamPublisher object) {
+ return createDcaeStreamPublisherAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamSubscriber(DcaeStreamSubscriber object) {
+ return createDcaeStreamSubscriberAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamPublisherExternal(DcaeStreamPublisherExternal object) {
+ return createDcaeStreamPublisherExternalAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamPublisherInternal(DcaeStreamPublisherInternal object) {
+ return createDcaeStreamPublisherInternalAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamSubscriberExternal(DcaeStreamSubscriberExternal object) {
+ return createDcaeStreamSubscriberExternalAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamSubscriberInternal(DcaeStreamSubscriberInternal object) {
+ return createDcaeStreamSubscriberInternalAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamInternalEndPoint(DcaeStreamInternalEndPoint object) {
+ return createDcaeStreamInternalEndPointAdapter();
+ }
+ @Override
+ public Adapter caseDcaeStreamExternalEndPoint(DcaeStreamExternalEndPoint object) {
+ return createDcaeStreamExternalEndPointAdapter();
+ }
+ @Override
+ public Adapter caseDatabusStream(DatabusStream object) {
+ return createDatabusStreamAdapter();
+ }
+ @Override
+ public Adapter caseDatabusStreamTopic(DatabusStreamTopic object) {
+ return createDatabusStreamTopicAdapter();
+ }
+ @Override
+ public Adapter caseDatabusStreamTopicClient(DatabusStreamTopicClient object) {
+ return createDatabusStreamTopicClientAdapter();
+ }
+ @Override
+ public Adapter caseDatabusStreamFeed(DatabusStreamFeed object) {
+ return createDatabusStreamFeedAdapter();
+ }
+ @Override
+ public Adapter caseDatabusStreamFeedPublisher(DatabusStreamFeedPublisher object) {
+ return createDatabusStreamFeedPublisherAdapter();
+ }
+ @Override
+ public Adapter caseDatabusStreamFeedSubscriber(DatabusStreamFeedSubscriber object) {
+ return createDatabusStreamFeedSubscriberAdapter();
+ }
+ @Override
+ public Adapter caseDatabusEntity(DatabusEntity object) {
+ return createDatabusEntityAdapter();
+ }
+ @Override
+ public Adapter caseDatabusLocation(DatabusLocation object) {
+ return createDatabusLocationAdapter();
+ }
+ @Override
+ public Adapter caseDatabusMessageRouterCluster(DatabusMessageRouterCluster object) {
+ return createDatabusMessageRouterClusterAdapter();
+ }
+ @Override
+ public Adapter caseDatabusDataRouterNode(DatabusDataRouterNode object) {
+ return createDatabusDataRouterNodeAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the target.
+ *
+ *
+ * @param target the object to adapt.
+ * @return the adapter for the target.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStream Dcae Stream}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStream
+ * @generated
+ */
+ public Adapter createDcaeStreamAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DmaapStream Dmaap Stream}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DmaapStream
+ * @generated
+ */
+ public Adapter createDmaapStreamAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition Dcae Stream Definition}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamDefinition
+ * @generated
+ */
+ public Adapter createDcaeStreamDefinitionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisher Dcae Stream Publisher}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamPublisher
+ * @generated
+ */
+ public Adapter createDcaeStreamPublisherAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriber Dcae Stream Subscriber}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriber
+ * @generated
+ */
+ public Adapter createDcaeStreamSubscriberAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherExternal Dcae Stream Publisher External}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherExternal
+ * @generated
+ */
+ public Adapter createDcaeStreamPublisherExternalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherInternal Dcae Stream Publisher Internal}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamPublisherInternal
+ * @generated
+ */
+ public Adapter createDcaeStreamPublisherInternalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberExternal Dcae Stream Subscriber External}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberExternal
+ * @generated
+ */
+ public Adapter createDcaeStreamSubscriberExternalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberInternal Dcae Stream Subscriber Internal}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamSubscriberInternal
+ * @generated
+ */
+ public Adapter createDcaeStreamSubscriberInternalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint Dcae Stream Internal End Point}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamInternalEndPoint
+ * @generated
+ */
+ public Adapter createDcaeStreamInternalEndPointAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint Dcae Stream External End Point}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DcaeStreamExternalEndPoint
+ * @generated
+ */
+ public Adapter createDcaeStreamExternalEndPointAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusStream Databus Stream}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStream
+ * @generated
+ */
+ public Adapter createDatabusStreamAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopic Databus Stream Topic}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopic
+ * @generated
+ */
+ public Adapter createDatabusStreamTopicAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient Databus Stream Topic Client}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamTopicClient
+ * @generated
+ */
+ public Adapter createDatabusStreamTopicClientAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeed Databus Stream Feed}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeed
+ * @generated
+ */
+ public Adapter createDatabusStreamFeedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher Databus Stream Feed Publisher}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedPublisher
+ * @generated
+ */
+ public Adapter createDatabusStreamFeedPublisherAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber Databus Stream Feed Subscriber}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusStreamFeedSubscriber
+ * @generated
+ */
+ public Adapter createDatabusStreamFeedSubscriberAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusEntity Databus Entity}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusEntity
+ * @generated
+ */
+ public Adapter createDatabusEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusLocation Databus Location}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusLocation
+ * @generated
+ */
+ public Adapter createDatabusLocationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster Databus Message Router Cluster}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster
+ * @generated
+ */
+ public Adapter createDatabusMessageRouterClusterAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode Databus Data Router Node}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode
+ * @generated
+ */
+ public Adapter createDatabusDataRouterNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity Named Entity}'.
+ *
+ * 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.
+ *
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ *
+ * This default implementation returns null.
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //StreamAdapterFactory
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/util/StreamSwitch.java b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/util/StreamSwitch.java
new file mode 100644
index 0000000..4305d88
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore-gen/org/openecomp/dcae/controller/core/stream/util/StreamSwitch.java
@@ -0,0 +1,602 @@
+
+/*-
+ * ============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.dcae.controller.core.stream.util;
+
+import org.openecomp.dcae.controller.core.stream.*;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ *
+ * The Switch for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the caseXXX 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.
+ *
+ * @see org.openecomp.dcae.controller.core.stream.StreamPackage
+ * @generated
+ */
+public class StreamSwitch extends Switch {
+ /**
+ * The cached model package
+ *
+ *
+ * @generated
+ */
+ protected static StreamPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ *
+ *
+ * @generated
+ */
+ public StreamSwitch() {
+ if (modelPackage == null) {
+ modelPackage = StreamPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ *
+ *
+ * @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 caseXXX for each class of the model until one returns a non null result; it yields that result.
+ *
+ *
+ * @return the first non-null result returned by a caseXXX call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case StreamPackage.DCAE_STREAM: {
+ DcaeStream dcaeStream = (DcaeStream)theEObject;
+ T result = caseDcaeStream(dcaeStream);
+ if (result == null) result = caseNamedEntity(dcaeStream);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DMAAP_STREAM: {
+ DmaapStream dmaapStream = (DmaapStream)theEObject;
+ T result = caseDmaapStream(dmaapStream);
+ if (result == null) result = caseDcaeStream(dmaapStream);
+ if (result == null) result = caseNamedEntity(dmaapStream);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_DEFINITION: {
+ DcaeStreamDefinition dcaeStreamDefinition = (DcaeStreamDefinition)theEObject;
+ T result = caseDcaeStreamDefinition(dcaeStreamDefinition);
+ if (result == null) result = caseNamedEntity(dcaeStreamDefinition);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_PUBLISHER: {
+ DcaeStreamPublisher dcaeStreamPublisher = (DcaeStreamPublisher)theEObject;
+ T result = caseDcaeStreamPublisher(dcaeStreamPublisher);
+ if (result == null) result = caseNamedEntity(dcaeStreamPublisher);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER: {
+ DcaeStreamSubscriber dcaeStreamSubscriber = (DcaeStreamSubscriber)theEObject;
+ T result = caseDcaeStreamSubscriber(dcaeStreamSubscriber);
+ if (result == null) result = caseNamedEntity(dcaeStreamSubscriber);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_PUBLISHER_EXTERNAL: {
+ DcaeStreamPublisherExternal dcaeStreamPublisherExternal = (DcaeStreamPublisherExternal)theEObject;
+ T result = caseDcaeStreamPublisherExternal(dcaeStreamPublisherExternal);
+ if (result == null) result = caseDcaeStreamPublisher(dcaeStreamPublisherExternal);
+ if (result == null) result = caseDcaeStreamExternalEndPoint(dcaeStreamPublisherExternal);
+ if (result == null) result = caseNamedEntity(dcaeStreamPublisherExternal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_PUBLISHER_INTERNAL: {
+ DcaeStreamPublisherInternal dcaeStreamPublisherInternal = (DcaeStreamPublisherInternal)theEObject;
+ T result = caseDcaeStreamPublisherInternal(dcaeStreamPublisherInternal);
+ if (result == null) result = caseDcaeStreamPublisher(dcaeStreamPublisherInternal);
+ if (result == null) result = caseDcaeStreamInternalEndPoint(dcaeStreamPublisherInternal);
+ if (result == null) result = caseNamedEntity(dcaeStreamPublisherInternal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_EXTERNAL: {
+ DcaeStreamSubscriberExternal dcaeStreamSubscriberExternal = (DcaeStreamSubscriberExternal)theEObject;
+ T result = caseDcaeStreamSubscriberExternal(dcaeStreamSubscriberExternal);
+ if (result == null) result = caseDcaeStreamSubscriber(dcaeStreamSubscriberExternal);
+ if (result == null) result = caseDcaeStreamExternalEndPoint(dcaeStreamSubscriberExternal);
+ if (result == null) result = caseNamedEntity(dcaeStreamSubscriberExternal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_SUBSCRIBER_INTERNAL: {
+ DcaeStreamSubscriberInternal dcaeStreamSubscriberInternal = (DcaeStreamSubscriberInternal)theEObject;
+ T result = caseDcaeStreamSubscriberInternal(dcaeStreamSubscriberInternal);
+ if (result == null) result = caseDcaeStreamSubscriber(dcaeStreamSubscriberInternal);
+ if (result == null) result = caseDcaeStreamInternalEndPoint(dcaeStreamSubscriberInternal);
+ if (result == null) result = caseNamedEntity(dcaeStreamSubscriberInternal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_INTERNAL_END_POINT: {
+ DcaeStreamInternalEndPoint dcaeStreamInternalEndPoint = (DcaeStreamInternalEndPoint)theEObject;
+ T result = caseDcaeStreamInternalEndPoint(dcaeStreamInternalEndPoint);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DCAE_STREAM_EXTERNAL_END_POINT: {
+ DcaeStreamExternalEndPoint dcaeStreamExternalEndPoint = (DcaeStreamExternalEndPoint)theEObject;
+ T result = caseDcaeStreamExternalEndPoint(dcaeStreamExternalEndPoint);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_STREAM: {
+ DatabusStream databusStream = (DatabusStream)theEObject;
+ T result = caseDatabusStream(databusStream);
+ if (result == null) result = caseNamedEntity(databusStream);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_STREAM_TOPIC: {
+ DatabusStreamTopic databusStreamTopic = (DatabusStreamTopic)theEObject;
+ T result = caseDatabusStreamTopic(databusStreamTopic);
+ if (result == null) result = caseDatabusStream(databusStreamTopic);
+ if (result == null) result = caseNamedEntity(databusStreamTopic);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_STREAM_TOPIC_CLIENT: {
+ DatabusStreamTopicClient databusStreamTopicClient = (DatabusStreamTopicClient)theEObject;
+ T result = caseDatabusStreamTopicClient(databusStreamTopicClient);
+ if (result == null) result = caseDatabusStream(databusStreamTopicClient);
+ if (result == null) result = caseNamedEntity(databusStreamTopicClient);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_STREAM_FEED: {
+ DatabusStreamFeed databusStreamFeed = (DatabusStreamFeed)theEObject;
+ T result = caseDatabusStreamFeed(databusStreamFeed);
+ if (result == null) result = caseDatabusStream(databusStreamFeed);
+ if (result == null) result = caseNamedEntity(databusStreamFeed);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_STREAM_FEED_PUBLISHER: {
+ DatabusStreamFeedPublisher databusStreamFeedPublisher = (DatabusStreamFeedPublisher)theEObject;
+ T result = caseDatabusStreamFeedPublisher(databusStreamFeedPublisher);
+ if (result == null) result = caseNamedEntity(databusStreamFeedPublisher);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_STREAM_FEED_SUBSCRIBER: {
+ DatabusStreamFeedSubscriber databusStreamFeedSubscriber = (DatabusStreamFeedSubscriber)theEObject;
+ T result = caseDatabusStreamFeedSubscriber(databusStreamFeedSubscriber);
+ if (result == null) result = caseNamedEntity(databusStreamFeedSubscriber);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_ENTITY: {
+ DatabusEntity databusEntity = (DatabusEntity)theEObject;
+ T result = caseDatabusEntity(databusEntity);
+ if (result == null) result = caseNamedEntity(databusEntity);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_LOCATION: {
+ DatabusLocation databusLocation = (DatabusLocation)theEObject;
+ T result = caseDatabusLocation(databusLocation);
+ if (result == null) result = caseDatabusEntity(databusLocation);
+ if (result == null) result = caseNamedEntity(databusLocation);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_MESSAGE_ROUTER_CLUSTER: {
+ DatabusMessageRouterCluster databusMessageRouterCluster = (DatabusMessageRouterCluster)theEObject;
+ T result = caseDatabusMessageRouterCluster(databusMessageRouterCluster);
+ if (result == null) result = caseDatabusEntity(databusMessageRouterCluster);
+ if (result == null) result = caseNamedEntity(databusMessageRouterCluster);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StreamPackage.DATABUS_DATA_ROUTER_NODE: {
+ DatabusDataRouterNode databusDataRouterNode = (DatabusDataRouterNode)theEObject;
+ T result = caseDatabusDataRouterNode(databusDataRouterNode);
+ if (result == null) result = caseDatabusEntity(databusDataRouterNode);
+ if (result == null) result = caseNamedEntity(databusDataRouterNode);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStream(DcaeStream object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dmaap Stream'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dmaap Stream'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDmaapStream(DmaapStream object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Definition'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Definition'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamDefinition(DcaeStreamDefinition object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Publisher'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Publisher'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamPublisher(DcaeStreamPublisher object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Subscriber'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Subscriber'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamSubscriber(DcaeStreamSubscriber object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Publisher External'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Publisher External'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamPublisherExternal(DcaeStreamPublisherExternal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Publisher Internal'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Publisher Internal'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamPublisherInternal(DcaeStreamPublisherInternal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Subscriber External'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Subscriber External'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamSubscriberExternal(DcaeStreamSubscriberExternal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Subscriber Internal'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Subscriber Internal'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamSubscriberInternal(DcaeStreamSubscriberInternal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream Internal End Point'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream Internal End Point'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamInternalEndPoint(DcaeStreamInternalEndPoint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Dcae Stream External End Point'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Dcae Stream External End Point'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaeStreamExternalEndPoint(DcaeStreamExternalEndPoint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Stream'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Stream'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusStream(DatabusStream object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Stream Topic'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Stream Topic'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusStreamTopic(DatabusStreamTopic object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Stream Topic Client'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Stream Topic Client'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusStreamTopicClient(DatabusStreamTopicClient object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Stream Feed'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Stream Feed'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusStreamFeed(DatabusStreamFeed object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Stream Feed Publisher'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Stream Feed Publisher'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusStreamFeedPublisher(DatabusStreamFeedPublisher object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Stream Feed Subscriber'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Stream Feed Subscriber'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusStreamFeedSubscriber(DatabusStreamFeedSubscriber object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Entity'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Entity'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusEntity(DatabusEntity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Location'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Location'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusLocation(DatabusLocation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Message Router Cluster'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Message Router Cluster'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusMessageRouterCluster(DatabusMessageRouterCluster object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Databus Data Router Node'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Databus Data Router Node'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDatabusDataRouterNode(DatabusDataRouterNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of 'Named Entity'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'Named Entity'.
+ * @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 'EObject'.
+ *
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ *
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of 'EObject'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //StreamSwitch
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore/hypervisor.xcore b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/hypervisor.xcore
new file mode 100644
index 0000000..5d4ad9c
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/hypervisor.xcore
@@ -0,0 +1,30 @@
+
+/*-
+ * ============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============================================
+ */
+
+@GenModel(modelDirectory="/dcae-controller-core-model/src/main/xcore-gen")
+
+package org.openecomp.dcae.controller.core.hypervisor
+
+import org.openecomp.ncomp.core.NamedEntity
+
+class Hypervisor extends NamedEntity {
+
+}
\ No newline at end of file
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore/manager.xcore b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/manager.xcore
new file mode 100644
index 0000000..e6a3246
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/manager.xcore
@@ -0,0 +1,45 @@
+
+/*-
+ * ============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============================================
+ */
+
+@GenModel(modelDirectory="/dcae-controller-core-model/src/main/xcore-gen")
+
+
+package org.openecomp.dcae.controller.core.manager
+
+import org.openecomp.dcae.controller.core.stream.DcaeStream
+import org.openecomp.dcae.controller.core.service.HealthTestResponse
+
+annotation "http://openecomp.org" as ecomp
+
+abstract class DcaeManager {
+ // operational requirements
+ op HealthTestResponse test()
+ op void suspend()
+ op void resume()
+ // internal
+ op String publicKey()
+ // trigger for any configuration push form controller
+ op void configurationChanged()
+ // stream information
+ contains DcaeStream[] inputStreams
+ contains DcaeStream[] outputStreams
+ op void updateStreams(DcaeStream[] inputStreams, DcaeStream[] outputStreams)
+}
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore/server.xcore b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/server.xcore
new file mode 100644
index 0000000..0cfddf5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/server.xcore
@@ -0,0 +1,54 @@
+
+/*-
+ * ============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============================================
+ */
+
+@GenModel(modelDirectory="/dcae-controller-core-model/src/main/xcore-gen")
+
+package org.openecomp.dcae.controller.core.server
+
+import org.openecomp.ncomp.core.HasOperationalState
+import org.openecomp.ncomp.core.logs.LogMessageContainer
+import org.openecomp.ncomp.sirius.manager.agent.collectd.CollectdServer
+import org.openecomp.ncomp.sirius.manager.properties.Module
+import org.openecomp.ncomp.core.DateMetricAttribute
+import org.openecomp.ncomp.core.NamedEntity
+import org.openecomp.ncomp.openstack.core.VirtualMachineType
+import org.openecomp.ncomp.openstack.compute.Server
+import org.openecomp.ncomp.openstack.location.Hypervisor
+
+class DcaeBasicServer extends NamedEntity, HasOperationalState, LogMessageContainer {
+ String privateIp
+ String publicIp
+ contains CollectdServer collectd
+ contains unordered Module[] modules
+ contains unordered DcaeBasicServerNetwork[] networks
+ transient DateMetricAttribute lastUpdate
+ boolean usingMonitoringAgent = "true"
+ refers Server server
+ refers Hypervisor hypervisor
+ refers VirtualMachineType vmType
+ String certificatePassword
+}
+
+class DcaeBasicServerNetwork extends NamedEntity {
+ String ip
+ String dnsName
+}
+
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore/service.xcore b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/service.xcore
new file mode 100644
index 0000000..a837430
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/service.xcore
@@ -0,0 +1,108 @@
+
+/*-
+ * ============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============================================
+ */
+
+@GenModel(modelDirectory="/dcae-controller-core-model/src/main/xcore-gen")
+
+package org.openecomp.dcae.controller.core.service
+
+import org.openecomp.ncomp.core.NamedEntity
+import org.openecomp.ncomp.core.DeploymentStatus
+import org.openecomp.dcae.controller.core.stream.DcaeStream
+import org.openecomp.ncomp.openstack.location.OpenStackProject
+import org.eclipse.emf.ecore.EObject
+import org.openecomp.ncomp.core.JsonObject
+import org.openecomp.ncomp.core.DateMetricAttribute
+
+
+annotation "http://openecomp.org" as ecomp
+annotation "http://openecomp.org/cdap" as cdap
+
+
+abstract class DcaeServiceContainer extends NamedEntity {
+ refers DcaeServiceInstance[] instances opposite serviceContainer
+}
+
+abstract class DcaeService extends NamedEntity {
+ // will contain a list of instances.
+ op void deploy(String instanceName, String containerPath)
+ op void undeploy(String instanceName)
+ op HealthTestResponse test(String instanceName)
+ op void suspend(String instanceName)
+ op void resume(String instanceName)
+ op void pushManagerConfiguration(String instanceName)
+ op void pollManagerConfiguration(String instanceName)
+ op EObject managerConfiguration(String instanceName)
+ op JsonObject managerOperation(String instanceName, String operation, JsonObject parameters)
+ op void updateConfigurationFromPolicy(String instanceName)
+ op void runHealthTests()
+}
+
+abstract class DcaeServiceInstance extends NamedEntity {
+ @ecomp(^type = "operational")
+ refers DcaeServiceContainer serviceContainer opposite instances
+ @ecomp(^type = "operational")
+ DeploymentStatus status
+ @ecomp(^type = "service")
+ contains DcaeStream[] inputStreams
+ @ecomp(^type = "service")
+ contains DcaeStream[] outputStreams
+ transient DateMetricAttribute lastHealthTest
+ HealthTestStatus healthTestStatus
+ String healthTestMessageCode
+}
+
+class DcaeLocation extends DcaeServiceContainer {
+ String locationType
+ refers OpenStackProject openstackProject
+}
+
+class DcaeServiceDescriptor extends NamedEntity {
+ String groupId
+ String artifact
+ String version
+}
+
+enum HealthTestStatus {
+ GREEN, YELLOW, RED
+}
+
+class HealthTestResponse {
+ HealthTestStatus status
+ String messageCode
+}
+
+abstract class DcaePolicyEntity {
+ @cdap( destination = "namespace-prefs::${path}.policyName")
+ String policyName
+ @cdap( destination = "namespace-prefs::${path}.policyDescription")
+ String policyDescription
+ @cdap( destination = "namespace-prefs::${path}.policyConfigName")
+ String policyConfigName
+ @cdap( destination = "namespace-prefs::${path}.policyTemplateVersion")
+ String policyTemplateVersion
+ @cdap( destination = "namespace-prefs::${path}.policyVersion")
+ String policyVersion
+ @cdap( destination = "namespace-prefs::${path}.policyPriority")
+ String policyPriority
+ @cdap( destination = "namespace-prefs::${path}.policyScope")
+ String policyScope
+}
+
diff --git a/dcae-controller-core/dcae-controller-core-model/src/main/xcore/stream.xcore b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/stream.xcore
new file mode 100644
index 0000000..d6b0fcc
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-model/src/main/xcore/stream.xcore
@@ -0,0 +1,177 @@
+
+/*-
+ * ============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============================================
+ */
+
+@GenModel(modelDirectory="/dcae-controller-core-model/src/main/xcore-gen")
+package org.openecomp.dcae.controller.core.stream
+
+import org.openecomp.ncomp.core.NamedEntity
+
+class DcaeStream extends NamedEntity {
+}
+
+class DmaapStream extends DcaeStream {
+ String dmaapDataType
+ String dmaapAction
+ String dmaapUrl
+ String dmaapUserName
+ String dmaapPassword
+ String dmaapAuthMethod
+}
+
+class DcaeStreamDefinition extends NamedEntity {
+ String streamType
+ String databusType
+ contains DcaeStreamPublisher[] publishers
+ contains DcaeStreamSubscriber[] subscribers
+}
+
+abstract class DcaeStreamPublisher extends NamedEntity {
+}
+
+abstract class DcaeStreamSubscriber extends NamedEntity {
+}
+
+class DcaeStreamPublisherExternal extends DcaeStreamPublisher, DcaeStreamExternalEndPoint {
+}
+
+class DcaeStreamPublisherInternal extends DcaeStreamPublisher, DcaeStreamInternalEndPoint {
+}
+
+class DcaeStreamSubscriberExternal extends DcaeStreamSubscriber, DcaeStreamExternalEndPoint {
+}
+
+class DcaeStreamSubscriberInternal extends DcaeStreamSubscriber, DcaeStreamInternalEndPoint {
+}
+
+class DcaeStreamInternalEndPoint {
+ String localName
+ String serviceName
+}
+
+class DcaeStreamExternalEndPoint {
+ String user
+ String password
+ String url
+}
+
+abstract class DatabusStream extends NamedEntity {
+}
+
+class DatabusStreamTopic extends DatabusStream {
+ String topicName
+ String topicDescription
+ String dcaeLocationName
+ String owner
+ boolean txenabled
+ String fqtn
+ Date lastMod
+ String status
+ contains DatabusStreamTopicClient[] clients
+ String publishURL
+ String subscribeURL
+ StreamAuthentication authenticationMethod
+}
+
+class DatabusStreamTopicClient extends DatabusStream {
+ String localStreamId
+ String dcaeLocationName
+ String clientRole
+ DatabusStreamTopicAction[] action
+ String username
+ String userpwd
+ String fqtn
+ String mrClientId
+ String topicURL
+}
+
+enum DatabusStreamTopicAction {
+ PUB as "pub", SUB as "sub", VIEW as "view"
+}
+
+enum StreamAuthentication {
+ AAF as "aaf", NONE as "none", PASSWORD as "password"
+}
+
+
+class DatabusStreamFeed extends DatabusStream {
+ String feedName
+ String feedVersion
+ String feedDescription
+ String asprClassification
+ String owner
+ String feedId
+ String logURL
+ String publishURL
+ String subscribeURL
+ String status
+ String suspended
+ contains DatabusStreamFeedPublisher[] publishers
+ contains DatabusStreamFeedSubscriber[] subscribers
+}
+
+class DatabusStreamFeedPublisher extends NamedEntity {
+ String localStreamId
+ String dcaeLocationName
+ String feedId
+ String pubId
+ String status
+ String username
+ String userpwd
+}
+
+class DatabusStreamFeedSubscriber extends NamedEntity {
+ String localStreamId
+ String dcaeLocationName
+ String otherFeedName
+ String feedId
+ String logURL
+ String owner
+ String subId
+ boolean suspended
+ boolean use100
+ String username
+ String userpwd
+ String deliveryURL
+}
+
+class DatabusEntity extends NamedEntity {
+ String status
+ Date lastModified
+ String ^type
+}
+
+class DatabusLocation extends DatabusEntity {
+ String dcaeLayer
+}
+
+class DatabusMessageRouterCluster extends DatabusEntity {
+ String dcaeLocationName
+ String serviceFqdn
+ String[] hostFqdn
+ String topicPort
+ String topicProtocol
+}
+
+class DatabusDataRouterNode extends DatabusEntity {
+ String dcaeLocationName
+ String hostFqdn
+ String version
+}
\ No newline at end of file
diff --git a/dcae-controller-core/dcae-controller-core-utils/.classpath b/dcae-controller-core/dcae-controller-core-utils/.classpath
new file mode 100644
index 0000000..6d9bfdd
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/.classpath
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/.gitignore b/dcae-controller-core/dcae-controller-core-utils/.gitignore
new file mode 100644
index 0000000..b83d222
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/.gitignore
@@ -0,0 +1 @@
+/target/
diff --git a/dcae-controller-core/dcae-controller-core-utils/.project b/dcae-controller-core/dcae-controller-core-utils/.project
new file mode 100644
index 0000000..62a6ca1
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/.project
@@ -0,0 +1,35 @@
+
+
+ dcae-controller-core-utils
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+
+
+ org.eclipse.jdt.groovy.core.groovyNature
+ org.eclipse.jdt.core.javanature
+ org.eclipse.m2e.core.maven2Nature
+ org.eclipse.pde.PluginNature
+
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.jdt.core.prefs b/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..abec6ca
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.jdt.groovy.core.prefs b/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.jdt.groovy.core.prefs
new file mode 100644
index 0000000..ae98fea
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.jdt.groovy.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+groovy.compiler.level=24
diff --git a/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.m2e.core.prefs b/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/dcae-controller-core/dcae-controller-core-utils/LICENSE.txt b/dcae-controller-core/dcae-controller-core-utils/LICENSE.txt
new file mode 100644
index 0000000..30471b5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/LICENSE.txt
@@ -0,0 +1,22 @@
+
+/*-
+ * ============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============================================
+ */
+
+ECOMP and OpenECOMP are trademarks and service marks of AT&T Intellectual Property.
diff --git a/dcae-controller-core/dcae-controller-core-utils/META-INF/MANIFEST.MF b/dcae-controller-core/dcae-controller-core-utils/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..409cac8
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/META-INF/MANIFEST.MF
@@ -0,0 +1,7 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: dcae-controller-core-utils
+Bundle-SymbolicName: dcae-controller-core-utils
+Bundle-Version: 0.1.0.qualifier
+Export-Package: org.openecomp.dcae.controller.core.utils
+Require-Bundle: ncomp-utils-java
diff --git a/dcae-controller-core/dcae-controller-core-utils/build.properties b/dcae-controller-core/dcae-controller-core-utils/build.properties
new file mode 100644
index 0000000..a1ec8c4
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/build.properties
@@ -0,0 +1,3 @@
+source.. = src/main/java/
+bin.includes = META-INF/,\
+ .
diff --git a/dcae-controller-core/dcae-controller-core-utils/pom.xml b/dcae-controller-core/dcae-controller-core-utils/pom.xml
new file mode 100644
index 0000000..24ddeb9
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/pom.xml
@@ -0,0 +1,126 @@
+
+ 4.0.0
+ org.openecomp.dcae.controller
+ dcae-controller-core-utils
+ 0.1.0-SNAPSHOT
+
+
+
+
+
+ JCenter
+ JCenter Repository
+ http://jcenter.bintray.com
+
+
+
+ Restlet
+ Restlet Repository
+ http://maven.restlet.com
+
+
+
+
+
+
+ com.blackducksoftware.integration
+ hub-maven-plugin
+ 1.4.0
+ false
+
+ ${project.name}
+ ${project.basedir}
+
+
+
+ create-bdio-file
+ package
+
+ createHubOutput
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-site-plugin
+ 3.6
+
+
+ org.apache.maven.wagon
+ wagon-webdav-jackrabbit
+ 2.10
+
+
+
+
+
+ maven-assembly-plugin
+ 2.6
+
+
+ zipfile
+
+ single
+
+ package
+
+ false
+ ${project.artifactId}-${project.version}
+
+ src/assembly/assemble_zip.xml
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 2.8
+
+
+ copy-dependencies
+
+ copy-dependencies
+
+ prepare-package
+
+ false
+ ${project.build.directory}/assembly/lib
+ false
+ true
+ true
+ false
+ false
+ false
+ org.opendaylight,com.brocade.odl,ch.qos.logback,org.bouncycastle
+ runtime
+
+
+
+
+
+
+
+
+
+ org.yaml
+ snakeyaml
+ 1.15
+
+
+ org.openecomp.ncomp.utils
+ ncomp-utils-java
+ ${project.version}
+
+
+
+
+ org.openecomp.ncomp.maven
+ ncomp-maven-base
+ 0.1.0-SNAPSHOT
+ ../../../dcae-org.openecomp.ncomp.maven/ncomp-maven-base
+
+
\ No newline at end of file
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/assembly/assemble_zip.xml b/dcae-controller-core/dcae-controller-core-utils/src/assembly/assemble_zip.xml
new file mode 100644
index 0000000..09531dc
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/assembly/assemble_zip.xml
@@ -0,0 +1,61 @@
+
+
+
+ runtime
+
+ zip
+
+
+
+ false
+
+
+
+ target
+ lib
+
+ dcae-controller-core-utils-${project.version}.jar
+
+
+
+ target/assembly/
+ .
+
+
+
+
+ .
+ lib
+
+ *.jar
+
+
+
+ src/main/server-gen/bin
+ bin
+ 0744
+
+
+
+
+ src/main/server/bin
+ bin
+ 0744
+
+
+
+
+ src/main/server-gen/scripts
+ scripts
+
+
+ src/main/server/scripts
+ scripts
+
+
+
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/java/org/openecomp/dcae/controller/core/utils/DcaeServiceProvider.java b/dcae-controller-core/dcae-controller-core-utils/src/main/java/org/openecomp/dcae/controller/core/utils/DcaeServiceProvider.java
new file mode 100644
index 0000000..dea0892
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/java/org/openecomp/dcae/controller/core/utils/DcaeServiceProvider.java
@@ -0,0 +1,27 @@
+
+/*-
+ * ============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.dcae.controller.core.utils;
+
+
+public class DcaeServiceProvider {
+
+}
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/.gitignore b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/.gitignore
new file mode 100644
index 0000000..db7715e
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/.gitignore
@@ -0,0 +1 @@
+/.*.swp
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/certificate.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/certificate.sh
new file mode 100644
index 0000000..61138af
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/certificate.sh
@@ -0,0 +1,69 @@
+#!/bin/bash
+
+set -x
+set -e
+
+### HACK
+case $(hostname) in
+ *drps??)
+ FILE=/etc/my.cnf
+ if [ -e $FILE ]; then rm $FILE; fi
+ ;;
+esac
+
+mkdir -p /etc/dcae
+sudo chown dcae:dcae /etc/dcae
+
+
+
+export JAVA_HOME=/opt/app/java/jdk/jdk170
+export PATH=$JAVA_HOME/bin:$PATH
+
+DIR=/opt/app/dcae-certificate
+sudo mkdir -p $DIR
+sudo chown attcloud:attcloud $DIR
+cd $DIR
+
+cat /tmp/certificate.pkcs12.b64code | base64 --decode > certificate.pkcs12
+
+cp /tmp/.password .password
+chmod go-rwx /tmp/.password
+chmod go+r /tmp/.password
+chmod o-rwx .password
+
+PW=$(cat .password)
+
+ALIAS=$(hostname)
+
+
+rm -f keystore.jks
+
+keytool -genkey -alias $ALIAS -keystore keystore.jks << EOF > /dev/null
+$PW
+$PW
+
+
+
+
+
+
+yes
+
+EOF
+
+echo $PW | keytool -delete -keystore keystore.jks -alias $ALIAS
+
+( echo $PW ; echo $PW ) | keytool -v -importkeystore -srckeystore certificate.pkcs12 -srcstoretype PKCS12 -destkeystore keystore.jks -deststoretype JKS
+
+echo $PW | keytool -v -list -keystore keystore.jks | tee keystore.list
+
+sudo chown -R dcae:dcae $DIR
+
+##for u in $*; do
+ ##setfacl -m u:$u:rx /opt/app/dcae-certificate
+ ##setfacl -m u:$u:r /opt/app/dcae-certificate/*
+ ##setfacl -m u:$u:r /opt/app/dcae-certificate/.password
+##done
+
+
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/common.funcs b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/common.funcs
new file mode 100644
index 0000000..dc7f280
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/common.funcs
@@ -0,0 +1,35 @@
+#
+# common shell functions
+#
+
+_die() {
+ printf "$(date):FATAL:$1\n"
+ exit 2;
+}
+
+_fail() {
+ _die "$1";
+}
+
+_warn() {
+ printf "$(date):WARN:$1\n";
+}
+
+_print() {
+ printf "$(date):INFO:$1\n";
+}
+
+_info() {
+ _print "$1";
+}
+
+_isRoot() {
+ [ $(whoami) != "root" ] && _fail "This script needs to be run by root";
+}
+
+fail() {
+ rc=$1
+ shift;
+ echo "ERROR: $@"
+ exit $rc
+}
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/convert-to-open-ecomp-all.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/convert-to-open-ecomp-all.sh
new file mode 100644
index 0000000..a0d1443
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/convert-to-open-ecomp-all.sh
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+ROOT=$(dirname $0)
+
+for a in \
+ OPENECOMP-DEMO \
+ OPENECOMP-DEMO-RACKSPACE \
+ dcae-controller-opensource \
+ dcae-controller-platform-* \
+ dcae-controller-service \
+ dcae-controller-service-common-* \
+ dcae-controller-service-cdap* \
+ dcae-controller-service-docker* \
+ dcae-controller-service-standardeventcollector* \
+ dcae-controller-service-vm* \
+ dcae-controller-service-dmaap-drsub* \
+ dcae-controller-service-storage-postgres-model \
+ dcae-controller-core-model \
+ dcae-controller \
+ dcae-controller-feature \
+ dcae-controller-core \
+ dcae-controller-core-utils \
+ dcae-controller-operation-utils \
+ dcae-analytics-cdap-common-model \
+ ncomp-openstack* \
+ ncomp-docker* \
+ ncomp-cdap* \
+ ncomp-maven* \
+ ncomp-core \
+ ncomp-core-model \
+ ncomp-core-types \
+ ncomp-core-tools \
+ ncomp-sirius-manager \
+ ncomp-sirius-manager-agent* \
+ ncomp-sirius-manager-base \
+ ncomp-sirius-manager-console \
+ ncomp-sirius-manager-generator \
+ ncomp-sirius-manager-model \
+ ncomp-sirius-manager-drools \
+ ncomp-sirius-manager-server \
+ ncomp-utils-java \
+ ncomp-utils-java-extra \
+ ncomp-utils-journaling \
+ ncomp-utils \
+ operation-utils
+do
+ for A in $(ls -d1 /home/ncomp/git/*/$a| grep -v git/dcae-); do
+ echo +++++++++ $A +++++++++
+ bash $ROOT/convert-to-open-ecomp.sh $A
+ done
+done
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/dmaap_mr_prep.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/dmaap_mr_prep.sh
new file mode 100644
index 0000000..6bcb1c0
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/dmaap_mr_prep.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+GITREPO=$1
+
+cd /opt/app
+
+git -c http.sslVerify=false clone $GITREPO
+cd dcae-startup-vm-message-router/
+./deploy.sh
+
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/docker_ca_cert.pem b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/docker_ca_cert.pem
new file mode 100644
index 0000000..4a7bd61
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/docker_ca_cert.pem
@@ -0,0 +1,20 @@
+-----BEGIN CERTIFICATE-----
+MIIDTzCCAjegAwIBAgIJAJa7ZtoAXUZyMA0GCSqGSIb3DQEBCwUAMD4xCzAJBgNV
+BAYTAlVTMRwwGgYDVQQKDBNBVCZUIFNlcnZpY2VzLCBJbmMuMREwDwYDVQQDDAhE
+b2NrZXJDQTAeFw0xNjAzMDEyMTUyNDhaFw0yNjAyMjcyMTUyNDhaMD4xCzAJBgNV
+BAYTAlVTMRwwGgYDVQQKDBNBVCZUIFNlcnZpY2VzLCBJbmMuMREwDwYDVQQDDAhE
+b2NrZXJDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN1SWFC79DZS
+raSs/lbsVFp43ScCUjVmcOgIW+LM6pcEkZhHArN0ocOdLtTEL37Zpti52+iPFqC5
+bwHZASQxLvd0znBSjfIp0tyZfsb+OWQKkLgEnA65V/F9WsD4kkHOCFJ/8NNXB1aY
+6BoNJd7CnQ/4dGymGF63cidcqmvwZRfVovOTMG2Musuij/BfGBUzIvReIDmD3mfn
+mVF8BclwOkcqo3MxbwmpkHMUStD+pCC/4BBVnjk6IGmheQdCcZC/ywrjmUso5wlq
+ioSIdDEBLmC15Ngr4u03Z/zqEELW3fKNajXDAIqBjTlU1plhJ5U58QlcxbxtiiB0
+lFSHqr233isCAwEAAaNQME4wHQYDVR0OBBYEFMrZlCn2Z8nBjCFJAJJi+7fvC+Vj
+MB8GA1UdIwQYMBaAFMrZlCn2Z8nBjCFJAJJi+7fvC+VjMAwGA1UdEwQFMAMBAf8w
+DQYJKoZIhvcNAQELBQADggEBAIEEdH5YdWjaavFsF2akNoLpWm+BRkY4C6NajlqI
+Be+mRMDFMi2SM+wfgUgNGC5GpdKHlXdbbNZF0eJJUe2vvSuifRbfMsivmi2mhrNS
+H3d8X/5qtc6insKQlQqxC0YA9TDK1fMWFTudV7iT4BgjsJLOVI2EVMP2iGS6gBkF
+07WgNUyki/LxFTHuPdpNN9ys5l7Kxxi2U/yyP2zWQ81HKbrTKnPRnWmN/RHFXVza
+lnPf35BRcaYwikPgCvE13ewRDy0n1p8DwB4yQNtMqrg8u29pYUd5+HW6OD9+TVOx
+ss6TFcJnDubtLZqCvk0+fWvOad7wW1s0UHpaH7HyVZel2Iw=
+-----END CERTIFICATE-----
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/docker_ca_key.pem b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/docker_ca_key.pem
new file mode 100644
index 0000000..1399338
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/docker_ca_key.pem
@@ -0,0 +1,27 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIEowIBAAKCAQEA3VJYULv0NlKtpKz+VuxUWnjdJwJSNWZw6Ahb4szqlwSRmEcC
+s3Shw50u1MQvftmm2Lnb6I8WoLlvAdkBJDEu93TOcFKN8inS3Jl+xv45ZAqQuASc
+DrlX8X1awPiSQc4IUn/w01cHVpjoGg0l3sKdD/h0bKYYXrdyJ1yqa/BlF9Wi85Mw
+bYy6y6KP8F8YFTMi9F4gOYPeZ+eZUXwFyXA6RyqjczFvCamQcxRK0P6kIL/gEFWe
+OTogaaF5B0JxkL/LCuOZSyjnCWqKhIh0MQEuYLXk2Cvi7Tdn/OoQQtbd8o1qNcMA
+ioGNOVTWmWEnlTnxCVzFvG2KIHSUVIeqvbfeKwIDAQABAoIBAAu4w8Kq4blK0bWK
+EAJsi98qzZO2VMJNRaeUYcF2VuperJNjF2qHv9WLaqKMLXPLdUG/Pj1n7qvehlmT
+s7LGBBXJEvHx/WCZBHj4jDVf24xH3vhQDi/dcyHwILFduOlRTzGHYyreTh4xBQH0
+NlBBAG6LGydx+JJzptEc4E3NMp17cueOXVSf3VHbGzqAFgR99OHD8t8pZK0Ci2T/
+zUY2WUEpVquiMIIFDu5MMmPJHXdYJwsi7/oZwOaJV/8qFS5Rat2WIGGRrubt5No0
+sJHjbCMiEZdtVgFirezrOpQNCZf1j2a62BtlV/JsggJzluxwa6bvStfjsDQoN+2E
+ICnBtnkCgYEA9P0mc4g+Xyju1ky4HhsuooL5wqeBK722nD4jojZEy+H/o44H7JUU
+6/zzBdzJgu8yOPMXyl+I7zOu7cXDFO6bl/npfSEsl09mbbKBX0raWW/PEzWA8UGQ
+9RRSfEQFiDWwbfAmEMe2RbN5cbyl+DAC/2eFl0aCrbzxsqSmeICHGI0CgYEA50Th
+DmUIlz/XHu616QtaB1wEEdEf17u6goe2698EO8MpGCmK2rk0LQcMDR+cg58IRurx
+VhjYbeOL1tDxbwrT8Q5lbKbriNc82HFxmVGJu+W/5ajxMxxelu4cvbgwk9a9UYKW
+5pkEHk/DBfGiFMSgeqQOqSx+NuVvQbv4rHVAr5cCgYAYMny+woEukvNsFS3GQ3cK
+tBcJI9Q9RsKnkfehCO0omgzO0bN0qZDkchpqxNDebtOuDkyWP3Nd9OPdNkA7bAnQ
+K+3k3wbxdvUt9oiSqekBFmsEga9XpNs1aalv/qPxPSRM54BK/f7ByaVAF5ro9Y0G
+PupR87PqhxP0ShDrK/6r7QKBgFtIqLyRzI5GuJaRCmRuAp8dBs4xiSwSAVA8WUtI
+v9cG9VWAMDqdF6cePPeBHrolL5MucQvWyra1NiEYX/PAhl+Dmy0DxbxBmNamEHy/
+3mm4CcKQqIPQEtXoLpgD98ii3h8qOH3Ur/d27DeQZLVl1yIRV2gXE8p/TSbZFxKb
+RWkJAoGBAJv2yw2NLlibSPefgegoj6WSJg3l/t0wEoLmuS9Ubz87htgztJNV7P+i
+dCY6Ew/POz0CoDJlojkPHLA5s1LYS0LppJeszp2oq85JCTQFSXT7wvumGEVEygw6
+W5t202N+s59oRjgvutsAFdYRZRYB5Uhh1yI3sfm8OIctgZovyi3K
+-----END RSA PRIVATE KEY-----
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/fs-init.py b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/fs-init.py
new file mode 100644
index 0000000..271f7c9
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/fs-init.py
@@ -0,0 +1,300 @@
+#!/usr/bin/env python
+
+# fs-init.py - initialize ephemeral/cinder volumes and filesystems in new VM
+
+import datetime
+import yaml
+import subprocess
+import os
+import sys
+import math
+import re
+import time
+from stat import *
+
+Debug = True
+DryRun = False
+MatchCinderUuid = False
+YamlFile = "dcae-mount.conf"
+CloudInitLog = "/var/log/cloud-init.log"
+
+def update_fstab(bdev, mount, opts="defaults", fstype="auto"):
+ ff = open("/etc/fstab", 'r')
+ off = open("/tmp/fstab.tmp", 'w+')
+
+ for line in ff:
+ if(len(line)<=1):
+ off.write(line)
+ continue
+ F = line.split();
+ if( F[0] != bdev ):
+ off.write(line)
+ entry="\t"
+ off.write(entry.join([bdev,mount,fstype,opts,"0","2"])+"\n")
+ ff.close()
+ off.close()
+ subprocess.call(["cp","/tmp/fstab.tmp","/etc/fstab"]);
+
+print "Start at:", datetime.datetime.now()
+
+if( os.geteuid() != 0 ):
+ sys.exit("Error: Must run as root.");
+
+if( not os.path.isfile( YamlFile ) ):
+ sys.exit("Error: config not found: %s" % YamlFile)
+
+with open(YamlFile, 'r') as stream:
+ try:
+ pinfo = yaml.load(stream)
+ except yaml.YAMLError as exc:
+ print(exc)
+
+ # This was for parsing from the VM YAML file
+ #print "Parsing volume info for %s (%s)" % (doc["short-name"], doc["description"])
+
+ # Prune to only partition info fragment
+ #pinfo = doc["openstack-vm-type"]["disk-partitions"]
+
+ # Check OS
+ oss = pinfo["osType"].lower()
+ if( os.path.isfile('/etc/lsb-release') ):
+ osrel = subprocess.check_output(['grep', 'DISTRIB_ID', '/etc/lsb-release']).lower().rstrip()
+ if( os.path.isfile('/etc/redhat-release') ):
+ osrel = subprocess.check_output(['grep', 'release', '/etc/redhat-release']).lower().rstrip()
+ v = osrel.find(oss)
+ if( v >= 0 ):
+ print "osType is ok (%s)" % (oss)
+ else:
+ print "osType unmatched or unrecognized: %s != %s" % (oss, osrel)
+ sys.exit("Error: OS not supported")
+
+ # Enumerate work
+ vol = pinfo["volumes"]
+ for name in vol.keys():
+ eph = 'ephemeral' if vol[name]["uuid"] == "ephemeral" else 'cinder'
+ print "\tVolume %s size %s type %s" % (name, vol[name]["size"], eph)
+ if( eph == "ephemeral" ):
+ ephvol = name
+
+ # Parse ephemeral from cloud-init log
+ if( not os.access(CloudInitLog, os.R_OK) ):
+ sys.exit("Error: Cannot open cloud-init.log")
+
+ ephem_found = False
+ with open(CloudInitLog, 'r') as fh:
+ for line in iter(fh):
+ if( re.search('apped ephemeral.*device',line) != None ):
+ dev_ephem=line.split(' ')[-1].strip('\n')
+ ephem_found = True
+ fh.close()
+
+ if( not ephem_found ):
+ sys.exit("Error: ephemeral device not found in cloud-init.log");
+
+ # Read block device info
+ dev_config=dev_root=cinder_dev=""
+ out, err = subprocess.Popen(["lsblk","--pairs","--bytes","--output","name,type,size,label,uuid"], stdout=subprocess.PIPE).communicate()
+ for line in out.splitlines():
+ dev_name=dev_size=dev_lab=dev_uuid=""
+ for pair in line.split(' '):
+ if( pair.split('=')[0].startswith('NAME') ):
+ dev_name="/dev/"+pair.split('=')[1].translate(None, '"')
+ elif( pair.split('=')[0].startswith('TYPE') ):
+ dev_type=pair.split('=')[1].translate(None, '"')
+ elif( pair.split('=')[0].startswith('SIZE') ):
+ dev_size=pair.split('=')[1].translate(None, '"')
+ elif( pair.split('=')[0].startswith('LABEL') ):
+ dev_lab=pair.split('=')[1].translate(None, '"')
+ elif( pair.split('=')[0].startswith('UUID') ):
+ dev_uuid=pair.split('=')[1].translate(None, '"')
+ if( Debug ):
+ print "%s: name %s size %s label %s uuid %s" % (dev_type,dev_name,dev_size,dev_lab,dev_uuid)
+ if( dev_lab.startswith('config') ):
+ dev_config = dev_name
+ elif( dev_lab.find('root') >= 0 ):
+ dev_root = dev_name.translate(None, '0123456789')
+ else:
+ if( not dev_name.startswith(dev_ephem) ):
+ if( dev_type == "disk" ):
+ cinder_dev=dev_name
+ cinder_size=dev_size
+
+ print "\tRoot: %s" % ( dev_root )
+ print "\tConfig: %s" % ( dev_config )
+ print "\tEphemeral: %s" % ( dev_ephem )
+ print "\tCinder: %s" % ( cinder_dev )
+
+ # Handle ephemeral already mounted
+ if( not os.access("/etc/fstab", os.R_OK) ):
+ sys.exit("Error: Cannot open fstab")
+
+ with open("/etc/fstab", 'r') as fh:
+ for line in iter(fh):
+ if( line.startswith(dev_ephem) ):
+ print "Mount point for ephem found:"
+ print line
+ # Use specific partition created, which may differ from base device
+ dev_ephem=line.split()[0]
+ ephem_mounted = True
+ mp_ephem=line.split()[1]
+ print "Using ephem mount: \"%s\"" % ( dev_ephem )
+ fh.close()
+
+ # Handle ephemeral
+ if 'ephvol' in locals() and not DryRun:
+ print "Processing ephemeral volume \"%s\"" % ephvol
+ if( ephem_mounted == True ):
+ if( os.path.ismount(mp_ephem) ):
+ print "\tAlready mounted, recreating..."
+ if( subprocess.call(["umount",dev_ephem]) != 0 ):
+ sys.exit("Error unmounting ephemeral on "+dev_ephem)
+ # Create and mount fs
+ mode = os.stat(dev_ephem).st_mode
+ if( not S_ISBLK(mode) ):
+ sys.exit("Error: not a block device: %s" % ephem_device)
+ for k in vol[ephvol]['filesystems'].keys():
+ # Wipe existing partition
+ if( oss == "ubuntu" ):
+ rv = subprocess.call(["sgdisk","--zap-all",dev_ephem])
+ if( rv != 0 ):
+ print "Error: sgdisk for %s returned %d" % (dev_ephem,rv)
+ # Recreate fs
+ ftype=vol[ephvol]['filesystems'][k]['type']
+ print "mkfs -t "+ftype+" "+dev_ephem
+ rv = subprocess.call(["mkfs","-t",ftype,dev_ephem])
+ if( rv != 0 ):
+ print "Error: mkfs for %s returned %d" % (dev_ephem,rv)
+ print "Mount %s on %s" % (k, dev_ephem)
+ if( not os.path.isdir(k) ):
+ os.makedirs(k,0755)
+ if( subprocess.call(["mount",dev_ephem,k]) != 0 ):
+ sys.exit("Error mounting ephemeral on "+k)
+ update_fstab(dev_ephem,k)
+ else:
+ if( not DryRun ):
+ print "No ephemeral disk defined."
+
+ # Handle cinder volume(s)
+ if( not 'cinder_dev' in locals() ):
+ sys.exit("Error: cinder volume not found")
+
+ for name in vol.keys():
+ uuid=vol[name]["uuid"]
+ if( uuid != "ephemeral" ):
+ uuid=uuid[:20] # virtio_blk only passes 20 bytes of uuid
+ sz=vol[name]["size"]
+ print "Volume %s specified size %s device %s" % (name,sz,cinder_dev)
+ fs=vol[name]['filesystems']
+ if( Debug ): print fs
+ fssize=0
+ for f in fs.keys():
+ fssize+=int(fs[f]["size"])
+
+ # Check volume label
+ sp = subprocess.Popen(["parted","--machine",cinder_dev,"unit","s","p"], stderr=subprocess.PIPE, stdout=subprocess.PIPE)
+ out, err = sp.communicate()
+ if( sp.returncode >= 0 ):
+ # No disk label, must label first
+ if not DryRun:
+ rv=subprocess.call(["parted","--script",cinder_dev,"mklabel","gpt"]);
+ if( rv != 0 ):
+ print "Warning: attempt to GPT label %s failed." % (cinder_dev)
+ else:
+ print "Added GPT label on %s." % (cinder_dev)
+ else:
+ print "Would add GPT label on %s" % (cinder_dev)
+ sys.exit("Dryrun complete.")
+
+ # Get device info
+ cinder_sectorsize=cinder_startsector=cinder_endsector=cinder_totalsector=-1
+ out, err = subprocess.Popen(["parted","--machine",cinder_dev,"unit","s","p","free"], stdout=subprocess.PIPE).communicate()
+ for line in out.splitlines():
+ if( line.find(cinder_dev) >= 0 ):
+ cinder_sectorsize=int(line.split(':')[3])
+ elif( line.find('free;') >= 0 ):
+ cinder_startsector=int(line.split(':')[1].strip('s'))
+ cinder_endsector=int(line.split(':')[2].strip('s'))
+ cinder_totalsector=int(line.split(':')[3].strip('s'))
+ if( Debug ):
+ print "Sector size: %d, start: %d, end: %d" % (cinder_sectorsize,cinder_startsector,cinder_endsector)
+
+ # Size checks
+ asz=int(cinder_size)/1024**3
+ if( asz != sz ):
+ print "Warning: actual size of volume (%d) does not match requested volume size (%s)" % (asz,sz)
+ if( fssize > asz ):
+ print "Warning: total filesystem size (%d) exceeds actual total size (%d)" % (fssize,asz)
+ print "Using proportional allocation:"
+ for f in fs.keys():
+ fs[f]["size"] = str( int(math.floor(float(asz)*(float(fs[f]["size"])/float(fssize)))))
+ # fs[f]["size"] = max (fs[f]["size"],1)
+ fs[f]["size"] = str(max(int(fs[f]["size"]), 1))
+
+ print "\t%s gets %sGB of %sGB" % (f,fs[f]["size"],asz)
+
+ # Ensure not partitioned already
+ redeploy=False
+ cinder_partitioned = False
+ with open("/proc/partitions", 'r') as pf:
+ for line in pf:
+ if( len(line) > 1 ):
+ rpg=re.compile(cinder_dev.lstrip("/dev/")+'[0-9]')
+ if( rpg.search(line) != None ):
+ #if( "/dev/"+line.split()[-1] == cinder_dev+"1" ):
+ print "Warning: cinder dev %s already partitioned" % (cinder_dev)
+ cinder_partitioned = True
+ else:
+ print "String \"%s\" not found in \"%s\"" % (rpg.pattern, line)
+
+ if( not cinder_partitioned ):
+
+ # Generate partition info for parted (using sectors)
+ pfile = open("parted.cmd", "w+")
+ pfile.write("parted --script "+cinder_dev+" \\\n")
+ pfile.write("\tunit s \\\n");
+ start=int(cinder_startsector)
+ for f in fs.keys():
+ end=start+(int(fs[f]["size"])*(1024**3/cinder_sectorsize))
+ if( end > cinder_endsector ):
+ end=cinder_endsector
+ pfile.write("\tmkpart primary "+fs[f]["type"]+" "+str(start)+"s "+str(end)+"s \\\n")
+ start=end+1
+ pfile.write("\talign-check min 1 \\\n")
+ pfile.write("\tprint\n")
+ pfile.close()
+ os.chmod("parted.cmd", 0755)
+
+ # Run partition
+ print "Running partitioning script..."
+ rv = subprocess.call(["./parted.cmd"],shell=True)
+ if( rv != 0 ):
+ print "Error: parted for %s failed" % cinder_dev
+
+ else:
+ redeploy=True
+ print "Warning: cinder device %s already partitioned, skipping partitioning." % cinder_dev
+
+ # Force kernel to re-read partition info on older Ubuntu
+ rv = subprocess.call(["parted","--machine",cinder_dev,"unit","s","p"])
+ time.sleep(1)
+
+ # Create/Mount filesystems
+ offset=1
+ for f in fs.keys():
+ if( not redeploy ): # preserve fs if a redeploy
+ print "mkfs -t "+fs[f]["type"]+" "+cinder_dev+str(offset)
+ rv = subprocess.call(["mkfs","-F","-t",fs[f]["type"],cinder_dev+str(offset)])
+ if( rv != 0 ):
+ print "Error: mkfs for %s returned %d" % (cinder_dev+str(offset),rv)
+ if( not os.path.isdir(f) ):
+ os.makedirs(f,0755)
+ print "mount -t "+fs[f]["type"]+" "+cinder_dev+str(offset)+" "+f
+ rvm = subprocess.call(["mount","-t",fs[f]["type"],cinder_dev+str(offset),f])
+ if( rvm != 0):
+ print "Error: mount for %s on %s failed" % (f,cinder_dev+str(offset))
+ update_fstab(cinder_dev+str(offset),f)
+ print "Added mount \"%s\" to fstab." % f
+ offset=offset+1
+
+
+ if( Debug): print "\nWhole subtree is:\n%s" % pinfo
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/generate-certs.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/generate-certs.sh
new file mode 100644
index 0000000..61338d6
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/generate-certs.sh
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+. common.funcs
+
+#
+# this was cribbed from the io.docker:docker install_postproc script
+#
+DOCKER_DIR=/opt/app/docker
+DOCKER_ETC_DIR=${DOCKER_DIR}/etc
+DOCKER_BIN_DIR=${DOCKER_DIR}/bin
+DOCKER_DATA_DIR=${DOCKER_DIR}/data
+DOCKER_LOG_DIR=${DOCKER_DIR}/logs
+
+DOCKER_SSL="/etc/ssl/certs"
+
+DOCKER_CA_CERT=${DOCKER_ETC_DIR}/docker_ca_cert.pem
+DOCKER_CA_KEY=${DOCKER_ETC_DIR}/docker_ca_key.pem
+
+CLIENT_P12_PWD=f22723cffdbd2fff1cb3c558677a7684
+
+HOSTNAME=$(hostname -f)
+
+_isRoot
+
+mkdir -p ${DOCKER_DIR}
+mkdir -p ${DOCKER_ETC_DIR}
+mkdir -p ${DOCKER_BIN_DIR}
+mkdir -p ${DOCKER_DATA_DIR}
+mkdir -p ${DOCKER_LOG_DIR}
+
+cp -p docker_ca_cert.pem ${DOCKER_ETC_DIR}
+cp -p docker_ca_key.pem ${DOCKER_ETC_DIR}
+
+# Generate certificates for SSL encryption
+# Generate a private key for the docker engine
+
+openssl genrsa -out ${DOCKER_ETC_DIR}/server_key.pem 2048 ||
+ fail 1 "Server private key generation failed"
+_print "Generated the server's private key ..."
+
+# Generate a certificate signing request for the server using the private key.
+openssl req -new -key ${DOCKER_ETC_DIR}/server_key.pem -out ${DOCKER_ETC_DIR}/server.csr -batch -subj "/countryName=US/stateOrProvinceName=Michigan/localityName=Southfield/organizationName=AT&T Services, Inc./commonName=${HOSTNAME}" ||
+ fail 2 "Server certificate signing request generation failed."
+_print "Generated a certificate signing request using the private key ..."
+
+# Generate a certificate for the server and sign it with the CA certificate.
+openssl x509 -req -days 3650 -in ${DOCKER_ETC_DIR}/server.csr -CA ${DOCKER_CA_CERT} -CAkey ${DOCKER_CA_KEY} -CAcreateserial -out ${DOCKER_ETC_DIR}/server_cert.pem ||
+ fail 3 "Server certificate signing failed."
+_print "Generated a certificate for the server and sign it with the CA certificate ..."
+
+# Generate a private key for client authentication
+openssl genrsa -out ${DOCKER_ETC_DIR}/client_key.pem 2048 ||
+ fail 4 "Client private key generation failed."
+_print "Generated a private key for client authentication ..."
+
+# Generate a certificate signing request for the client using the private key.
+openssl req -new -key ${DOCKER_ETC_DIR}/client_key.pem -out ${DOCKER_ETC_DIR}/client.csr -batch -subj "/countryName=US/stateOrProvinceName=Michigan/localityName=Southfield/organizationName=AT&T Services, Inc./commonName=Client" ||
+ fail 5 "Clienterver certificate signing request generation failed."
+_print "Generated a certificate signing request for the client using the private key ..."
+
+# To make the key suitable for client authentication,
+# create an extensions config file
+echo extendedKeyUsage = clientAuth > ${DOCKER_ETC_DIR}/client_cert_extfile.cnf
+_print "Generated client certificate extensions config ..."
+
+# Generate a certificate for the client and sign it with the CA certificate
+openssl x509 -req -days 3650 -in ${DOCKER_ETC_DIR}/client.csr -CA ${DOCKER_CA_CERT} -CAkey ${DOCKER_CA_KEY} -CAcreateserial -out ${DOCKER_ETC_DIR}/client_cert.pem -extfile ${DOCKER_ETC_DIR}/client_cert_extfile.cnf ||
+ fail 6 "Client certificate signing failed."
+_print "Client certificate signing successfully ..."
+
+# Protect the keys
+chmod 0600 ${DOCKER_ETC_DIR}/server_key.pem ${DOCKER_ETC_DIR}/client_key.pem ${DOCKER_CA_KEY}
+
+# Make the client key readable by the docker group so people who can access the docker cli can also
+# access docker engine via the rest api
+chgrp docker ${DOCKER_ETC_DIR}/client_key.pem
+# But make the public keys readable
+chmod 0644 ${DOCKER_ETC_DIR}/server_cert.pem ${DOCKER_ETC_DIR}/client_cert.pem ${DOCKER_CA_CERT}
+
+# Remove the password from the client key
+openssl rsa -in ${DOCKER_ETC_DIR}/client_key.pem -out ${DOCKER_ETC_DIR}/client_key.pem
+_print "Removed password from client key ..."
+
+
+# Convert the client key from pem to pksc12 format so we can add it to the keystore
+openssl pkcs12 -export -inkey ${DOCKER_ETC_DIR}/client_key.pem -in ${DOCKER_ETC_DIR}/client_cert.pem -out ${DOCKER_ETC_DIR}/client_cert.p12 -name client_p12 -CAfile ${DOCKER_CA_CERT} -caname root -chain -passout pass:${CLIENT_P12_PWD} ||
+ fail 7 "CA key not converted to pksc12 format"
+_print "Converted CA key to pksc12 format ..."
+
+# update the docker opts in /etc/default/docker
+DOCKER_OPTS="--debug --graph /opt/app/docker/data --host tcp://0.0.0.0:4243 --host unix:///var/run/docker.sock --tls=true --tlscert=/opt/app/docker/etc/server_cert.pem --tlskey=/opt/app/docker/etc/server_key.pem --tlscacert=/opt/app/docker/etc/docker_ca_cert.pem"
+
+echo "DOCKER_OPTS=\"${DOCKER_OPTS}\"" >> /etc/default/docker
+_print "Updated Docker DOCKER_OPTS ..."
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/install-docker.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/install-docker.sh
new file mode 100644
index 0000000..cc73a1e
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/install-docker.sh
@@ -0,0 +1,93 @@
+#!/bin/bash -x
+
+cd $(dirname $(readlink -e $0))
+export PATH=$PATH:$(pwd)
+
+PATH=$PATH:.
+TRUSTY_REPO="deb https://apt.dockerproject.org/repo ubuntu-trusty main"
+
+. common.funcs
+
+#
+# install docker-engine on ubuntu 14.04
+#
+
+_isRoot
+
+REL=$(uname -r)
+
+apt-get update
+
+#
+# get certificates
+#
+apt-get install -q -y apt-transport-https ca-certificates ||
+ _fail "apt-transport-http ca-certificates installation failed"
+_print "apt-transport-htps ca-certificates installed ..."
+
+
+# makes the aufs storage driver available
+#
+apt-get install -q -y linux-image-extra-${REL} linux-image-extra-virtual ||
+ _fail "linux-image-extra-${REL} or linux-image-extra-virtual installation failed"
+_print "linux-image-extra-virtual aufs storage driver installed ..."
+
+#
+# Add GPG key
+#
+curl -fsSL https://yum.dockerproject.org/gpg | sudo apt-key add -
+
+apt-key fingerprint 58118E89F3A912897C070ADBF76221572C52609D
+
+echo "${TRUSTY_REPO}" | sudo tee /etc/apt/sources.list.d/docker.list
+
+# update apt package index
+apt-get update
+
+#
+# set up the repository
+#
+apt-get install software-properties-common
+add-apt-repository \
+ "deb https://apt.dockerproject.org/repo/ \
+ ubuntu-$(lsb_release -cs) \
+ main" || _fail "setup of repositry failed"
+_print "repository set up"
+
+#
+# install apparmor
+#
+apt-get install -q -y apparmor ||
+ _fail "apparmor installation failed"
+_print "apparmor installed ..."
+
+apt-get install -q -y docker-engine ||
+ _fail "docker-engine installation failed"
+_print "docker-engine installed ..."
+
+#
+# Generate certifcates for TLS
+#
+_print "Generating certificates ..."
+generate-certs.sh
+
+usermod -aG docker ubuntu
+usermod -aG docker dcae
+
+#
+# mv ecomp-nexus docker auth
+#
+if [ ! -d /home/ubuntu/.docker ]; then
+ mkdir -p /home/ubuntu/.docker || _fatal "Could not create /home/ubuntu/.docker dir"
+fi
+
+#
+# Start Docker
+#
+_print "Starting docker ..."
+service docker restart
+
+
+#
+# END
+#
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/process-yaml.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/process-yaml.sh
new file mode 100644
index 0000000..c0cff3f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/process-yaml.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+export JAVA_HOME=/opt/app/java/jdk/jdk170
+export GROOVY_HOME=/opt/app/groovy/246
+
+PATH=$JAVA_HOME/bin:$GROOVY_HOME/bin:$PATH
+
+cd $(dirname $(dirname $(readlink -e $0)))
+
+groovy -cp 'lib/*' scripts/process-yaml.groovy "$@"
+
+chgrp dcae /var/config/DCAE/chef/*
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/setup-logrotation.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/setup-logrotation.sh
new file mode 100644
index 0000000..aff11b1
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/setup-logrotation.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+APP=$1
+
+LOG1=$(echo $APP | sed s/dcae-//).err
+LOG2=$(echo $APP | sed s/dcae-//).out
+
+cat > | /etc/logrotate.d/$APP << EOF
+
+/opt/app/$APP/logs/$LOG1 {
+ missingok
+ compress
+ daily
+ rotate 14
+ dateext
+ copytruncate
+}
+
+/opt/app/$APP/logs/$LOG2 {
+ missingok
+ compress
+ daily
+ rotate 14
+ dateext
+ copytruncate
+}
+
+EOF
\ No newline at end of file
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/setup_https.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/setup_https.sh
new file mode 100644
index 0000000..6559251
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/setup_https.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+FILE=$1
+
+JKS=/opt/app/dcae-certificate/keystore.jks
+PW=/opt/app/dcae-certificate/.password
+
+sed -i /server.keyStore/d $FILE
+sed -i /server.keyManagerPassword/d $FILE
+
+if [ ! -e $JKS ]; then exit; fi
+if [ ! -e $PW ]; then exit; fi
+
+echo server.keyStore=$JKS >> $FILE
+echo server.keyStorePassword=$(cat $PW) >> $FILE
+echo server.keyManagerPassword=$(cat $PW) >> $FILE
+
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/update-docker-opts.sh b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/update-docker-opts.sh
new file mode 100644
index 0000000..363c28f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/bin/update-docker-opts.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+_die() {
+ echo "$1"
+ exit 2;
+}
+
+_exit() {
+ echo "$1"
+ exit 0;
+}
+
+SFILE=/etc/default/docker
+DFILE=/tmp/docker
+
+grep 'mtu=1400' $SFILE 1>/dev/null || _die "Could not open $SFILE"
+
+[ $? -eq 0 ] && _exit "DOCKER_OPTS already updated"
+
+[ ! -f ${SFILE}.ori ] && sudo -uroot cp -p ${SFILE} ${SFILE}.ori
+
+cp -p $SFILE $DFILE
+
+sed --in-place -e 's/DOCKER_OPTS="--debug/DOCKER_OPTS="--mtu=1400 --debug/' ${DFILE}
+
+grep 'mtu=1400' $DFILE 1>/dev/null || _die "Could not adjust DOCKER_OPTS"
+
+[ -s $DFILE ] && sudo -uroot cp -p $DFILE $SFILE
diff --git a/dcae-controller-core/dcae-controller-core-utils/src/main/server/scripts/process-yaml.groovy b/dcae-controller-core/dcae-controller-core-utils/src/main/server/scripts/process-yaml.groovy
new file mode 100644
index 0000000..4c740b9
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-core-utils/src/main/server/scripts/process-yaml.groovy
@@ -0,0 +1,75 @@
+
+/*-
+ * ============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============================================
+ */
+
+
+import org.yaml.snakeyaml.Yaml;
+import org.openecomp.ncomp.utils.CryptoUtils;
+import groovy.text.SimpleTemplateEngine
+
+def cli = new CliBuilder(usage:'process-yaml.sh reports OPTIONS')
+cli.f(longOpt:'file', args:1, 'Yaml File')
+cli.d(longOpt:'dir', args:1, 'Destination Directory')
+
+def options = cli.parse(args)
+
+def f = new File(options.file)
+def dir = options.dir
+
+Yaml yaml = new Yaml();
+
+def c = yaml.load(f.text)
+println "Reading $f"
+
+def files = c['configuration-files'] ?: [:]
+
+class VmSubstitute {
+ def pw = new File("/opt/app/dcae-certificate/.password").text.trim()
+ def decrypt(String s) {
+// println "pw='$pw' s='$s'"
+ return CryptoUtils.decrypt(pw,s)
+ }
+}
+
+
+SimpleTemplateEngine engine = new SimpleTemplateEngine()
+def vm = new VmSubstitute()
+def env = [ vm : vm, certPassword : vm.pw ]
+
+files.each { k, m->
+ if (m['encrypted-password']) return
+ def content = m.content
+ File f1 = new File(m.destination)
+ File f2 = new File("$dir/$f1.name")
+ if (f2.exists()) f2.delete()
+ f2.parentFile.mkdirs()
+ println "Updating $f2"
+ switch (m['encoding']) {
+ case "base64":
+ f2 << content.decodeBase64();
+ return
+ }
+ content = content.toString().replaceAll('\\$','DOLLAR_XXbXaX').replaceAll('%\\{','\\${')
+ f2 << "${engine.createTemplate(content).make(env)}".replaceAll('DOLLAR_XXbXaX','\\$')
+}
+
+
+
+
diff --git a/dcae-controller-core/dcae-controller-operation-utils/.classpath b/dcae-controller-core/dcae-controller-operation-utils/.classpath
new file mode 100644
index 0000000..b14f8a5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/.classpath
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dcae-controller-core/dcae-controller-operation-utils/.gitignore b/dcae-controller-core/dcae-controller-operation-utils/.gitignore
new file mode 100644
index 0000000..ec2d648
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/.gitignore
@@ -0,0 +1,2 @@
+/target/
+/config/
diff --git a/dcae-controller-core/dcae-controller-operation-utils/.project b/dcae-controller-core/dcae-controller-operation-utils/.project
new file mode 100644
index 0000000..13e93f2
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/.project
@@ -0,0 +1,35 @@
+
+
+ dcae-controller-operation-utils
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+
+
+ org.eclipse.jdt.groovy.core.groovyNature
+ org.eclipse.jdt.core.javanature
+ org.eclipse.m2e.core.maven2Nature
+ org.eclipse.pde.PluginNature
+
+
diff --git a/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.jdt.core.prefs b/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..abec6ca
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.jdt.groovy.core.prefs b/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.jdt.groovy.core.prefs
new file mode 100644
index 0000000..ae98fea
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.jdt.groovy.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+groovy.compiler.level=24
diff --git a/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.m2e.core.prefs b/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/dcae-controller-core/dcae-controller-operation-utils/LICENSE.txt b/dcae-controller-core/dcae-controller-operation-utils/LICENSE.txt
new file mode 100644
index 0000000..30471b5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/LICENSE.txt
@@ -0,0 +1,22 @@
+
+/*-
+ * ============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============================================
+ */
+
+ECOMP and OpenECOMP are trademarks and service marks of AT&T Intellectual Property.
diff --git a/dcae-controller-core/dcae-controller-operation-utils/META-INF/MANIFEST.MF b/dcae-controller-core/dcae-controller-operation-utils/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..a0c1ab8
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: dcae-controller-operation-utils
+Bundle-SymbolicName: dcae-controller-operation-utils
+Bundle-Version: 1.0.0.qualifier
+Export-Package: org.openecomp.dcae.controller.operation.utils
+Require-Bundle: dcae-controller-service-vm-model;bundle-version="0.1.0",
+ dcae-controller-service-vm-adaptor;bundle-version="0.1.0",
+ dcae-controller-platform-model;bundle-version="0.1.0",
+ ncomp-sirius-manager-console;bundle-version="0.1.0",
+ ncomp-sirius-manager-server;bundle-version="0.1.0",
+ dcae-controller-core-model;bundle-version="0.1.0"
diff --git a/dcae-controller-core/dcae-controller-operation-utils/build.properties b/dcae-controller-core/dcae-controller-operation-utils/build.properties
new file mode 100644
index 0000000..80bc250
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/build.properties
@@ -0,0 +1,6 @@
+source.. = src/main/java/,\
+ src/main/resources/,\
+ src/test/java/,\
+ src/test/resources/
+bin.includes = META-INF/,\
+ .
diff --git a/dcae-controller-core/dcae-controller-operation-utils/pom.xml b/dcae-controller-core/dcae-controller-operation-utils/pom.xml
new file mode 100644
index 0000000..fbddc5b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/pom.xml
@@ -0,0 +1,156 @@
+
+ 4.0.0
+ org.openecomp.dcae.controller
+ dcae-controller-operation-utils
+ 0.1.0-SNAPSHOT
+
+
+
+
+
+ JCenter
+ JCenter Repository
+ http://jcenter.bintray.com
+
+
+
+ Restlet
+ Restlet Repository
+ http://maven.restlet.com
+
+
+
+
+
+
+ com.blackducksoftware.integration
+ hub-maven-plugin
+ 1.4.0
+ false
+
+ ${project.name}
+ ${project.basedir}
+
+
+
+ create-bdio-file
+ package
+
+ createHubOutput
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-site-plugin
+ 3.6
+
+
+ org.apache.maven.wagon
+ wagon-webdav-jackrabbit
+ 2.10
+
+
+
+
+
+ maven-compiler-plugin
+
+ 3.1
+
+ groovy-eclipse-compiler
+
+
+
+ org.codehaus.groovy
+ groovy-eclipse-compiler
+ 2.9.1-01
+
+
+
+ org.codehaus.groovy
+ groovy-eclipse-batch
+ 2.3.7-01
+
+
+
+
+
+
+
+
+ org.eclipse.m2e
+ lifecycle-mapping
+ 1.0.0
+
+
+
+
+
+
+ org.apache.maven.plugins
+
+
+ maven-compiler-plugin
+
+
+ [3.1,)
+
+
+ compile
+ testCompile
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ org.codehaus.groovy
+ groovy-all
+ 2.4.3
+
+
+
+ org.yaml
+ snakeyaml
+ 1.15
+
+
+ org.openecomp.ncomp.utils
+ ncomp-utils-java
+ ${project.version}
+
+
+ org.openecomp.ncomp.sirius.manager
+ ncomp-sirius-manager-console
+ ${project.version}
+
+
+ org.openecomp.dcae.controller
+ dcae-controller-platform-model
+ ${project.version}
+
+
+
+
+ org.openecomp.ncomp.maven
+ ncomp-maven-base
+ 0.1.0-SNAPSHOT
+ ../../../dcae-org.openecomp.ncomp.maven/ncomp-maven-base
+
+
diff --git a/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/DcaePlatformConfiguration.groovy b/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/DcaePlatformConfiguration.groovy
new file mode 100644
index 0000000..234e98a
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/DcaePlatformConfiguration.groovy
@@ -0,0 +1,1115 @@
+
+/*-
+ * ============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.dcae.controller.operation.utils
+
+import static org.openecomp.ncomp.sirius.manager.console.Utils.*
+import static org.openecomp.ncomp.utils.Base64.decode64;
+import static org.openecomp.dcae.controller.operation.utils.DocUtils.*
+
+import java.security.KeyFactory;
+import java.security.PrivateKey;
+import java.security.spec.KeySpec;
+import java.security.spec.PKCS8EncodedKeySpec;
+
+import javax.crypto.Cipher;
+
+import org.json.JSONArray
+import org.junit.After;
+
+import groovy.text.SimpleTemplateEngine
+
+import org.openecomp.ncomp.utils.CryptoUtils;
+import org.openecomp.ncomp.webservice.utils.IpUtils
+
+class DcaePlatformConfiguration {
+ def env
+ def release
+ String envName
+ def tenants
+ def locationTypes
+ def serviceName
+ def instanceName
+ def tenant
+ def locationName
+ def streams
+ def networking
+ def ipAssignments
+ def passwords
+ Map deploymentType = [:]
+ Map types = [:]
+ def vms // for now use old setup.
+ def dockers // for now use old setup.
+
+ public DcaePlatformConfiguration(String release, String envName, String root, String destRoot) {
+ DocUtils docUtils = new DocUtils(release,envName,root,destRoot)
+ this.envName = envName
+ this.release = release
+ vms = docUtils.vms()
+ dockers = docUtils.dockers()
+ env = file2object("$release-$envName/env.yaml", false) ?: [:]
+ tenants = file2object("$release-$envName/tenants.yaml", false)
+ ipAssignments = file2object("$release-$envName/ip-assignment.yaml", false) ?: [:]
+ locationTypes = file2object("$release/location-types.yaml", false)
+ streams = file2object("$release/streams.yaml", false)
+ networking = file2object("$release/networking.yaml")
+ passwords = file2object("$release-$envName/certificates/passwords.yaml", false) ?: [:]
+ tenants.each { n, v ->
+ v.tenantName = n
+ if (locationTypes[v.type].tenantNames == null)
+ locationTypes[v.type].tenantNames = []
+ locationTypes[v.type].tenantNames += n
+ }
+ locationTypes.each { n, v ->
+ def deployments = []
+ [
+ 'vm-deployments',
+ 'docker-deployments',
+ 'cdap-deployments',
+ 'other-deployments'
+ ].each { t ->
+ def typeDir = t.replace("deployments","templates")
+ def typeName = t.replace("deployments","type")
+// println "n=$n v=$v t=$t"
+ v[t].each { n1, v1 ->
+ deployments += n1
+ // println "n1=$n1 v1=$v1 $release/$typeDir/${v1[typeName]}.yaml"
+ deploymentType[n1] = v1
+ v1.type = file2object("$release/$typeDir/${v1[typeName]}.yaml", false)
+ if (v1.type == null) {
+ println "n1=$n1 v1=$v1"
+ System.err.println "Unknown type: $release/$typeDir/${v1[typeName]}.yaml"
+ System.exit(3)
+ }
+ types[v1[typeName]] = v1.type
+ }
+ }
+ locationTypes[n].deployments = deployments
+// System.err.println "n=$n v=${locationTypes[n].deployments} $deployments"
+ }
+ deploymentType.each { n,v ->
+ addInstances(n)
+ }
+ }
+
+ def init(s,i) {
+ serviceName = s
+ instanceName = i
+ tenant = tenants[i]
+ locationName = i
+ }
+
+ def p(o) {
+ object2json(o).toString(2)
+ }
+
+ def addInstances(String n) {
+ def instances = [:]
+ deploymentType[n].instances = instances
+ deploymentType[n].tenantNames = []
+ tenants.each { tenantName, tenant ->
+ // System.err.println "tenantName $tenantName $tenant.type ${locationTypes[tenant.type].deployments}"
+ locationTypes[tenant.type].deployments.each { n1 ->
+ // println "$n $tenantName $n1"
+ if (n != n1) return
+ deploymentType[n].tenantNames += tenantName
+ def instance = [:]
+ instances[tenantName] = instance
+ if (n.startsWith("vm-")) {
+ // println "$n $tenantName $n1 ${p(vms[n])}"
+ instance.servers = vms[n].locations["$n1-$tenantName"].vms
+ if (instance.servers == null) {
+ println "No servers for: $n $tenantName $n1 ${p(vms[n])}"
+ System.exit(3)
+ }
+ instance.servers.each { n2, v2 ->
+ v2.ip = ipAssignments[n2] ?: "TBD - ip-assignment.yaml@$n2"
+ v2['dns-cnames'] = []
+ v2['dns-gss'] = []
+ v2['dns-arecords'] = [ "${n2}.${tenant['dns-surfix']}"]
+ def envDns = env.get("dns") ?: [:]
+ def shortName = deploymentType[n].type['short-name']
+ def shortNameGlobal = "$shortName${envDns['global-fix'] ?: ''}"
+ def globalDns = envDns.get("service-suffix") ?: "TBD - env.yaml@dns.service-suffix"
+ def tenantDns = tenant.get("dns-surfix") ?: "TBD - tenants.yaml@${tenantName}.dns-surfix"
+ (deploymentType[n].type['dns-cnames'] ?: []).each { dns1 ->
+ if (dns1=="central" && tenant.type != "opendcae-central") return
+ if (dns1=="central-site" && tenant.type != "opendcae-central") return
+ v2['dns-cnames'] += dnsName(n,tenant,dns1)
+ }
+ (deploymentType[n].type['dns-gss'] ?: []).each { dns1 ->
+ if (dns1=="central" && tenant.type != "opendcae-central") return
+ v2['dns-gss'] += dnsName(n,tenant,dns1)
+ }
+ (deploymentType[n].type['dns-arecords'] ?: []).each { dns1 ->
+ if (dns1=="central" && tenant.type != "opendcae-central") return
+ v2['dns-arecords'] += dnsName(n,tenant,dns1)
+ }
+ // dns-service: [ drsub: [ 'dns-type' : 'arecords': 'cluster-type' : 'site' ] ]
+ (deploymentType[n].type['dns-service'] ?: [:]).each { n3, v3 ->
+ v2["dns-${v3['dns-type']}"] += dnsName(n,tenant,v3['cluster-type'],n3)
+ switch (v3['cluster-type']) {
+ case "gss" :
+ v2["dns-cnames"] += dnsName(n,tenant,"global",n3)
+ break
+ case "gss-edge" :
+ v2["dns-cnames"] += dnsName(n,tenant,"site",n3)
+// println "$n ${p(v2)}"
+// System.exit(3)
+ break
+ }
+ }
+// println "$n ${p(v2)}"
+// System.exit(3)
+ }
+ return
+ }
+// println "$n $tenantName $n1 ${p(deploymentType[n])}"
+ def path = substitute(deploymentType[n].container,[:],n,tenantName)
+ def a = path.split("/")
+ instance.hostService = a[2]
+ instance.hostServiceInstance = a[4]
+ }
+ }
+// println "$n ${p(instances)}"
+// println "$n ${p(deploymentType[n])}"
+// System.exit(0)
+ }
+ def dnsName(n,tenant,dnsType, extra = null) {
+ def tenant1 = tenant ?: [tenantName:"NA"]
+ def ee = envName.toLowerCase()
+ def envDns = env.get("dns") ?: [:]
+ if (deploymentType[n] == null) {
+ throw new RuntimeException("Unknown deploymentType: $n")
+ }
+ def shortName = deploymentType[n].type['short-name']
+ def shortNameGlobal = "$shortName${envDns['global-fix'] ?: ''}"
+ def globalDns = envDns.get("service-suffix") ?: "TBD - env.yaml@dns.service-suffix"
+ def gssDns = env("dns.gss-idns-suffix")
+ def tenantDns = tenant1.get("dns-surfix") ?: "TBD - tenants.yaml@${tenant1.tenantName}.dns-surfix"
+ extra = (extra != null) ? "-$extra" : ""
+ switch (dnsType) {
+ case "gss": return "dcae-${shortNameGlobal}$extra-${ee}.${gssDns}"
+ case "gss-edge": return "dcae-${shortName}$extra-$tenant.tenantName-${ee}.${gssDns}"
+ case "global":
+ case "central":
+ case "central-site":
+ case "global-site": return "dcae-${shortNameGlobal}$extra-${ee}.${globalDns}"
+ case "site": return "dcae-${shortName}$extra-$tenant.tenantName-${ee}.${tenantDns}"
+ }
+ }
+
+ def aEnv() {
+ switch (release) {
+ case "1607": return ! envName.contains("FTL"); break;
+ case "1610": return ! envName.equals("FTL2"); break;
+ default: return true;
+ }
+ }
+
+ def genVmType(n) {
+ def o = types[n]['openstack-vm-type']
+ def m = [:]
+ m.diskSizeGB = o.diskSizeGB ?: 0
+ m.volumeSizeGB = o.volumeSizeGB ?: 0
+ m.memorySizeMB = o.memorySizeGB ?: 4
+ m.memorySizeMB *= 1024
+ m.needPublicIp = "${o.needPublicIp ?: true}"
+ m.numberOfCores = o.numberOfCores ?: 2
+ m.rootDiskSizeGB = o.rootDiskSizeGB ?: 80
+ m.imageName = o.imageName ?: "m1.large"
+ if (! aEnv()) {
+ if (o['dev-diskSizeGB'] != null) m.diskSizeGB = o['dev-diskSizeGB']
+ if (o['dev-volumeSizeGB'] != null) m.volumeSizeGB = o['dev-volumeSizeGB']
+ if (o['dev-memorySizeMB'] != null) m.memorySizeMB = o['dev-memorySizeMB']
+ }
+ m.incomingSecurityRules = [
+ "manager": [
+ "ipProtocol": "tcp",
+ "portRangeStart": "1",
+ "portRangeEnd": "59996",
+ ]
+ ]
+ if (n == "vm-docker-host") {
+ m.incomingSecurityRules['udp'] = [
+ "ipProtocol": "udp",
+ "portRangeStart": "162",
+ "portRangeEnd": "6162",
+ ]
+ }
+ // println object2json(m).toString(2)
+ return m
+ }
+
+ def serviceFqdn(deploymentTypeName = null, extra = null) {
+ if (deploymentTypeName == null) deploymentTypeName = serviceName
+ return dnsName(deploymentTypeName,tenant,"global",extra)
+ }
+
+ def httpProtocol(deploymentTypeName = null) {
+ if (deploymentTypeName == null) deploymentTypeName = serviceName
+ // TODO
+ return "http"
+ }
+
+
+ def siteServiceFqdn(deploymentTypeName = null, extra = null) {
+ if (deploymentTypeName == null) deploymentTypeName = serviceName
+ return dnsName(deploymentTypeName,tenant,"site",extra)
+ }
+
+ def serversFqdn(deploymentTypeName = null, tName = instanceName) {
+ def res = []
+ servers(deploymentTypeName,tName).each { n -> res += "$n.${tenants[tName]['dns-surfix']}" }
+ return res
+ }
+
+ def privateKey = null
+ def vmKey = null
+ def vmName = null
+ def password(s) {
+ def o = env.passwords ?: [:]
+ boolean error = false
+ s.split('\\.').each { n ->
+ if (error) return
+ if (o[n] == null) {
+ o = "TBD: env.yaml@passwords.$s"
+ error = true
+ }
+ else
+ o = o[n]
+ }
+ if (privateKey != null && vmKey != null && o.startsWith("rsa:")) {
+ def key = verifyKey(privateKey)
+ o = CryptoUtils.decryptPrivate(key, o.substring(4));
+ def k = vmKey
+ if (vmKey.startsWith("rsa:")) {
+ k = CryptoUtils.decryptPrivate(key, vmKey.substring(4));
+ }
+// System.err.println "+++++ s=$serviceName i=$instanceName vm=$vmName s=$s k=$k o=$o"
+ o = "%{vm.decrypt('${CryptoUtils.encrypt(k,o)}')}"
+ }
+ return o.trim()
+ }
+
+ public static String verifyKey(String privateKey) {
+ try {
+ def key = CryptoUtils.getKey(privateKey)
+ if (decode64(key) == null) {
+ System.err.println "ERROR: BAD private key: bad base64 encoding: $privateKey"
+ System.exit(1)
+ }
+ KeyFactory keyFactory = KeyFactory.getInstance("RSA");
+ KeySpec keySpec = new PKCS8EncodedKeySpec(decode64(key));
+ PrivateKey key1 = keyFactory.generatePrivate(keySpec);
+ return key
+ } catch (Exception e) {
+ System.err.println "ERROR: BAD private key: $privateKey"
+ System.exit(1)
+ }
+
+ }
+
+
+ def streams(s) {
+ def o = env.streams ?: [:]
+ boolean error = false
+ s.split('\\.').each { n ->
+ if (error) return
+ if (o[n] == null) {
+ o = "TBD: env.yaml@streams.$s"
+ error = true
+ }
+ else
+ o = o[n]
+ }
+ return o
+ }
+
+ def env(s) {
+ def o = env
+ boolean error = false
+ s.split('\\.').each { n ->
+ if (error) return
+ if (o[n] == null) {
+ o = "TBD:env.yaml@$s"
+ error = true
+ }
+ else
+ o = o[n]
+ }
+ return o
+ }
+
+ def vmEnv(s) {
+ def o = (env['vm-templates'] ?: [:])[serviceName] ?: [:]
+ boolean error = false
+ s.split('\\.').each { n ->
+ if (error) return
+ if (o[n] == null) {
+ o = "TBD:env.yaml@vm-templates.${serviceName}.$s"
+ error = true
+ }
+ else
+ o = o[n]
+ }
+ return o
+ }
+
+ def allServersFqdn(deploymentTypeName = null) {
+ if (deploymentTypeName == null) deploymentTypeName = serviceName
+ def d = deploymentType[deploymentTypeName]
+ def res = []
+ if (d == null) return [
+ "NO DeploymentType $deploymentTypeName"
+ ]
+ if (d.instances == null) return [
+ "NO instances DeploymentType $deploymentTypeName"
+ ]
+ d.instances.each { instanceName, instance ->
+ instance.servers.each { n, v ->
+ res += "$n.${tenants[instanceName]['dns-surfix']}"
+ }
+ }
+ return res
+ }
+
+ def servers(deploymentTypeName = null, tName = instanceName) {
+ if (deploymentTypeName == null) deploymentTypeName = serviceName
+ def d = deploymentType[deploymentTypeName]
+ def res = []
+ if (d == null) return [
+ "NO DeploymentType $deploymentTypeName"
+ ]
+ if (d.instances == null) return [
+ "NO instances DeploymentType $deploymentTypeName"
+ ]
+ if (d.instances[tName] == null) return [
+ "NO instance DeploymentType $deploymentTypeName with name $instanceName"
+ ]
+ d.instances[tName].servers.each { n, v ->
+ res += n
+ }
+ return res
+ }
+ def allServers(deploymentTypeName = null) {
+ if (deploymentTypeName == null) deploymentTypeName = serviceName
+ def d = deploymentType[deploymentTypeName]
+ def res = []
+ if (d == null) return [
+ "NO DeploymentType $deploymentTypeName"
+ ]
+ if (d.instances == null) return [
+ "NO instances DeploymentType $deploymentTypeName"
+ ]
+ d.instances.each { n1, v1 ->
+ v1.servers.each { n, v ->
+ res += n
+ }
+ }
+ return res
+ }
+
+ def eforc() {
+ def res = [:]
+ def list = []
+ def d = [:]
+ deploymentType.each { n, v ->
+ d[n]=v
+ }
+ d['vm-all'] = [
+ type : ['openstack-vm-type': networking ]
+ ]
+ d.each { n, v ->
+// println "n=$n v=${p(v)}"
+ def x = [outbound:[:],inbound:[:]]
+ res[n] = x
+ def out
+ if (n.startsWith('vm-')) {
+ def vm = v.type['openstack-vm-type'] ?: [:]
+// println "n=$n vm=$vm"
+ out = vm['application-outbound-security-rules'] ?: [:]
+ }
+ else {
+ out = v.type['application-outbound-security-rules'] ?: [:]
+ }
+// println "n=$n out=$out"
+ out.each { n1, v1 ->
+// println "n1=$n1 v1=$v1 dest=${destination2deployment(n1,v1)}"
+ if (v1['only-local']) return
+ x.outbound[n1] = []
+ findEndpoints(n).each { from ->
+ destination2deployment(n1,v1).each { n2 ->
+// println "n1=$n1 v1=$v1 endpoints=${findEndpoints(n2,v1)}"
+ findEndpoints(n2,v1).each { to ->
+ if (from == to) return
+ if (both_local(from,to)) return
+ def ip1 = findIps(n,from)
+ def ip2 = findIps(n2,to,v1)
+ def ports = v1.ports ?: ( v1.port ?: 'TBD')
+ def protocol = v1.protocol ?: 'tcp'
+// println "out=$n1 from=$from to=$to $ip1 $ip2"
+ x.outbound[n1] += [
+ from: "$n@$from($ip1)",
+ to: "$n2@$to($ip2) ${protocol}:$ports",
+ ]
+ ip1.each { y1 ->
+ def subnet1 = ip2subnet(y1,from)
+ ip2.each { y2 ->
+ def subnet2 = ip2subnet(y2,to)
+ list += [[n,"in",n1,n,n2,from,to,y1,y2,subnet1,subnet2,protocol,ports]]
+ }
+ }
+ }
+ }
+ }
+ }
+ def inn
+ if (n.startsWith('vm-')) {
+ def vm = v.type['openstack-vm-type'] ?: [:]
+// println "n=$n vm=$vm"
+ inn = vm['application-inbound-security-rules'] ?: [:]
+ }
+ else {
+ inn = v.type['application-inbound-security-rules'] ?: [:]
+ }
+// println "n=$n in=$in"
+ inn.each { n1, v1 ->
+// println "n1=$n1 v1=$v1"
+ if (v1['only-local']) return
+ x.inbound[n1] = []
+ destination2deployment(n1,v1).each { n2 ->
+ findEndpoints(n2,v1).each { from ->
+ findEndpoints(n).each { to ->
+ if (from == to) return
+ if (both_local(from,to)) return
+ def ip1 = findIps(n2,from,v1)
+ def ip2 = findIps(n,to)
+ def ports = v1.ports ?: [ ( v1.port ?: 'TBD') ]
+ def protocol = v1.protocol ?: 'tcp'
+ // println "in=$n1 from=$from to=$to $ip1 $ip2"
+ x.inbound[n1] += [
+ from: "$n2@$from($ip1)",
+ to: "$n@$to($ip2) $protocol:$ports",
+ ]
+ ip1.each { y1 ->
+ def subnet1 = ip2subnet(y1,from)
+ ip2.each { y2 ->
+ def subnet2 = ip2subnet(y2,to)
+ list += [[n,"out",n1,n2,n,from,to,y1,y2,subnet1,subnet2,protocol,ports]]
+ }
+ }
+ }
+ }
+ }
+ }
+// println p(x)
+// println p(res)
+// System.exit(3)
+ }
+ def res1 = [:]
+ res.each { n,v ->
+ if (v.inbound.size()==0) v.inbound=null
+ if (v.outbound.size()==0) v.outbound=null
+ if (v.inbound == null && v.outbound ==null) return
+ res1[n] = v
+ }
+ def m2 = [:]
+ list.each { l ->
+ def siteA = l[5]
+ def siteB = l[6]
+ def sA = l[9]
+ def sB = l[10]
+ def protocol = l[11]
+ def ports = l[12]
+ def k = "$siteA:$siteB:$sA:$sB:$protocol"
+ if (m2[k] == null) {
+ m2[k] = [
+ siteA:siteA,
+ siteB:siteB,
+ subnetA:sA,
+ subnetB:sB,
+ protocol:protocol,
+ ports : []
+ ]
+ }
+ ports.each { port ->
+ if ( ! m2[k].ports.contains(port))
+ m2[k].ports.add(port)
+ }
+ }
+ def list2 = []
+ m2.each { n, v ->
+ list2 += [ [ v.siteA, v.siteB, v.subnetA, v.subnetB, v.protocol, v.ports.join(":") ]]
+ }
+ return [m:res1,list:list,m2:m2,list2:list2]
+ }
+ def site2subnet = [:]
+ def ip2subnet(ip,site) {
+ if (tenants[site]== null) return ip
+ if (! IpUtils.isIpv4(ip) ) return ip
+ def subnets = tenants[site].subnets ?: []
+ def res = null
+ subnets.each { subnet ->
+ if (res != null) return
+ String[] a = subnet.split("/")
+ def ip2 = a[0]
+ def len = a[1]
+ if (! IpUtils.isIpv4(ip2) || ! len.isInteger()) {
+ println "Bad subnet: $subnet at $site"
+ System.exit(2)
+ }
+ if (IpUtils.containedIn(IpUtils.toInetAddress(ip),IpUtils.toInetAddress(ip2),len.toInteger())) res = subnet
+ }
+ if (res != null) return res
+ if (site2subnet[site] == null) site2subnet[site] = [] as Set
+ site2subnet[site] += "${IpUtils.mask(IpUtils.toInetAddress(ip),29)}/29".substring(1)
+ return "$ip not in any $site subnets"
+ }
+ def both_local(from,to) {
+ if (tenants[from] == null || tenants[from].type != "opendcae-local-ntc") return false
+ if (tenants[to] == null || tenants[to].type != "opendcae-local-ntc") return false
+ return true
+ }
+
+ def dns() {
+ def cnames = [:]
+ def arecords = [:]
+ def gss = [:]
+ def currentCnames = (env['dns'] ?: [:])['current-cnames'] ?: [:]
+ def currentGss = (env['dns'] ?: [:])['current-gss'] ?: [:]
+ def res = ['dns-arecords':arecords, 'dns-cnames':cnames, 'dns-gss':gss]
+ deploymentType.each { n, v ->
+ if (!n.startsWith('vm-')) return
+ v.instances.each { n1, v1 ->
+ v1.servers.each { n2, v2 ->
+ (v2['dns-cnames'] ?: []).each { d ->
+ if (cnames[d] == null) cnames[d] = [value :"", values:[],status:dnsLookup(d)]
+ cnames[d].values += v2['dns-name'] ?: "$n2 missing DNS"
+ cnames[d].value = currentCnames[d] ?: cnames[d].values[0]
+ }
+ (v2['dns-gss'] ?: []).each { d ->
+ if (gss[d] == null) gss[d] = [value :"", values:[],status:dnsLookup(d,false)]
+ gss[d].values += v2['dns-name'] ?: "$n2 missing DNS"
+ gss[d].value = currentGss[d] ?: gss[d].values[0]
+ }
+ (v2['dns-arecords'] ?: []).each { d ->
+ if (arecords[d] == null) arecords[d] = [values:[],status:dnsLookup(d)]
+ def dns = v2['dns-name'] ?: "$n2 missing DNS"
+ def ip = ipAssignments[n2] ?: "TBD - ip-assignment.yaml@$n2"
+ arecords[d].values += "$dns $ip"
+ }
+ }
+ }
+ }
+ deploymentType.each { n, v ->
+ if (!n.startsWith('vm-')) return
+ (v.type['dns-gss'] ?: []).each { gssType ->
+// println "n=$n gssType=$gssType"
+ switch (gssType) {
+ case "gss":
+ def d = dnsName(n,null,'global')
+ cnames[d] = [value:dnsName(n,null,'gss'),status:dnsLookup(d,false)]
+ break;
+ case "gss-edge":
+ v.instances.each { n1, v1 ->
+// println "n=$n gssType=$gssType n1=$n1 v1=$v1"
+ def v2 = tenants[n1]
+ def d = dnsName(n,v2,'site')
+ cnames[d] = [value:dnsName(n,v2,'gss-edge'),status:dnsLookup(d,false)]
+ }
+ break;
+ }
+ }
+ (v.type['dns-cnames'] ?: []).each { cnameType ->
+// println "n=$n cnameType=$cnameType"
+ switch (cnameType) {
+ case "central-site":
+ def d = dnsName(n,null,'global')
+ cnames[d] = [values:[],status:dnsLookup(d,false)]
+ v.instances.each { n1, v1 ->
+ def v2 = tenants[n1]
+ if (v2.type != "opendcae-central") return
+ def d1 = dnsName(n,v2,'site')
+ if (cnames[d].value == null) cnames[d].value = d1
+ cnames[d].values += d1
+ }
+// println "n=$n cnameType=$cnameType ${p(cnames[d])}"
+// System.exit(3)
+ break;
+ }
+ }
+ (deploymentType[n].type['dns-service'] ?: [:]).each { n3, v3 ->
+ switch (v3['cluster-type']) {
+ case "gss" :
+ def d = dnsName(n,null,'global',n3)
+ cnames[d] = [value:dnsName(n,null,'gss',n3),status:dnsLookup(d)]
+ break
+ case "gss-edge" :
+ v.instances.each { n1, v1 ->
+ def v2 = tenants[n1]
+ def d = dnsName(n,v2,'site',n3)
+ cnames[d] = [value:dnsName(n,v2,'gss-edge',n3),status:dnsLookup(d)]
+ }
+// println "n=$n n3=$n3 ${p(cnames)}"
+// System.exit(3)
+ break
+ }
+ }
+ }
+ return res
+ }
+
+ def dnsLookup(n,boolean showDetails = true) {
+ def x = "nslookup $n".execute().text
+ List res = []
+ if (x.contains("server can't find")) return "Not registered"
+ def first = true
+ x.split('\n').each { line ->
+ if (line.startsWith("Address:")) {
+ if (first) {
+ first = false
+ return
+ }
+ def ip = line.substring(9)
+ res += "${ip2hostname(ip)} $ip"
+ }
+ }
+ return showDetails ? res.sort() : "Registered"
+ }
+ def ip2hostname(ip) {
+ def res = null
+ deploymentType.each { n, v ->
+ if (!n.startsWith('vm-')) return
+ v.instances.each { n1, v1 ->
+ v1.servers.each { n2, v2 ->
+ if (ip == v2.ip) res = n2
+ }
+ }
+ }
+ return res ?: "Unknown server"
+ }
+ def ssl() {
+ def res = [:]
+ deploymentType.each { n, v ->
+ if (!n.startsWith('vm-')) return
+ v.instances.each { n1, v1 ->
+ v1.servers.each { n2, v2 ->
+ res[n2] = [ names: v2['dns-arecords']]
+ res[n2].names += v2['dns-cnames']
+ res[n2].names += v2['dns-gss']
+ File f = new File("$root/$release-$envName/certificates/${n2}.pkcs12")
+ if (!f.exists())
+ res[n2].status = "No certificate"
+ else
+ res[n2].status = passwords[n2] ? "Certificate Exists" : "No Password"
+ }
+ }
+ }
+ return res
+ }
+
+ def destination2deployment(n,extra) {
+ if (extra['destination-entity-type']) {
+ def res = []
+ deploymentType.each { n1, v ->
+ if (n1.startsWith(extra['destination-entity-type'])) res += n1
+ }
+ return res
+ }
+ return [ extra['destination-entity'] ?: n ]
+ }
+
+ def findEndpoints(n, extra = [:]) {
+ if (n == "vm-all") {
+ return tenants.collect { n1, t -> n1 }
+ }
+ n = extra['destination-entity'] ?: n
+ if (deploymentType[n])
+ return deploymentType[n].tenantNames
+ // external entity
+ return [ n ]
+ }
+ def findIps(String n, String t, extra = [:]) {
+ n = extra['destination-entity'] ?: n
+ if (n == "vm-all") {
+ def res = []
+ deploymentType.each { n1, v1 ->
+ if (! n1.startsWith("vm-")) return
+ res += findIps(n1,t,extra)
+ }
+ return res
+ }
+ if (deploymentType[n] == null) {
+ // external entity
+ def v = ((env.networking ?: [:])['external-entities'] ?: [:])[n]
+ if (v == null) return ["TBD - env.yaml@networking.external-entities.$n" ]
+ if (v.ips != null) return v.ips
+ return v.collect {n1,v1 -> v1.ip}
+ }
+ def v = deploymentType[n].instances[t]
+// println "n=$n v=${p(deploymentType[n].instances[t])}"
+ if (n.startsWith("vm-")) {
+// println "n=$n v=${p(v.servers)}"
+ if (v==null) return []
+ return v.servers.collect { n1,v1 -> v1.ip }
+ }
+// println "n=$n v=${p(deploymentType.collect {n1,v1 -> n1})}"
+// println p(dockers)
+ return findIps(v.hostService,v.hostServiceInstance)
+ }
+ def streams2bus() {
+ def res = [:]
+ def otherFeeds = [:]
+ streams.streams.each { n, v ->
+// println "n=$n v=${object2json(v).toString(2)}"
+ def streamNames = []
+ def location = [:]
+ def auth = [:]
+ switch (v['databus-type']) {
+ case "topic":
+ streamNames += "topic:$n"
+ auth["topic:$n"] = "aaf"
+ break
+ case "topic-public":
+ streamNames += "topic:$n"
+ auth["topic:$n"] = "none"
+ break
+ case "ecomp":
+ streamNames += "ecomp:$n"
+ break
+ case "local":
+ tenants.each { n1, v1 -> streamNames += "local:$n:$n1" }
+ break
+ case "local-ecomp":
+ streamNames += "ecomp:$n"
+ tenants.each { n1, v1 ->
+ streamNames += "local:$n:$n1"
+ otherFeeds["local:$n:$n1"] = [ "ecomp:$n" ]
+ }
+ break
+ default: println "Unknown databus type: ${v['databus-type']}"
+ }
+ streamNames.each { streamName ->
+ switch (v['stream-type']) {
+ case "data-router":
+ def stream = [
+ '$class' : "org.openecomp.dcae.controller.core.stream.DatabusStreamFeed",
+ publishers : [:],
+ subscribers : [:],
+ feedDescription : v['description'],
+ asprClassification : v['aspr-classification'],
+ ]
+ if (v['databus-type'] == "local-ecomp") {
+ stream.publishers['forward'] = [:]
+ }
+ res[streamName] = stream
+ v.publishers.each { n1, v1 ->
+ switch (v1['publisher-type']) {
+ default:
+ if (streamName.startsWith("local")) {
+ def loc = streamName.split(':')[2]
+ def n2 = "$n1:$loc"
+ stream.publishers[n2] = [
+ localStreamId : v1['local-name'],
+ dcaeLocationName: loc
+ ]
+ }
+ if (streamName.startsWith("ecomp")) {
+ locationTypes['opendcae-central'].tenantNames.each { n3 ->
+// System.err.println "n1=$n1 n3=$n3 ${deploymentType[n1].instances[n3]}"
+ if (deploymentType[n1].instances[n3] == null || deploymentType[n1].instances[n3].size() == 0) return
+ def n2 = "$n1:$n3"
+// System.err.println "n2=$n2"
+ stream.publishers[n2] = [ localStreamId : v1['local-name'] ]
+ }
+ }
+ }
+ }
+ v.subscribers.each { n1, v1 ->
+ switch (v1['subscriber-type']) {
+ case "external":
+ if (streamName.startsWith("ecomp")) {
+ def n2 = "external:$n1"
+ stream.subscribers[n2] = [:]
+ stream.subscribers[n2].deliveryURL = substitute(v1['subscriber-url'],[:],null,null)
+ stream.subscribers[n2].username = substitute(v1['subscriber-user'],[:],null,null)
+ stream.subscribers[n2].userpwd = substitute(v1['subscriber-password'],[:],null,null)
+ }
+ break
+ default:
+ if (streamName.startsWith("local")) {
+ def loc = streamName.split(':')[2]
+ def n2 = "$n1:${loc}"
+ stream.subscribers[n2] = [
+ dcaeLocationName : loc,
+ localStreamId : v1['local-name'],
+ deliveryURL : substitute(v1['subscriber-url'],[:],n2,loc)
+ ]
+ }
+ }
+ }
+ if (otherFeeds[streamName]) {
+ // Add additional subscriber for forwarding to that feed
+ otherFeeds[streamName].each { n3 ->
+ def n2 = "forward:$n3"
+ stream.subscribers[n2] = [
+ otherFeedName : n3
+ ]
+ }
+ }
+ break
+ case "message-router":
+ def stream = [
+ '$class' : "org.openecomp.dcae.controller.core.stream.DatabusStreamTopic",
+ clients : [:],
+ topicDescription : v['description'],
+ asprClassification : v['aspr-classification'],
+ authenticationMethod : auth[streamName],
+ ]
+ res[streamName] = stream
+ tenants.each { loc, w1 ->
+ v.publishers.each { n1, v1 ->
+ def n2 = "$n1:${loc}"
+ stream.clients[n2] = [
+ localStreamId : v1['local-name'],
+ clientRole : v1['role'],
+ username : v1['user'] ? substitute(v1['user'],[:],n1,loc) : null,
+ userpwd : v1['password'] ? substitute(v1['password'],[:],n1,loc) : null,
+ action : ["pub","view"],
+ dcaeLocationName: loc,
+ ]
+ }
+ v.subscribers.each { n1, v1 ->
+ def n2 = "$n1:${loc}"
+ stream.clients[n2] = [
+ localStreamId : v1['local-name'],
+ clientRole : v1['role'],
+ username : v1['user'] ? substitute(v1['user'],[:],n1,loc) : null,
+ userpwd : v1['password'] ? substitute(v1['password'],[:],n1,loc) : null,
+ action : ["sub","view"],
+ dcaeLocationName: loc,
+ ]
+ }
+ }
+ break
+ }
+ }
+ }
+// println "res=${object2json(res).toString(2)}"
+ return res
+ }
+ def substitute(o, env1, s, i) {
+ SimpleTemplateEngine engine = new SimpleTemplateEngine()
+ String res = o
+ env1.dcae = this
+ env1.passwords = env.passwords
+ init(s, i)
+ switch (o) {
+ case List:
+ def l = []
+ o.each { e ->
+ l += substitute(e, env1, s, i)
+ }
+ return l
+ case Map:
+ def m = [:]
+ o.each { n,v ->
+ m[n] = substitute(v, env1, s, i)
+ }
+ return m
+ }
+ try {
+ res = engine.createTemplate("$o").make(env1)
+ if (res.startsWith("_LIST_:") && res.endsWith(":_LIST_")) {
+ res = res.replace("_LIST_:","").replace(":_LIST_","")
+ JSONArray a = new JSONArray(res)
+ return json2object(a)
+ }
+ } catch (e) {
+ System.out.println "$o"
+ System.err.println "ERROR $e"
+ System.exit(2)
+ }
+ return res
+ }
+
+ def orchOld(format = null) {
+ def res = [
+ central : [
+ postgresURL: "jdbc:postgresql://${serviceFqdn('vm-postgres-sql')}:5432/XXX",
+ postgresUser: "YYYYY",
+ postgresPassword: "\${env.passwords.postgres.XXX.YYYYY}",
+ dmaapDcaeLocation: "????",
+ dmaapMRHosts: allServersFqdn("vm-databus-mr-node")
+ ],
+ locations:[:]
+ ]
+ tenants.each { n, tenant ->
+ res[n] = [
+ locationType: tenant.type,
+ dmaapDcaeLocation : n,
+ dmaapMrService : dnsName("vm-databus-mr-node",tenant,"site"),
+ aaiLocationName: tenant['aai-location-name'] ?: "TBD tenant.yaml#${n}.aai-location-name",
+ clli: tenant['clli'] ?: "TBD tenant.yaml#${n}.clli",
+ docker_host_service : " ??? PLACEHOLDER_FOR_DOCKER_HOST_SERVICE_INSTANCE_THIS_EDGE",
+ docker_registry : "??? PLACEHOLDER_FOR_DOCKER_REGISTRY_HOST_PORT_THIS_EDGE",
+ ]
+ }
+
+ /*
+ "locations" : {
+ "central" : {
+ "postgresURL? : PLACEHOLDER_FOR_POSTGRES_URL,
+ ?postgresUser? : PLACEHOLDER_FOR_POSTGRES_USER,
+ ?postgresPassword?: PLACEHOLDER_FOR_POSTGRESS_PASSWORD,
+ ?dmaapDcaeLocation?: PLACEHOLDER_FOR_DMAAP_DCAE_LOCATION_CENTRAL,
+ ?dmaapMRHosts? : PLACEHOLDER_FOR_DMAAP_MR_HOSTS_CENTRAL
+ },
+ "PLACEHOLDER_FOR_CLLI_CODE_FOR_EDGE_LOCATION_1" : {
+ "cdap_cluster_service" : PLACEHOLDER_FOR_CDAP_CLUSTER_SERVICE_INSTANCE_THIS_EDGE,
+ ?docker_host_service? : PLACEHOLDER_FOR_DOCKER_HOST_SERVICE_INSTANCE_THIS_EDGE,
+ ?docker_registry? : PLACEHOLDER_FOR_DOCKER_REGISTRY_HOST_PORT_THIS_EDGE,
+ "dmaapDcaeLocation" : PLACEHOLDER_FOR_DMAAP_DCAE_LOCATION_THIS_EDGE,
+ ?dmaapMRHosts? : [ PLACEHOLDER_FOR_LIST_OF_MR_HOSTS_THIS_EDGE
+ },
+ "PLACEHOLDER_FOR_CLLI_CODE_FOR_EDGE_LOCATION_2" : {
+ Similar to above
+ }
+ /* Repeat for all edge locations in the environment
+ * Could use a looping construct if your template language has one
+ */
+ switch (format) {
+ case "base64" : return "'" + object2json(res).toString(2).bytes.encodeBase64(true) + "'"
+ default: return res
+ }
+ }
+
+ def orch(format = null) {
+ def postgres = release == "1607" ? 'vm-postgres-sql' : 'vm-postgresql-central'
+ def res = [
+ central : [
+ postgresHost: "${serviceFqdn(postgres)}",
+ postgresDTIPassword: "${password('postgres.dti.viewer')}"
+ ]
+ ]
+ tenants.each { n, tenant ->
+ res[tenant['aai-location-name'] ?: "TBD - tenants.yaml@${n}.aai-location-name"] = [
+ aaiLocationName:tenant['aai-location-name'],
+ locationType: tenant.type,
+ dcaeLocationName : n,
+ dmaapMrService : dnsName("vm-databus-mr-node",tenant,"site"),
+ dockerHost1: serversFqdn("vm-docker-host-1", n)[0],
+ dockerHost2: serversFqdn("vm-docker-host-2", n)[0],
+ dockerHost3: serversFqdn("vm-docker-host-3", n)[0],
+ ]
+ }
+
+ switch (format) {
+ case "base64" : return "'${object2json(res).toString(2).bytes.encodeBase64(true)}'".replace('\n','\n\n')
+ case "json" : return object2json(res).toString(2)
+ default: return res
+ }
+ }
+
+
+ def controllerCluster() {
+ def res = [servers:[:]]
+ def ee = (env['vm-templates'] ?: [:])['vm-controller'] ?: [:]
+ def roles = ee['server-roles'] ?: [:]
+ deploymentType['vm-controller'].instances.each { n, v ->
+ v.servers.each { n1, v1 ->
+
+ println "$n1 ${roles[n1] ?: 'UNKNOWN'}"
+ res.servers[n1] = [
+ role : roles[n1] ?: 'UNKNOWN',
+ data : [
+ state :[:]
+ ]
+ ]
+ }
+ }
+ return res
+ }
+ def chefTopo() {
+ def topo = "$release-$envName"
+ def chef = [
+ id: topo,
+ name: topo,
+ chef_environment: "_default",
+ tags: [],
+ strategy: "via_cookbook",
+ strategy_data: [ cookbook: topo, filename: "topology"],
+ nodes : []
+ ]
+ deploymentType.each { n, v ->
+ if (! n.startsWith("vm-")) return
+ println "$n"
+ v.instances.each { n1, v1 ->
+ v1.servers.each { n2, v2 ->
+// println "$n $n1 $n2 $v2"
+ chef.nodes += [
+ name : v2['dns-name'],
+ tags : [],
+ chef_environment: "_default",
+ run_list: [ "recipe[$release]","recipe[dcae-nagios]" ],
+ normal: [ tags: [] ]
+ ]
+ }
+ }
+ }
+ return chef
+ }
+
+ def flavor(n,t) {
+ def tt = tenants[t]
+ if (tt == null) return "NONE $n $t"
+ def v = deploymentType[n]
+ if (!aEnv())
+ return v['vm-type'].replace('vm-','dcae-')
+ def vmType = v.type['openstack-vm-type'] ?: [:]
+ def e = (env['vm-templates'] ?: [:])[v['vm-type']] ?:[:]
+ def d = e['openstack-flavor-name'] ? e['openstack-flavor-name'] : vmType['openstack-flavor-name']
+ switch (d) {
+ case String: return d
+ case Map: return d[tt['type']]
+ }
+ }
+
+ def showFlavors() {
+ def res = [:]
+ deploymentType.each { n, v ->
+ if (!n.startsWith('vm')) return
+ res[n] = [:]
+ v.instances.each { n1, v1 ->
+ res[n][n1] = flavor(n,n1)
+ }
+ }
+ return res
+ }
+ def list(x) {
+ return "_LIST_:${object2json(x)}:_LIST_"
+ }
+
+ static main(args) {
+
+ }
+}
diff --git a/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/DocUtils.java b/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/DocUtils.java
new file mode 100644
index 0000000..7b30cf5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/DocUtils.java
@@ -0,0 +1,309 @@
+
+/*-
+ * ============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.dcae.controller.operation.utils;
+
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.json.JSONArray;
+import org.json.JSONObject;
+import org.yaml.snakeyaml.DumperOptions;
+import org.yaml.snakeyaml.Yaml;
+
+import org.openecomp.ncomp.utils.maps.CounterMap;
+import org.openecomp.ncomp.webservice.utils.JsonUtils;
+
+import static org.openecomp.ncomp.sirius.manager.console.Utils.*;
+
+public class DocUtils {
+ protected String env;
+ protected static String root = "/home/vagrant/git/org.openecomp.dcae.controller.operation";
+ protected String release;
+
+// public DocUtils(String release, String env) {
+// super();
+// this.release = release;
+// this.env = env;
+// }
+
+ public DocUtils(String release, String env, String root1, String root2) {
+ super();
+ this.release = release;
+ this.env = env;
+ if (root1 != null) root = root1;
+ }
+
+
+ @SuppressWarnings("rawtypes")
+ public Map tenants() {
+ String fileName = release + "-" + env + "/tenants.yaml";
+ Map o = (Map) file2object(fileName);
+ return o;
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ public Map vms() {
+ LinkedHashMap> s = new LinkedHashMap>();
+ LinkedHashMap> ss = new LinkedHashMap>();
+ CounterMap index = new CounterMap();
+ Map locationTypes = locationTypes();
+ Map vmTypes = (Map) types("vm");
+ Map tenants = tenants();
+ for (String t : locationTypes.keySet()) {
+ for (String tenantKey : tenants.keySet()) {
+ Map tenant = (Map) tenants.get(tenantKey);
+ if (! t.equals(tenant.get("type"))) continue;
+ Map locationType = (Map) locationTypes.get(t);
+ Map vmDeployments = (Map) locationType.get("vm-deployments");
+ for (String vmDeploymentKey : vmDeployments.keySet()) {
+ Map vmDeployment = (Map) vmDeployments.get(vmDeploymentKey);
+ Map vmType = (Map) vmTypes.get(vmDeployment.get("vm-type"));
+ if (s.get(vmDeploymentKey) == null) {
+ LinkedHashMap s1 = new LinkedHashMap();
+ s.put(vmDeploymentKey, s1);
+ s1.put("vm-type", vmDeployment.get("vm-type"));
+ s1.put("release", vmDeployment.get("release"));
+ s1.put("milestone", vmDeployment.get("milestone"));
+ boolean useController = (Boolean) get(vmType,"lifecycle-management", "use-dcae-manager",new Boolean(false));
+ s1.put("use-controller", useController);
+ LinkedHashMap s2 = new LinkedHashMap();
+ s1.put("locations", s2);
+ ss.put(vmDeploymentKey, s2);
+ }
+// System.err.println (" XXx:" + t + " " + vmDeploymentKey + " " + vmTypes.keySet()+ " " + vmDeployment.get("vm-type"));
+// if (vmType.containsKey("error")) continue;
+ if (vmType == null) {
+
+ }
+ Integer numVms = (Integer) vmType.get("number-vms-per-location");
+ if (numVms == null) numVms = 2;
+// System.err.println (" XXx:" + t + " " + vmDeploymentKey + " " + vmType.keySet()+ " " + tenant.keySet());
+ LinkedHashMap s1 = new LinkedHashMap();
+ LinkedHashMap sss = new LinkedHashMap();
+ s1.put("dcae-service", vmDeploymentKey);
+ s1.put("dcae-service-instance", tenantKey);
+ s1.put("dcae-container", "/locations/" + tenantKey);
+ LinkedHashMap s2 = new LinkedHashMap();
+ s1.put("vms", s2);
+ String shortName = short_name(vmDeployment.get("vm-type"));
+ String indexKey = tenant.get("name-short") + ":" + shortName;
+ numVms = (Integer) vmType.get("number-vms-per-location");
+ if (numVms == null) numVms = 2;
+ for (int i = 0 ; i < numVms; i++) {
+ String name = vmname(tenant,vmType,index.get(indexKey));
+// System.err.println ("new VM: " + name + " " + index.get(indexKey));
+ index.increment(indexKey);
+ LinkedHashMap s3 = new LinkedHashMap();
+ s3.put("dns-name", name + "." + tenant.get("dns-surfix"));
+ s2.put(name, s3);
+ }
+ ss.get(vmDeploymentKey).put(vmDeploymentKey+"-"+tenantKey, s1);
+ }
+ }
+ }
+ return s;
+ }
+
+ private String short_name(Object object) {
+ String fileName = release + "/vm-templates/" + object + ".yaml";
+ Map o = (Map) file2object(fileName);
+ return (String) o.get("short-name");
+ }
+
+ Map locationTypes() {
+ String fileName = release + "/location-types.yaml";
+ @SuppressWarnings("unchecked")
+ Map locationTypes = (Map) file2object(fileName);
+ return locationTypes;
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ public Map dockers() {
+ LinkedHashMap s = new LinkedHashMap();
+ Map locationTypes = locationTypes();
+ Map dockerTypes = (Map) types("docker");
+ Map tenants = tenants();
+ for (String t : locationTypes.keySet()) {
+ for (String tenantKey : tenants.keySet()) {
+ Map tenant = (Map) tenants.get(tenantKey);
+ if (! t.equals(tenant.get("type"))) continue;
+ Map locationType = (Map) locationTypes.get(t);
+ Map dockerDeployments = (Map) locationType.get("docker-deployments");
+ if (dockerDeployments == null) continue;
+ for (String dockerDeploymentKey : dockerDeployments.keySet()) {
+ Map dockerDeployment = (Map) dockerDeployments.get(dockerDeploymentKey);
+ Map dockerType = (Map) dockerTypes.get(dockerDeployment.get("docker-type"));
+// if (dockerType.containsKey("error")) continue;
+// System.err.println (" XXx:" + t + " " + vmDeploymentKey + " " + vmType.keySet()+ " " + container.keySet());
+ LinkedHashMap s1 = new LinkedHashMap();
+ s1.put("docker-type", dockerDeployment.get("docker-type"));
+ s1.put("release", dockerDeployment.get("release"));
+ s1.put("milestone", dockerDeployment.get("milestone"));
+ s1.put("use-controller", true);
+ s1.put("dcae-service", dockerDeploymentKey);
+ s1.put("dcae-service-instance", tenantKey);
+ String container = (String) dockerDeployment.get("container");
+// container = container.replace("${location-name}", tenantKey);
+ s1.put("dcae-container", container);
+ s1.put("location-type", t);
+ s.put(dockerDeploymentKey, s1);
+ }
+ }
+ }
+ return s;
+ }
+
+ private Map containers() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ private Object get(Map m, String k1, String k2, Object def) {
+ Object o = m.get(k1);
+ if (o instanceof Map, ?>) {
+ @SuppressWarnings("unchecked")
+ Map m1 = (Map) o;
+ return get(m1,k2,def);
+ }
+ return def;
+ }
+
+ private Object get(Map m, String k1, Object def) {
+ Object o = m.get(k1);
+ return o == null ? def : o;
+ }
+
+ static LinkedHashMap env2char = new LinkedHashMap();
+
+ static {
+ env2char.put("DEV", "zldc");
+ env2char.put("FTL", "zldc");
+ env2char.put("FTL2", "zldc");
+ env2char.put("IST", "zltc");
+ env2char.put("ISTFTL", "zltc");
+ env2char.put("ETE", "zlsc");
+ env2char.put("PROD", "zlpc");
+ }
+
+
+ private String vmname(Map tenant, Map vmType, int i) {
+ String env1 = (String) tenant.get("environment-type");
+ if (env1 == null) env1 = env;
+ String s = env2char.get(env1);
+ if (s == null) s = env2char.get("DEV");
+ return s + tenant.get("name-short") + vmType.get("short-name") + String.format("%02d", i);
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ public Map types(String dType) {
+ LinkedHashMap s = new LinkedHashMap();
+ Map locationTypes = locationTypes();
+ for (String locationType : locationTypes.keySet()) {
+ Map o1 = (Map) locationTypes.get(locationType);
+ Map o2 = (Map) o1.get(dType + "-deployments");
+ if (o2 == null) continue;
+ for (String type : o2.keySet()) {
+ Map o3 = (Map) o2.get(type);
+ if (o3.containsKey(dType + "-type"))
+ type = (String) o3.get(dType + "-type");
+ if (s.containsKey(type)) continue;
+ String path = release + "/" + dType + "-templates/" + type + ".yaml";
+ s.put(type,file2object(path));
+ }
+ }
+ return s;
+ }
+
+ protected static Object file2object(String path) {
+ return file2object(path, true);
+ }
+ protected static Object file2object(String path, boolean required) {
+// System.err.println (root + "/" + path);
+ try {
+ if (path.endsWith(".json")) {
+// System.err.println (root + "/" + path);
+ return json2object(JsonUtils.file2json(root + "/" + path));
+ }
+ else {
+ Yaml yaml = new Yaml();
+ String s = new String(Files.readAllBytes(Paths.get(root + "/" + path)), StandardCharsets.UTF_8);
+ Object o = yaml.load(s);
+ if (o != null) return o;
+ }
+ } catch (org.yaml.snakeyaml.parser.ParserException e) {
+ System.err.println("YAML exception: " + path + " " + e);
+ System.exit(2);
+ } catch (Exception e) {
+ System.err.println("exception: " + path + " " + e.getClass());
+ if (required)
+ System.err.println("exception: " + path + " " + e);
+ else {
+// System.err.println("exception: " + path + " " + e);
+ return null;
+ }
+ }
+ HashMap m = new HashMap();
+ m.put("error", "No information about: " + path);
+ return m;
+ }
+
+ private static String object2yaml(Object object, List l) {
+ DumperOptions options = new DumperOptions();
+ options.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK);
+ options.setSplitLines(true);
+ options.setWidth(100000);
+ Yaml y = new Yaml(options);
+ Object o = object2json(object);
+ if (o instanceof JSONArray) {
+ JSONObject j = new JSONObject();
+ j.put("ARRAY", object);
+ o = j;
+ }
+ JSONObject json = (JSONObject) o;
+ if (l != null) {
+ for (String s : l) {
+ if (json.has(s))
+ json.remove(s);
+ }
+ }
+ // the replace is due to JSONObject changes "" to "<\/"
+ Object data = y.load(json.toString().replace("<\\/", ""));
+ return y.dump(data);
+ }
+
+ public static void main(String[] args) {
+ DocUtils d = new DocUtils("1607", "ISTFLT",null,null);
+// System.err.println(object2yaml(d.tenants().get("local-willows"),null));
+// System.err.println(object2yaml(d.types("vm"),null));
+// System.err.println(object2yaml(d.types("docker"),null));
+// System.err.println(object2yaml(d.types("cdap"),null));
+// System.err.println(object2yaml(d.vms(),null));
+ System.err.println(object2yaml(d.dockers(),null));
+ }
+
+}
diff --git a/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/GenControllerConfiguration.groovy b/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/GenControllerConfiguration.groovy
new file mode 100644
index 0000000..38f48b0
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-operation-utils/src/main/java/org/openecomp/dcae/controller/operation/utils/GenControllerConfiguration.groovy
@@ -0,0 +1,756 @@
+
+/*-
+ * ============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.dcae.controller.operation.utils
+
+import groovy.json.JsonOutput;
+import groovy.text.SimpleTemplateEngine
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Map;
+
+import org.codehaus.groovy.ast.stmt.CatchStatement;
+import groovy.io.FileType
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject
+import org.json.JSONArray
+import org.json.JSONObject;
+
+import org.openecomp.dcae.controller.core.service.DcaeLocation;
+import org.openecomp.dcae.controller.core.service.ServiceFactory;
+import org.openecomp.dcae.controller.platform.controller.ControllerFactory;
+import org.openecomp.dcae.controller.platform.controller.DcaePlatformController;
+import org.openecomp.ncomp.openstack.OpenstackFactory;
+import org.openecomp.ncomp.openstack.location.LocationFactory;
+import org.openecomp.ncomp.openstack.location.LocationPackage;
+import org.openecomp.ncomp.openstack.location.OpenStackLocation
+import org.openecomp.ncomp.openstack.location.OpenStackProject;
+import org.openecomp.ncomp.openstack.util.OpenstackAdapterFactory;
+import org.openecomp.ncomp.sirius.manager.ManagementServer;
+import org.openecomp.ncomp.utils.StringUtil;
+import org.openecomp.ncomp.webservice.utils.FileUtils;
+import org.openecomp.ncomp.sirius.manager.console.Utils
+
+import static org.openecomp.ncomp.sirius.manager.console.Utils.*
+
+class GenControllerConfiguration extends DocUtils {
+
+ String destinationRoot
+ ManagementServer server
+ DcaePlatformController o
+ DcaePlatformConfiguration platformConfig
+ String destRoot
+ String release
+ String env
+
+
+ public GenControllerConfiguration(String release, String env, String root1, String root2) {
+ super(release,env,root1,root2);
+ this.release = release
+ this.env = env
+ destinationRoot = (root2 ?: root) + "/" + release + "-" + env + "/controller-gen"
+ destRoot = root2 ?: root
+ File d = new File(destinationRoot)
+ server = new ManagementServer()
+ o = ControllerFactory.eINSTANCE.createDcaePlatformController()
+ platformConfig = new DcaePlatformConfiguration(release,env,root1,root2)
+ server.setObject(o)
+ ["controller-gen","chef-repo-gen","cloudify-gen","general-gen"].each { dd ->
+ d = new File("${root2 ?: root}/$release-$env/$dd")
+ if (d.exists())
+ FileUtils.deleteDirectory(d)
+ }
+ println "destinationRoot=$destinationRoot"
+ }
+
+ void copyFile(File source, File destination, boolean doSub = false) {
+ destination.getParentFile().mkdirs()
+ if (doSub && source.bytes == source.text.bytes) {
+ // TEXT file
+ destination << substitute(source.text,[:],"???","???")
+ }
+ else
+ destination.bytes = source.bytes
+ }
+
+ void copyDirectory(File sourceDir, File destDir, boolean doSub = false) throws IOException {
+ if (!destDir.exists()) {
+ destDir.mkdirs();
+ }
+ for (File f : sourceDir.listFiles()) {
+ File dest = new File(destDir, f.getName());
+ if (f.isDirectory()) {
+ copyDirectory(f, dest, doSub);
+ continue;
+ }
+ if (f.isFile()) {
+ copyFile(f, dest, doSub);
+ }
+ }
+ }
+ void copyFileFromDirectory(File sourceDir, File destDir) throws IOException {
+ if (!destDir.exists()) {
+ destDir.mkdirs();
+ }
+ for (File f : sourceDir.listFiles()) {
+ File dest = new File(destDir, f.getName());
+ if (f.isDirectory()) {
+ copyDirectory(f, dest);
+ continue;
+ }
+ if (f.isFile()) {
+ copyFile(f, dest);
+ }
+ }
+ }
+
+ def void createChefConfiguration() {
+ save2("/topologies/${release}-${env}", platformConfig.chefTopo(), "chef")
+ if (release == "1607") return
+ platformConfig.deploymentType.each { n, v ->
+ if (v.type == null || ! n.startsWith("vm-")) return
+ def ooo = v.type['vm-setup']
+ def oo = [
+ 'nagios-configuration' : ooo['nagios-configuration'],
+ 'splunk-configuration' : ooo['splunk-configuration'],
+ 'configuration-files':[:]
+ ]
+ def xx = oo['configuration-files']
+ v.instances.each { i, instance ->
+ def n2 = v['vm-type']
+ [
+ [dirname : "$root/$release/vm-config/$n2", nameType : "a"],
+ [dirname : "$root/$release/vm-config-chef/$n2", nameType : "a"],
+ [dirname : "$root/$release/other-config/$n2", nameType : "b"],
+ [dirname : "$root/$release/monitoring-config", nameType: "c"]
+ ].each { v3 ->
+ def dir = new File(v3.dirname)
+ if (dir.exists()) {
+ recurseFiles(dir).each { File file ->
+ def nn
+ switch (v3.nameType) {
+ case "a": nn = "$n2-$file.name"; break;
+ case "b": nn = "$file.name"; break;
+ case "c": nn = "monitoring-agent-$file.name"; break;
+ }
+ if (nn.endsWith(".base64")) {
+ nn = nn.replace(".base64","")
+ xx[nn] = [ destination: "/var/config/DCAE/chef/$nn", encoding:"base64", content: file.text]
+ }
+ else
+ xx[nn] = [ destination: "/var/config/DCAE/chef/$nn", content: file.text]
+ }
+ }
+ }
+ def o = []
+ String str
+ str = object2json(oo)
+ str = DocUtils.object2yaml(oo,[])
+// println str
+// str = str.replace("\\n", "\\\\n").replace("\\\\", "\\")
+// println str
+// def ENV = ((envMapGlobal['vm-templates'] ?: [:])[n2]) ?: [:]
+// println "ENV $n2 $ENV"
+// str = substitute(str,ENV,n,i)
+// f.getParentFile().mkdirs()
+// println str
+// f << str
+// System.exit(0)
+ instance.servers.each { n3, v3 ->
+ def ENV = ((envMapGlobal['vm-templates'] ?: [:])[n2]) ?: [:]
+// println "ENV $n2 $ENV"
+ platformConfig.vmKey = certificatePassword(n3)
+ platformConfig.vmName = n3
+// println "n3=$n3 v3=$v3 vmKey=$platformConfig.vmKey"
+// System.exit(0)
+ def str1 = substitute(str,ENV,n,i)
+ saveYaml("files/${n3}",str1,"chef")
+ platformConfig.vmKey = null
+ }
+ }
+ }
+ }
+
+ def recurseFiles(File dir) {
+ def l = []
+ dir.eachFileRecurse (FileType.FILES) { file -> l += file }
+ return l.sort { it }
+ }
+
+ def void createConfiguration() {
+ def envMap = file2object("$release-$env/env.yaml", false)
+ save("/configuration", new JSONObject())
+ File dir = new File(root + "/" + release + "/controller-template")
+ File dir2 = new File(destinationRoot + "/resources")
+ File dir3 = new File(destinationRoot + "/resources/descriptors")
+ copyDirectory(dir, dir2);
+ (platformConfig.env['users'] ?: [:]).each { n, v ->
+ save("/users/$n",v)
+ }
+ ["vm","docker","cdap","other"].each { t ->
+ File dir4 = new File("$root/$release/${t}-descriptors")
+ dir4.listFiles().each { f ->
+ copyFile(f, new File(dir3,f.name));
+ }
+ }
+ File config1 = new File(root + "/" + release + "/vm-config/vm-controller")
+ File config2 = new File(destinationRoot + "/config")
+ copyDirectory(config1, config2, true);
+ File config11 = new File(root + "/" + release + "-" + env + "/config")
+ File config21 = new File(destinationRoot + "/config")
+ copyDirectory(config11, config21);
+ File cert1 = new File(root + "/" + release + "-" + env + "/certificates")
+ File cert2 = new File(destinationRoot + "/config")
+ copyDirectory(cert1, cert2);
+ // TODO remove this old stuff
+// println platformConfig.types.collect { String n, v -> n }
+ platformConfig.types.each { String n, v ->
+ if (!n.startsWith("vm")) return
+ if (!platformConfig.types[n]['openstack-vm-type']) {
+ System.err.println "No vm type for $n"
+ return
+ }
+ def n1 = n.replace("vm-", "dcae-")
+ save("/openstack/vmTypes/$n1",platformConfig.genVmType(n))
+ }
+ def chef = file2object("$release-$env/chef.yaml", false)
+ def maven = file2object("$release-$env/maven.yaml", false)
+ def ssl = file2object("$release-$env/ssl.yaml", false)
+ platformConfig.deploymentType.each { n, v ->
+ if (v.type == null || ! n.startsWith("vm-")) return
+ if (v.type['vm-setup'] == null) v.type['vm-setup'] = ['configuration-files' :[:]]
+ def oo = v.type['vm-setup']
+ if (oo['configuration-files'] == null) oo['configuration-files'] = [:]
+ def xx = oo['configuration-files']
+ v.instances.each { i, instance ->
+ File f = new File("$destinationRoot/config/instances/$n/${i}.yaml")
+// println platformConfig.p(oo)
+ if (v.type['openstack-vm-type'] && v.type['openstack-vm-type']['disk-partitions']) {
+ xx.mount_config = [
+ destination: "/tmp/dcae-mount.conf",
+ content: DocUtils.object2yaml(v.type['openstack-vm-type']['disk-partitions'],[])
+ ]
+ }
+ if (chef) {
+ chef['pem-files'].each { n1, v1 ->
+ xx["chef-$n1"] = v1
+ }
+ }
+ if (maven && maven.settings) {
+ xx["maven-settings"] = maven.settings
+ }
+ if (ssl && ssl.certificates) {
+ ssl.certificates.each { n4, v4 ->
+ xx[n4] = v4
+ }
+ }
+ def aa = file2object("$release-$env/vm-instances/${n}.yaml", false) ?: [:]
+ def aaa = aa['configuration-files'] ?: [:]
+ aaa.each { n4, v4 ->
+ xx[n4] = v4
+ }
+ def n2 = v['vm-type']
+ def vmConfigDir = new File("$root/$release/vm-config/$n2")
+ if (vmConfigDir.exists()) {
+ recurseFiles(vmConfigDir).each { file ->
+ def nn = "$n2-$file.name"
+ if (nn.endsWith(".base64")) {
+ nn = nn.replace(".base64","")
+ xx[nn] = [ destination: "/tmp/$nn", encoding:"base64", content: file.text]
+ }
+ else
+ xx[nn] = [ destination: "/tmp/$nn", content: file.text]
+ }
+ }
+ def vmConfigDir2 = new File("$root/$release-$env/vm-config/$n2")
+ System.err.println "XXXXX: $vmConfigDir2"
+ if (vmConfigDir2.exists()) {
+ System.err.println "XXXXX: $vmConfigDir2"
+ recurseFiles(vmConfigDir2).each { file ->
+ System.err.println "XXXXX: $file"
+ def nn = "$n2-$file.name"
+ if (nn.endsWith(".base64")) {
+ nn = nn.replace(".base64","")
+ xx[nn] = [ destination: "/tmp/$nn", encoding:"base64", content: file.text]
+ }
+ else
+ xx[nn] = [ destination: "/tmp/$nn", content: file.text]
+ }
+ }
+ def otherConfigDir = new File("$root/$release/other-config/$n2")
+ if (otherConfigDir.exists()) {
+ recurseFiles(otherConfigDir).each { file ->
+ def nn = "$file.name"
+ xx[nn] = [
+ destination: "/tmp/$nn",
+ content: file.text
+ ]
+ }
+ }
+ recurseFiles(new File("$root/$release/monitoring-config")).each { file ->
+ def nn = "monitoring-agent-$file.name"
+ xx[nn] = [
+ destination: "/tmp/$nn",
+ content: file.text
+ ]
+ }
+ def o = []
+ String str
+ str = object2json(oo)
+ str = DocUtils.object2yaml(oo,[])
+// println str
+ str = str.replace("\\n", "\\\\n").replace("\\\\", "\\")
+// println str
+ def ENV = ((envMapGlobal['vm-templates'] ?: [:])[n2]) ?: [:]
+// println "ENV $n2 $ENV"
+ str = substitute(str,ENV,n,i)
+ f.getParentFile().mkdirs()
+// println str
+ f << str
+// System.exit(0)
+ if (release == "1607") {
+ instance.servers.each { n3, v3 ->
+ saveYaml("files/${n3}",str,"chef")
+ }
+ }
+ }
+ }
+ save("/databus",[streams : platformConfig.streams2bus()])
+ save("/cluster",platformConfig.controllerCluster())
+ }
+
+ void createLocations() {
+ Map tenants = tenants();
+ o.openstack = OpenstackFactory.eINSTANCE.createOpenStackController()
+ save("/openstack", new JSONObject())
+ tenants.each { n, tenant ->
+ DcaeLocation loc = ServiceFactory.eINSTANCE.createDcaeLocation()
+ o.getLocations().add(loc)
+ loc.name = n
+ loc.locationType = tenant.type
+ if (tenant.openstack != null) {
+ OpenStackLocation l = genEcore(LocationPackage.eINSTANCE.openStackLocation, tenant.openstack)
+ l.name = n
+ o.openstack.locations += l
+ OpenStackProject p = genEcore(LocationPackage.eINSTANCE.openStackProject, tenant.openstack.tenant)
+ l.projects += p
+ loc.openstackProject = p
+ l.allowCreateFlavor = (! platformConfig.aEnv() )
+ save("/openstack/locations/$n",l)
+ }
+ save("/locations/$n",loc)
+ }
+ }
+
+ def throw1(s) {
+ throw new RuntimeException(s)
+ }
+
+ void createServiceInstances() {
+ def envMap = file2object("$release-$env/env.yaml", false) ?: ['vm-templates':[:]]
+ vms().each { n1, vmDeployment ->
+// System.err.println "$n1 $vmDeployment"
+ def t = vmDeployment['vm-type']
+ vmDeployment.locations.each { n , vm ->
+// System.err.println "$n $vm"
+ def m = [:]
+ def s = vm['dcae-service']
+ def i = vm['dcae-service-instance']
+ def descriptor = file2object("$release/vm-descriptors/${s}.json", false)
+ if (descriptor == null) {
+ System.err.println "No descriptor for $s"
+ return
+ }
+ def template = file2object("$release/vm-service-instance-templates/${n}.yaml", false)
+ def vmTemplate = file2object("$release/vm-templates/${t}.yaml")
+// System.err.println "$n descript=$descriptor"
+// System.err.println "$n template=$template"
+ m['$class'] = "${descriptor.servicePackage}.${descriptor.serviceInstanceClass}"
+ m.vmType = [ '$ref' : "/openstack/vmTypes/${t.replace('vm-','dcae-')}" ]
+ m.location = [ '$ref' : vm['dcae-container'] ]
+ m.numberOfServers = vmTemplate['number-vms-per-location']
+ m.iedsAdmin = (envMap['ieds'] ?: [:])['admin-user'] ?: "TBD - env.yaml@ieds.admin-user"
+ m.chefUser = (envMap['chef'] ?: [:])['user'] ?: "TBD - env.yaml@chef.user"
+ m.chefOrg = (envMap['chef'] ?: [:])['org'] ?: "TBD - env.yaml@chef.group"
+ m.chefTopology = "$release-$env"
+ m.openstackFlavor = platformConfig.flavor(s,i)
+ if ((vmTemplate['dns-arecords'] ?: []).contains('site')) {
+ platformConfig.init(s,i)
+ m.serviceFqdn = platformConfig.siteServiceFqdn()
+ }
+ ["users","adminUsers"].each { xx ->
+ def xx1 = envMap['vm-templates'] ?: [:]
+ if (xx1 == null) { throw1 "No vm-templates in $release-$env/env.yaml" }
+ def xx2 = xx1[t]
+ if (xx2 == null) { xx2 = xx1['default'] ?: [users:[],adminUsers:[]] }
+ if (xx2 == null) { throw1 "No vm-template for $t in $release-$env/env.yaml" }
+ def xx3 = xx.replace("U", "-u")
+// System.err.println "$xx1 $t"
+ m[xx] = []
+ xx2[xx3].each { u ->
+ m[xx] += [ '$ref' : "/users/$u" ]
+ }
+ }
+ m.servers = [:]
+ vm.vms.each { n2, vm2 ->
+ m.servers[n2] = [
+ certificatePassword: certificatePassword(n2),
+ networks : [ public : [
+ dnsName:vm2['dns-name'],
+ ip:ipAssignment(n2),
+ ]]
+ ]
+ }
+// System.err.println "$n m=$m"
+ m.applicationIds = vmTemplate['application-ids'] ?: ["dcae"]
+ m.adminId = vmTemplate['admin-id'] ?: "attcloud"
+ def iConf = vmTemplate['controller-instance-configuration'] ?: [:]
+ iConf.each { nn, v -> m[nn] = substitute(v,envMap['vm-templates'][t],s,i) }
+ // manager port
+ def x = vmTemplate['lifecycle-management'] ?: ['use-dcae-manager': false]
+ if (! x['use-dcae-manager']) {
+ m.managerPortNumber = -1
+ }
+ else {
+ m.managerPortNumber = x['manager-port'] ?: 9999
+ }
+ def installSteps = vmTemplate['installation-steps'] ?: []
+ m.steps = [:]
+ def stepIndex = 0
+ def pp = "org.openecomp.dcae.controller.service.vm"
+ installSteps.each { step ->
+ def stepName = "step-${stepIndex++}"
+ switch (step.step) {
+ case "shell":
+ m.steps[stepName] = [
+ '$class' : "${pp}.ShellInstallationStep",
+ command : substitute(step.command,[:],s,i)
+ ]
+ break
+ case "maven-artifact":
+ m.steps[stepName] = [
+ '$class' : "${pp}.MavenArtifactInstallationStep",
+ groupId : step['group-id'],
+ artifactId : step['artifact-id'],
+ version : substitute(step['version'],[:],s,i),
+ type : step['type'],
+ assemblyId : step['assembly-id'],
+ applicationId : step['application-id'],
+ ]
+ break
+ case "http":
+ m.steps[stepName] = [
+ '$class' : "${pp}.HttpInstallationStep",
+ url : substitute(step['url'],[:],s,i),
+ userName : substitute(step['user-name'],[:],s,i),
+ password : substitute(step['password'],[:],s,i),
+ type : step['type'],
+ artifactId : step['artifact-id'],
+ applicationId : step['application-id'],
+ ]
+ break
+ default:
+ System.err.println "Unknown step: $s $i: $step.step"
+ }
+ }
+ save("/services/$s/instances/$i",m,true)
+ def m1 = [:]
+ def sConf = vmTemplate['controller-configuration'] ?: [:]
+ sConf.each { nn, v -> m1[nn] = v }
+ m1['$class'] = "${descriptor.servicePackage}.${descriptor.serviceClass}"
+ save("/services/$s",m1,true)
+ // System.exit(0)
+ }
+ }
+ }
+ void createDockerServiceInstances() {
+ def envMap = file2object("$release-$env/env.yaml", false)
+ dockers().each { s, dockerDeployment ->
+ def t = dockerDeployment['docker-type']
+ Map tenants = tenants();
+ def dockerTemplate = file2object("$release/docker-templates/${t}.yaml")
+ def dockerInstances = file2object("$release-$env/docker-instances/${s}.yaml",false)
+ def descriptor = file2object("$release/docker-descriptors/${s}.json", false)
+ if (descriptor == null) {
+ System.err.println "no docker descriptor for $s"
+ return
+ }
+// println dockerDeployment
+// println dockerTemplate
+// println dockerInstances
+ tenants.each { i, tenant ->
+ if (tenant.type != dockerDeployment['location-type']) return
+ def m = [:]
+ m.hostService = ['$ref' : substitute(dockerDeployment['dcae-container'],[:],s,i) ]
+ def iConf = dockerTemplate['controller-instance-configuration'] ?: [:]
+ iConf.each { nn, v -> m[nn] = substitute(v,(envMap['docker-templates'] ?: [:])[t],s,i) }
+ if (dockerInstances != null && dockerInstances.instances != null) {
+ def iConf2 = dockerInstances.instances[i] ?: [:]
+ iConf2.each { nn, v -> m[nn] = v }
+ }
+ def x = dockerTemplate['lifecycle-management'] ?: ['use-dcae-manager': true]
+ if (! x['use-dcae-manager']) {
+ m.managerPortNumber = -1
+ }
+ else {
+ m.managerPortNumber = x['manager-port'] ?: 9999
+ }
+ save("/services/$s/instances/$i",m,true)
+// createCloudifyBlueprint("docker",s,i,m)
+// println m
+// System.exit(3)
+ }
+ def m1 = [:]
+ def sConf = dockerTemplate['controller-configuration'] ?: [:]
+ sConf.each { nn, v -> m1[nn] = v }
+ m1['$class'] = "${descriptor.servicePackage}.${descriptor.serviceClass}"
+ save("/services/$s",m1,true)
+ }
+ }
+
+ def p(o) {
+ object2json(o).toString(2)
+ }
+
+ void createGeneralServiceInstances(t) {
+ def envMap = file2object("$release-$env/env.yaml", false)
+ platformConfig.deploymentType.each { s, v ->
+ if (! s.startsWith(t)) return
+ def instances = file2object("$release-$env/$t-instances/${s}.yaml",false) ?: [:]
+ def descriptor = file2object("$release/$t-descriptors/${s}.json", false)
+ if (descriptor == null) {
+ System.err.println "no $t descriptor for $s"
+ return
+ }
+ v.instances.each { i, v2 ->
+ def m = [:]
+ m.clusterService = ['$ref' : "/services/$v2.hostService/instances/$v2.hostServiceInstance" ]
+ def iConf = v.type['controller-instance-configuration'] ?: [:]
+ iConf.each { nn, vv -> m[nn] = substitute(vv,[:],s,i) }
+ def iConf2 = instances[i] ?: [:]
+ iConf2.each { nn, vv -> m[nn] = vv }
+ save("/services/$s/instances/$i",m,true)
+// createCloudifyBlueprint("docker",s,i,m)
+// println p(m)
+// println p(v)
+// System.exit(3)
+ }
+// def m1 = [:]
+// def sConf = dockerTemplate['controller-configuration'] ?: [:]
+// sConf.each { nn, vv -> m1[nn] = vv }
+// m1['$class'] = "${descriptor.servicePackage}.${descriptor.serviceClass}"
+// save("/services/$s",m1,true)
+ }
+ }
+
+ def createCloudifyBlueprint(t,s,i,m) {
+ def blue = file2object("$release/cloudify-templates/${t}.yaml", false)
+ def str = object2json(m).toString(2)
+// println blue
+ blue.node_templates.docker.properties = [
+ deployment_JSON : str,
+ service_name : s,
+ ]
+ saveYaml("/blueprints/$s-$i",blue,"cloudify")
+ }
+
+ def createEforc() {
+ def x = platformConfig.eforc()
+ saveYaml("/eforc",x.m,"general")
+ saveYaml("/dns",platformConfig.dns(),"general")
+ saveYaml("/ssl",platformConfig.ssl(),"general")
+ saveTable("/eforc-table",x.list,"general")
+ saveTable("/eforc-subnet-table",x.list2,"general")
+ saveYaml("/flavors",platformConfig.showFlavors(),"general")
+ }
+
+ def envMapGlobal = file2object("$release-$env/env.yaml", false) ?: [:]
+ def substitute(o, env, s, i) {
+ SimpleTemplateEngine engine = new SimpleTemplateEngine()
+ String res = o
+ env = env ?: [:]
+ env.dcae = platformConfig
+ env.passwords = envMapGlobal.passwords ?: [:]
+ env.ENV = env
+// env['class'] = '$class'
+ platformConfig.init(s, i)
+ switch (o) {
+ case List:
+ def l = []
+ o.each { e ->
+ l += substitute(e, env, s, i)
+ }
+ return l
+ case Map:
+ def m = [:]
+ o.each { n,v ->
+ m[n] = substitute(v, env, s, i)
+ }
+ return m
+ }
+ try {
+ res = engine.createTemplate("$o").make(env)
+ if (res.startsWith("_LIST_:") && res.endsWith(":_LIST_")) {
+ res = res.replace("_LIST_:","").replace(":_LIST_","")
+ JSONArray a = new JSONArray(res)
+ return json2object(a)
+ }
+ } catch (e) {
+ System.out.println "$o"
+ System.out.println "$env"
+ System.err.println "ERROR $e"
+ System.err.println "ERROR ${e.printStackTrace()}"
+ System.exit(2)
+ }
+ return res
+ }
+
+ String ipAssignment(n) {
+ def m = file2object("$release-$env/ip-assignment.yaml")
+ return m[n]
+ }
+ String certificatePassword(n) {
+ def m = file2object("$release-$env/certificates/passwords.yaml")
+ return m[n]
+ }
+
+ def genEcore(EClass eclass,m) {
+ if (m == null) return null
+ JSONObject json = object2json(yamlNames2ecore(m))
+// System.err.println json.toString(2)
+ return server.json2ecore(eclass, json)
+
+ }
+
+ String yamlNames2ecore2(String n) {
+ String r = ""
+ boolean first = true
+ n.split("-").each { n1 ->
+ if (first) {
+ first = false
+ r+=n1
+ } else {
+ r += StringUtil.capitalize(n1)
+ }
+ }
+// System.err.println "$n $r"
+ return r
+ }
+ def yamlNames2ecore(o) {
+ switch (o) {
+ case List:
+ def l = []
+ o.each { l = yamlNames2ecore(it) }
+ return l
+ case Map:
+ def m1 = [:]
+ o.each { k,v -> m1[yamlNames2ecore2(k)] = yamlNames2ecore(v) }
+ return m1
+ case boolean:
+ case long:
+ case int:
+ case double:
+ case Boolean:
+ case Long:
+ case Integer:
+ case String: return o; break
+ case GString: return o.toString(); break
+ case null: break;
+ default: println "Unable to convert: $o ${o.getClass().name}"
+ }
+
+ }
+
+ void save(String path, o, isService = false ) {
+ File f = new File(destinationRoot + "/${isService ? 'services-' : ''}resources/${path}.json")
+ f.getParentFile().mkdirs()
+ if (f.exists()) f.delete()
+ switch (o) {
+ case EObject: f << ManagementServer.ecore2json(o, 1000, null, false).toString(2); break
+ case JSONObject : f << o.toString(2); break
+ case Map : f << object2json(o).toString(2); break
+ default: System.err.println "Unable to save object: path=$path $o"
+ }
+// println "Wrote $f"
+ }
+
+ void save2(String path, o, String type ) {
+ File f
+ switch (type) {
+ case "chef": f = new File("$destRoot/$release-$env/chef-repo-gen/${path}.json")
+ }
+ f.getParentFile().mkdirs()
+ if (f.exists()) f.delete()
+ switch (o) {
+ case EObject: f << ManagementServer.ecore2json(o, 1000, null, false).toString(2); break
+ case JSONObject : f << o.toString(2); break
+ case Map : f << object2json(o).toString(2); break
+ default: System.err.println "Unable to save2 object: path=$path $o"
+ }
+ }
+
+ void saveYaml(String path, o, String type ) {
+ File f
+ switch (type) {
+ case "cloudify": f = new File("$destRoot/$release-$env/cloudify-gen/${path}.yaml"); break
+ case "general": f = new File("$destRoot/$release-$env/general-gen/${path}.yaml"); break
+ case "chef": f = new File("$destRoot/$release-$env/chef-repo-gen/${path}.yaml"); break
+ }
+ f.getParentFile().mkdirs()
+ if (f.exists()) f.delete()
+ switch (o) {
+ case String : f << o; break
+ case Map : f << object2yaml(o, []); break
+ default: System.err.println "Unable to save yaml object: path=$path $o"
+ }
+ }
+ void saveTable(String path, l, String type ) {
+ File f
+ switch (type) {
+ case "cloudify": f = new File("$destRoot/$release-$env/cloudify-gen/${path}.csv");break
+ case "general": f = new File("$destRoot/$release-$env/general-gen/${path}.csv");break
+ case "chef": f = new File("$destRoot/$release-$env/chef-repo-gen/${path}.csv");break
+ }
+ f.getParentFile().mkdirs()
+ if (f.exists()) f.delete()
+ l.each { row -> f << "${row.join(",")}\n" }
+ }
+
+ static main(args) {
+// println object2yaml(file2object("1607/dcae_admin_db_pgaas.json"), [])
+ String root = args.length > 1 ? args[1] : null
+ String destRoot = args.length > 2 ? args[2] : null
+ String rel = args.length > 3 ? args[3] : "1607"
+ GenControllerConfiguration d = new GenControllerConfiguration(rel, args[0], root, destRoot);
+ d.platformConfig.privateKey = args.length > 4 ? args[4] : null
+ d.createGeneralServiceInstances('cdap');
+ d.createGeneralServiceInstances('other');
+ d.createDockerServiceInstances();
+ d.createConfiguration();
+ d.createLocations();
+ d.createServiceInstances();
+ d.createChefConfiguration();
+ d.createEforc()
+ System.exit(0);
+ }
+
+}
diff --git a/dcae-controller-core/dcae-controller-platform-model/.classpath b/dcae-controller-core/dcae-controller-platform-model/.classpath
new file mode 100644
index 0000000..69b19c6
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/.classpath
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dcae-controller-core/dcae-controller-platform-model/.gitignore b/dcae-controller-core/dcae-controller-platform-model/.gitignore
new file mode 100644
index 0000000..09e3bc9
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/.gitignore
@@ -0,0 +1,2 @@
+/bin/
+/target/
diff --git a/dcae-controller-core/dcae-controller-platform-model/.project b/dcae-controller-core/dcae-controller-platform-model/.project
new file mode 100644
index 0000000..8a6051e
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/.project
@@ -0,0 +1,34 @@
+
+
+ dcae-controller-platform-model
+
+
+
+
+
+ org.eclipse.xtext.ui.shared.xtextBuilder
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+ org.eclipse.pde.PluginNature
+ org.eclipse.xtext.ui.shared.xtextNature
+
+
diff --git a/dcae-controller-core/dcae-controller-platform-model/.settings/org.eclipse.jdt.core.prefs b/dcae-controller-core/dcae-controller-platform-model/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..4ede96d
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
diff --git a/dcae-controller-core/dcae-controller-platform-model/.settings/org.eclipse.m2e.core.prefs b/dcae-controller-core/dcae-controller-platform-model/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/dcae-controller-core/dcae-controller-platform-model/LICENSE.txt b/dcae-controller-core/dcae-controller-platform-model/LICENSE.txt
new file mode 100644
index 0000000..30471b5
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/LICENSE.txt
@@ -0,0 +1,22 @@
+
+/*-
+ * ============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============================================
+ */
+
+ECOMP and OpenECOMP are trademarks and service marks of AT&T Intellectual Property.
diff --git a/dcae-controller-core/dcae-controller-platform-model/META-INF/MANIFEST.MF b/dcae-controller-core/dcae-controller-platform-model/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..66d0365
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/META-INF/MANIFEST.MF
@@ -0,0 +1,25 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: dcae-controller-platform-model;singleton:=true
+Bundle-Version: 0.1.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Export-Package: org.openecomp.dcae.controller.platform.controller,
+ org.openecomp.dcae.controller.platform.controller.impl,
+ org.openecomp.dcae.controller.platform.controller.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.xtext.xbase.lib,
+ org.eclipse.emf.ecore.xcore.lib,
+ ncomp-core-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-sirius-manager-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-openstack-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-core-types;bundle-version="0.1.0",
+ ncomp-utils-java;bundle-version="0.1.0",
+ dcae-controller-core-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-sirius-manager-agent-model;bundle-version="0.1.0";visibility:=reexport,
+ dcae-controller-service-vm-model;bundle-version="0.1.0";visibility:=reexport
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
diff --git a/dcae-controller-core/dcae-controller-platform-model/build.properties b/dcae-controller-core/dcae-controller-platform-model/build.properties
new file mode 100644
index 0000000..6d35b6f
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/build.properties
@@ -0,0 +1,11 @@
+#
+
+bin.includes = .,\
+ src/main/xcore/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties
+jars.compile.order = .
+source.. = src/main/xcore-gen/,\
+ src/main/xcore/
+output.. = target/classes/
diff --git a/dcae-controller-core/dcae-controller-platform-model/plugin.properties b/dcae-controller-core/dcae-controller-platform-model/plugin.properties
new file mode 100644
index 0000000..04852d2
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/plugin.properties
@@ -0,0 +1,4 @@
+#
+
+pluginName = Router Model
+providerName = www.example.org
diff --git a/dcae-controller-core/dcae-controller-platform-model/plugin.xml b/dcae-controller-core/dcae-controller-platform-model/plugin.xml
new file mode 100644
index 0000000..95c4d61
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/plugin.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dcae-controller-core/dcae-controller-platform-model/pom.xml b/dcae-controller-core/dcae-controller-platform-model/pom.xml
new file mode 100644
index 0000000..388b635
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/pom.xml
@@ -0,0 +1,42 @@
+
+ 4.0.0
+ org.openecomp.dcae.controller
+ dcae-controller-platform-model
+
+ org.openecomp.ncomp.maven
+ ncomp-maven-xcore
+ 0.1.0-SNAPSHOT
+ ../../../dcae-org.openecomp.ncomp.maven/ncomp-maven-xcore
+
+
+
+ org.openecomp.ncomp.sirius.manager
+ ncomp-sirius-manager-model
+ ${project.version}
+
+
+ org.openecomp.ncomp.core
+ ncomp-core-model
+ ${project.version}
+
+
+ org.openecomp.ncomp.sirius.manager
+ ncomp-sirius-manager-agent-model
+ ${project.version}
+
+
+ org.openecomp.ncomp.openstack
+ ncomp-openstack-model
+ ${project.version}
+
+
+ org.openecomp.dcae.controller
+ dcae-controller-core-model
+ ${project.version}
+
+
+ org.openecomp.dcae.controller
+ dcae-controller-service-vm-model
+ ${project.version}
+
+
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerCluster.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerCluster.java
new file mode 100644
index 0000000..4ff0aa6
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerCluster.java
@@ -0,0 +1,181 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import org.openecomp.ncomp.core.types.metrics.DateMetricAttribute;
+import java.util.Date;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Cluster'.
+ *
+ *
+ *
+ * The following features are supported:
+ *
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getMyServerName My Server Name}
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerCluster()
+ * @model
+ * @generated
+ */
+public interface ControllerCluster extends EObject {
+ /**
+ * Returns the value of the 'My Server Name' attribute.
+ *
+ *
+ * If the meaning of the 'My Server Name' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'My Server Name' attribute.
+ * @see #setMyServerName(String)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerCluster_MyServerName()
+ * @model unique="false"
+ * @generated
+ */
+ String getMyServerName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getMyServerName My Server Name}' attribute.
+ *
+ *
+ * @param value the new value of the 'My Server Name' attribute.
+ * @see #getMyServerName()
+ * @generated
+ */
+ void setMyServerName(String value);
+
+ /**
+ * Returns the value of the 'Role' attribute.
+ * The literals are from the enumeration {@link org.openecomp.dcae.controller.platform.controller.ServerRole}.
+ *
+ *
+ * If the meaning of the 'Role' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Role' attribute.
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @see #setRole(ServerRole)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerCluster_Role()
+ * @model unique="false"
+ * @generated
+ */
+ ServerRole getRole();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getRole Role}' attribute.
+ *
+ *
+ * @param value the new value of the 'Role' attribute.
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @see #getRole()
+ * @generated
+ */
+ void setRole(ServerRole value);
+
+ /**
+ * Returns the value of the 'State Time' attribute.
+ *
+ *
+ * If the meaning of the 'State Time' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'State Time' attribute.
+ * @see #setStateTime(DateMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerCluster_StateTime()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.DateMetricAttribute"
+ * @generated
+ */
+ DateMetricAttribute getStateTime();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getStateTime State Time}' attribute.
+ *
+ *
+ * @param value the new value of the 'State Time' attribute.
+ * @see #getStateTime()
+ * @generated
+ */
+ void setStateTime(DateMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Servers' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer}.
+ *
+ *
+ * If the meaning of the 'Servers' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Servers' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerCluster_Servers()
+ * @model containment="true"
+ * @generated
+ */
+ EList getServers();
+
+ /**
+ * Returns the value of the 'Remote Servers' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer}.
+ *
+ *
+ * If the meaning of the 'Remote Servers' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Remote Servers' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerCluster_RemoteServers()
+ * @model containment="true"
+ * @generated
+ */
+ EList getRemoteServers();
+
+ /**
+ *
+ *
+ * @model serverNameUnique="false" dataNameUnique="false"
+ * @generated
+ */
+ void pushData(String serverName, String dataName);
+
+ /**
+ *
+ *
+ * @model serverNameUnique="false" dataNameUnique="false" timeUnique="false" contentUnique="false"
+ * @generated
+ */
+ void receiveData(String serverName, String dataName, Date time, String content);
+
+} // ControllerCluster
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerClusterServer.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerClusterServer.java
new file mode 100644
index 0000000..cff1a76
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerClusterServer.java
@@ -0,0 +1,120 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import org.openecomp.dcae.controller.core.server.DcaeBasicServer;
+import org.openecomp.ncomp.core.NamedEntity;
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Cluster Server'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServer()
+ * @model
+ * @generated
+ */
+public interface ControllerClusterServer extends NamedEntity {
+
+ /**
+ * Returns the value of the 'Role' attribute.
+ * The literals are from the enumeration {@link org.openecomp.dcae.controller.platform.controller.ServerRole}.
+ *
+ *
+ * If the meaning of the 'Role' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Role' attribute.
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @see #setRole(ServerRole)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServer_Role()
+ * @model unique="false"
+ * @generated
+ */
+ ServerRole getRole();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getRole Role}' attribute.
+ *
+ *
+ * @param value the new value of the 'Role' attribute.
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @see #getRole()
+ * @generated
+ */
+ void setRole(ServerRole value);
+
+ /**
+ * Returns the value of the 'Data' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData}.
+ *
+ *
+ * If the meaning of the 'Data' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Data' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServer_Data()
+ * @model containment="true"
+ * @generated
+ */
+ EList getData();
+
+ /**
+ * Returns the value of the 'Server' reference.
+ *
+ *
+ * If the meaning of the 'Server' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Server' reference.
+ * @see #setServer(DcaeBasicServer)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServer_Server()
+ * @model
+ * @generated
+ */
+ DcaeBasicServer getServer();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getServer Server}' reference.
+ *
+ *
+ * @param value the new value of the 'Server' reference.
+ * @see #getServer()
+ * @generated
+ */
+ void setServer(DcaeBasicServer value);
+} // ControllerClusterServer
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerClusterServerData.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerClusterServerData.java
new file mode 100644
index 0000000..9a547f0
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerClusterServerData.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.dcae.controller.platform.controller;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.openecomp.ncomp.core.types.metrics.DateMetricAttribute;
+import org.openecomp.ncomp.core.types.metrics.IncreasingULongMetricAttribute;
+
+/**
+ *
+ * A representation of the model object 'Cluster Server Data'.
+ *
+ *
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastPush Last Push}
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushes Number Data Pushes}
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushErrors Number Data Push Errors}
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastDataReceived Last Data Received}
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceived Number Data Received}
+ *
{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceivedErrors Number Data Received Errors}
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData()
+ * @model
+ * @generated
+ */
+public interface ControllerClusterServerData extends NamedEntity {
+ /**
+ * Returns the value of the 'Push Interval' attribute.
+ * The default value is "5min".
+ *
+ *
+ * If the meaning of the 'Push Interval' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Push Interval' attribute.
+ * @see #setPushInterval(String)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_PushInterval()
+ * @model default="5min" unique="false"
+ * @generated
+ */
+ String getPushInterval();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getPushInterval Push Interval}' attribute.
+ *
+ *
+ * @param value the new value of the 'Push Interval' attribute.
+ * @see #getPushInterval()
+ * @generated
+ */
+ void setPushInterval(String value);
+
+ /**
+ * Returns the value of the 'Last Push' attribute.
+ *
+ *
+ * If the meaning of the 'Last Push' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Last Push' attribute.
+ * @see #setLastPush(DateMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_LastPush()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.DateMetricAttribute"
+ * @generated
+ */
+ DateMetricAttribute getLastPush();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastPush Last Push}' attribute.
+ *
+ *
+ * @param value the new value of the 'Last Push' attribute.
+ * @see #getLastPush()
+ * @generated
+ */
+ void setLastPush(DateMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Number Data Pushes' attribute.
+ *
+ *
+ * If the meaning of the 'Number Data Pushes' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Number Data Pushes' attribute.
+ * @see #setNumberDataPushes(IncreasingULongMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_NumberDataPushes()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.IncreasingULongMetricAttribute"
+ * @generated
+ */
+ IncreasingULongMetricAttribute getNumberDataPushes();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushes Number Data Pushes}' attribute.
+ *
+ *
+ * @param value the new value of the 'Number Data Pushes' attribute.
+ * @see #getNumberDataPushes()
+ * @generated
+ */
+ void setNumberDataPushes(IncreasingULongMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Number Data Push Errors' attribute.
+ *
+ *
+ * If the meaning of the 'Number Data Push Errors' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Number Data Push Errors' attribute.
+ * @see #setNumberDataPushErrors(IncreasingULongMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_NumberDataPushErrors()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.IncreasingULongMetricAttribute"
+ * @generated
+ */
+ IncreasingULongMetricAttribute getNumberDataPushErrors();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushErrors Number Data Push Errors}' attribute.
+ *
+ *
+ * @param value the new value of the 'Number Data Push Errors' attribute.
+ * @see #getNumberDataPushErrors()
+ * @generated
+ */
+ void setNumberDataPushErrors(IncreasingULongMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Last Data Received' attribute.
+ *
+ *
+ * If the meaning of the 'Last Data Received' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Last Data Received' attribute.
+ * @see #setLastDataReceived(DateMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_LastDataReceived()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.DateMetricAttribute"
+ * @generated
+ */
+ DateMetricAttribute getLastDataReceived();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastDataReceived Last Data Received}' attribute.
+ *
+ *
+ * @param value the new value of the 'Last Data Received' attribute.
+ * @see #getLastDataReceived()
+ * @generated
+ */
+ void setLastDataReceived(DateMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Number Data Received' attribute.
+ *
+ *
+ * If the meaning of the 'Number Data Received' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Number Data Received' attribute.
+ * @see #setNumberDataReceived(IncreasingULongMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_NumberDataReceived()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.IncreasingULongMetricAttribute"
+ * @generated
+ */
+ IncreasingULongMetricAttribute getNumberDataReceived();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceived Number Data Received}' attribute.
+ *
+ *
+ * @param value the new value of the 'Number Data Received' attribute.
+ * @see #getNumberDataReceived()
+ * @generated
+ */
+ void setNumberDataReceived(IncreasingULongMetricAttribute value);
+
+ /**
+ * Returns the value of the 'Number Data Received Errors' attribute.
+ *
+ *
+ * If the meaning of the 'Number Data Received Errors' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Number Data Received Errors' attribute.
+ * @see #setNumberDataReceivedErrors(IncreasingULongMetricAttribute)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerClusterServerData_NumberDataReceivedErrors()
+ * @model unique="false" dataType="org.openecomp.ncomp.core.IncreasingULongMetricAttribute"
+ * @generated
+ */
+ IncreasingULongMetricAttribute getNumberDataReceivedErrors();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceivedErrors Number Data Received Errors}' attribute.
+ *
+ *
+ * @param value the new value of the 'Number Data Received Errors' attribute.
+ * @see #getNumberDataReceivedErrors()
+ * @generated
+ */
+ void setNumberDataReceivedErrors(IncreasingULongMetricAttribute value);
+
+} // ControllerClusterServerData
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerFactory.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerFactory.java
new file mode 100644
index 0000000..09766af
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerFactory.java
@@ -0,0 +1,108 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ *
+ * The Factory for the model.
+ * It provides a create method for each non-abstract class of the model.
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage
+ * @generated
+ */
+public interface ControllerFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ *
+ *
+ * @generated
+ */
+ ControllerFactory eINSTANCE = org.openecomp.dcae.controller.platform.controller.impl.ControllerFactoryImpl.init();
+
+ /**
+ * Returns a new object of class 'Dcae Platform Controller'.
+ *
+ *
+ * @return a new object of class 'Dcae Platform Controller'.
+ * @generated
+ */
+ DcaePlatformController createDcaePlatformController();
+
+ /**
+ * Returns a new object of class 'Dcae Data Bus'.
+ *
+ *
+ * @return a new object of class 'Dcae Data Bus'.
+ * @generated
+ */
+ DcaeDataBus createDcaeDataBus();
+
+ /**
+ * Returns a new object of class 'Cluster'.
+ *
+ *
+ * @return a new object of class 'Cluster'.
+ * @generated
+ */
+ ControllerCluster createControllerCluster();
+
+ /**
+ * Returns a new object of class 'Cluster Server'.
+ *
+ *
+ * @return a new object of class 'Cluster Server'.
+ * @generated
+ */
+ ControllerClusterServer createControllerClusterServer();
+
+ /**
+ * Returns a new object of class 'Cluster Server Data'.
+ *
+ *
+ * @return a new object of class 'Cluster Server Data'.
+ * @generated
+ */
+ ControllerClusterServerData createControllerClusterServerData();
+
+ /**
+ * Returns a new object of class 'Virtual Machine Service'.
+ *
+ *
+ * @return a new object of class 'Virtual Machine Service'.
+ * @generated
+ */
+ ControllerVirtualMachineService createControllerVirtualMachineService();
+
+ /**
+ * Returns the package supported by this factory.
+ *
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ControllerPackage getControllerPackage();
+
+} //ControllerFactory
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerPackage.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerPackage.java
new file mode 100644
index 0000000..2f0d0cb
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerPackage.java
@@ -0,0 +1,1641 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import org.openecomp.dcae.controller.service.vm.VmPackage;
+import org.openecomp.ncomp.core.CorePackage;
+import org.openecomp.ncomp.sirius.manager.server.ServerPackage;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ *
+ * The Package for the model.
+ * It contains accessors for the meta objects to represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-platform-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.platform'"
+ * @generated
+ */
+public interface ControllerPackage extends EPackage {
+ /**
+ * The package name.
+ *
+ *
+ * @generated
+ */
+ String eNAME = "controller";
+
+ /**
+ * The package namespace URI.
+ *
+ *
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.platform.controller";
+
+ /**
+ * The package namespace name.
+ *
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "controller";
+
+ /**
+ * The singleton instance of the package.
+ *
+ *
+ * @generated
+ */
+ ControllerPackage eINSTANCE = org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.impl.DcaePlatformControllerImpl Dcae Platform Controller}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.DcaePlatformControllerImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getDcaePlatformController()
+ * @generated
+ */
+ int DCAE_PLATFORM_CONTROLLER = 0;
+
+ /**
+ * The feature id for the 'Configuration' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__CONFIGURATION = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Component' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__COMPONENT = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Cluster' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__CLUSTER = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Openstack' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__OPENSTACK = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Locations' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__LOCATIONS = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Databus' containment reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__DATABUS = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Descriptors' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__DESCRIPTORS = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the 'Services' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__SERVICES = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the 'Users' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__USERS = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the 'Admin Users' reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER__ADMIN_USERS = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 9;
+
+ /**
+ * The number of structural features of the 'Dcae Platform Controller' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER_FEATURE_COUNT = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_FEATURE_COUNT + 10;
+
+ /**
+ * The operation id for the 'Logs' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___LOGS__JSONOBJECT_ELIST = ServerPackage.SOUTH_BOUND_API_WITH_PROXY___LOGS__JSONOBJECT_ELIST;
+
+ /**
+ * The operation id for the 'Metrics' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___METRICS__JSONOBJECT_ELIST = ServerPackage.SOUTH_BOUND_API_WITH_PROXY___METRICS__JSONOBJECT_ELIST;
+
+ /**
+ * The operation id for the 'Properties' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___PROPERTIES__JSONOBJECT_ELIST = ServerPackage.SOUTH_BOUND_API_WITH_PROXY___PROPERTIES__JSONOBJECT_ELIST;
+
+ /**
+ * The operation id for the 'Upload Info' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___UPLOAD_INFO__JSONOBJECT_ELIST = ServerPackage.SOUTH_BOUND_API_WITH_PROXY___UPLOAD_INFO__JSONOBJECT_ELIST;
+
+ /**
+ * The operation id for the 'Get Values' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___GET_VALUES__JSONOBJECT_STRING_LONG_LONG_METRICVALUEOPTION_BOOLEAN = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the 'Get Values All' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___GET_VALUES_ALL__JSONOBJECT_STRING_ELIST_LONG_LONG_METRICVALUEOPTION_BOOLEAN = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 1;
+
+ /**
+ * The operation id for the 'Get Messages' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___GET_MESSAGES__JSONOBJECT_STRING_LONG_LONG = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 2;
+
+ /**
+ * The operation id for the 'Get Request Logger' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___GET_REQUEST_LOGGER__STRING_STRING_STRING_JSONOBJECT = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 3;
+
+ /**
+ * The operation id for the 'Evaluate' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___EVALUATE__STRING_FUNCTION = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 4;
+
+ /**
+ * The operation id for the 'Update' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___UPDATE__STRING_FUNCTION = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 5;
+
+ /**
+ * The operation id for the 'Deploy Descriptor' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___DEPLOY_DESCRIPTOR__STRING = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 6;
+
+ /**
+ * The operation id for the 'Refresh Data Bus' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER___REFRESH_DATA_BUS__STRING = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 7;
+
+ /**
+ * The number of operations of the 'Dcae Platform Controller' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_PLATFORM_CONTROLLER_OPERATION_COUNT = ServerPackage.SOUTH_BOUND_API_WITH_PROXY_OPERATION_COUNT + 8;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.impl.DcaeDataBusImpl Dcae Data Bus}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.DcaeDataBusImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getDcaeDataBus()
+ * @generated
+ */
+ int DCAE_DATA_BUS = 1;
+
+ /**
+ * The feature id for the 'Streams' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_DATA_BUS__STREAMS = 0;
+
+ /**
+ * The feature id for the 'Locations' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_DATA_BUS__LOCATIONS = 1;
+
+ /**
+ * The feature id for the 'Mr Clusters' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_DATA_BUS__MR_CLUSTERS = 2;
+
+ /**
+ * The feature id for the 'Dr Nodes' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_DATA_BUS__DR_NODES = 3;
+
+ /**
+ * The number of structural features of the 'Dcae Data Bus' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_DATA_BUS_FEATURE_COUNT = 4;
+
+ /**
+ * The number of operations of the 'Dcae Data Bus' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int DCAE_DATA_BUS_OPERATION_COUNT = 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterImpl Cluster}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerCluster()
+ * @generated
+ */
+ int CONTROLLER_CLUSTER = 2;
+
+ /**
+ * The feature id for the 'My Server Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER__MY_SERVER_NAME = 0;
+
+ /**
+ * The feature id for the 'Role' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER__ROLE = 1;
+
+ /**
+ * The feature id for the 'State Time' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER__STATE_TIME = 2;
+
+ /**
+ * The feature id for the 'Servers' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER__SERVERS = 3;
+
+ /**
+ * The feature id for the 'Remote Servers' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER__REMOTE_SERVERS = 4;
+
+ /**
+ * The number of structural features of the 'Cluster' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_FEATURE_COUNT = 5;
+
+ /**
+ * The operation id for the 'Push Data' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER___PUSH_DATA__STRING_STRING = 0;
+
+ /**
+ * The operation id for the 'Receive Data' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER___RECEIVE_DATA__STRING_STRING_DATE_STRING = 1;
+
+ /**
+ * The number of operations of the 'Cluster' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_OPERATION_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerImpl Cluster Server}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerClusterServer()
+ * @generated
+ */
+ int CONTROLLER_CLUSTER_SERVER = 3;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Role' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__ROLE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Data' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__DATA = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Server' reference.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER__SERVER = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the 'Cluster Server' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the 'Cluster Server' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerDataImpl Cluster Server Data}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerDataImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerClusterServerData()
+ * @generated
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA = 4;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the 'Push Interval' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__PUSH_INTERVAL = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the 'Last Push' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__LAST_PUSH = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the 'Number Data Pushes' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_PUSHES = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the 'Number Data Push Errors' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_PUSH_ERRORS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the 'Last Data Received' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__LAST_DATA_RECEIVED = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the 'Number Data Received' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_RECEIVED = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the 'Number Data Received Errors' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_RECEIVED_ERRORS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the 'Cluster Server Data' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The number of operations of the 'Cluster Server Data' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_CLUSTER_SERVER_DATA_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerVirtualMachineServiceImpl Virtual Machine Service}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerVirtualMachineServiceImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerVirtualMachineService()
+ * @generated
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE = 5;
+
+ /**
+ * The feature id for the 'Name' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE__NAME = VmPackage.VIRTUAL_MACHINE_SERVICE__NAME;
+
+ /**
+ * The feature id for the 'Last Polled' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE__LAST_POLLED = VmPackage.VIRTUAL_MACHINE_SERVICE__LAST_POLLED;
+
+ /**
+ * The feature id for the 'Last Changed' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE__LAST_CHANGED = VmPackage.VIRTUAL_MACHINE_SERVICE__LAST_CHANGED;
+
+ /**
+ * The feature id for the 'Created' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE__CREATED = VmPackage.VIRTUAL_MACHINE_SERVICE__CREATED;
+
+ /**
+ * The feature id for the 'Instances' containment reference list.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE__INSTANCES = VmPackage.VIRTUAL_MACHINE_SERVICE__INSTANCES;
+
+ /**
+ * The feature id for the 'Manager Port Number' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE__MANAGER_PORT_NUMBER = VmPackage.VIRTUAL_MACHINE_SERVICE__MANAGER_PORT_NUMBER;
+
+ /**
+ * The number of structural features of the 'Virtual Machine Service' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE_FEATURE_COUNT = VmPackage.VIRTUAL_MACHINE_SERVICE_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the 'Deploy' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___DEPLOY__STRING_STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___DEPLOY__STRING_STRING;
+
+ /**
+ * The operation id for the 'Undeploy' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___UNDEPLOY__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___UNDEPLOY__STRING;
+
+ /**
+ * The operation id for the 'Test' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___TEST__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___TEST__STRING;
+
+ /**
+ * The operation id for the 'Suspend' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___SUSPEND__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___SUSPEND__STRING;
+
+ /**
+ * The operation id for the 'Resume' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___RESUME__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___RESUME__STRING;
+
+ /**
+ * The operation id for the 'Push Manager Configuration' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING;
+
+ /**
+ * The operation id for the 'Poll Manager Configuration' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___POLL_MANAGER_CONFIGURATION__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___POLL_MANAGER_CONFIGURATION__STRING;
+
+ /**
+ * The operation id for the 'Manager Configuration' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___MANAGER_CONFIGURATION__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___MANAGER_CONFIGURATION__STRING;
+
+ /**
+ * The operation id for the 'Manager Operation' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT = VmPackage.VIRTUAL_MACHINE_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT;
+
+ /**
+ * The operation id for the 'Update Configuration From Policy' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING = VmPackage.VIRTUAL_MACHINE_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING;
+
+ /**
+ * The operation id for the 'Run Health Tests' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___RUN_HEALTH_TESTS = VmPackage.VIRTUAL_MACHINE_SERVICE___RUN_HEALTH_TESTS;
+
+ /**
+ * The operation id for the 'Update Deployment Status' operation.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE___UPDATE_DEPLOYMENT_STATUS = VmPackage.VIRTUAL_MACHINE_SERVICE___UPDATE_DEPLOYMENT_STATUS;
+
+ /**
+ * The number of operations of the 'Virtual Machine Service' class.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int CONTROLLER_VIRTUAL_MACHINE_SERVICE_OPERATION_COUNT = VmPackage.VIRTUAL_MACHINE_SERVICE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.platform.controller.ServerRole Server Role}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getServerRole()
+ * @generated
+ */
+ int SERVER_ROLE = 6;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController Dcae Platform Controller}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Platform Controller'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController
+ * @generated
+ */
+ EClass getDcaePlatformController();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getCluster Cluster}'.
+ *
+ *
+ * @return the meta object for the containment reference 'Cluster'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getCluster()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Cluster();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getOpenstack Openstack}'.
+ *
+ *
+ * @return the meta object for the containment reference 'Openstack'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getOpenstack()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Openstack();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getLocations Locations}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Locations'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getLocations()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Locations();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getDatabus Databus}'.
+ *
+ *
+ * @return the meta object for the containment reference 'Databus'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getDatabus()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Databus();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getServices Services}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Services'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getServices()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Services();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getUsers Users}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Users'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getUsers()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Users();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getDescriptors Descriptors}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Descriptors'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getDescriptors()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_Descriptors();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getAdminUsers Admin Users}'.
+ *
+ *
+ * @return the meta object for the reference list 'Admin Users'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getAdminUsers()
+ * @see #getDcaePlatformController()
+ * @generated
+ */
+ EReference getDcaePlatformController_AdminUsers();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#deployDescriptor(java.lang.String) Deploy Descriptor}' operation.
+ *
+ *
+ * @return the meta object for the 'Deploy Descriptor' operation.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#deployDescriptor(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaePlatformController__DeployDescriptor__String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#refreshDataBus(java.lang.String) Refresh Data Bus}' operation.
+ *
+ *
+ * @return the meta object for the 'Refresh Data Bus' operation.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaePlatformController#refreshDataBus(java.lang.String)
+ * @generated
+ */
+ EOperation getDcaePlatformController__RefreshDataBus__String();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.platform.controller.DcaeDataBus Dcae Data Bus}'.
+ *
+ *
+ * @return the meta object for class 'Dcae Data Bus'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaeDataBus
+ * @generated
+ */
+ EClass getDcaeDataBus();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getStreams Streams}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Streams'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getStreams()
+ * @see #getDcaeDataBus()
+ * @generated
+ */
+ EReference getDcaeDataBus_Streams();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getLocations Locations}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Locations'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getLocations()
+ * @see #getDcaeDataBus()
+ * @generated
+ */
+ EReference getDcaeDataBus_Locations();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getMrClusters Mr Clusters}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Mr Clusters'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getMrClusters()
+ * @see #getDcaeDataBus()
+ * @generated
+ */
+ EReference getDcaeDataBus_MrClusters();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getDrNodes Dr Nodes}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Dr Nodes'.
+ * @see org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getDrNodes()
+ * @see #getDcaeDataBus()
+ * @generated
+ */
+ EReference getDcaeDataBus_DrNodes();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster Cluster}'.
+ *
+ *
+ * @return the meta object for class 'Cluster'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster
+ * @generated
+ */
+ EClass getControllerCluster();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getMyServerName My Server Name}'.
+ *
+ *
+ * @return the meta object for the attribute 'My Server Name'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#getMyServerName()
+ * @see #getControllerCluster()
+ * @generated
+ */
+ EAttribute getControllerCluster_MyServerName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getRole Role}'.
+ *
+ *
+ * @return the meta object for the attribute 'Role'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#getRole()
+ * @see #getControllerCluster()
+ * @generated
+ */
+ EAttribute getControllerCluster_Role();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getStateTime State Time}'.
+ *
+ *
+ * @return the meta object for the attribute 'State Time'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#getStateTime()
+ * @see #getControllerCluster()
+ * @generated
+ */
+ EAttribute getControllerCluster_StateTime();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getServers Servers}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Servers'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#getServers()
+ * @see #getControllerCluster()
+ * @generated
+ */
+ EReference getControllerCluster_Servers();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#getRemoteServers Remote Servers}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Remote Servers'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#getRemoteServers()
+ * @see #getControllerCluster()
+ * @generated
+ */
+ EReference getControllerCluster_RemoteServers();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#pushData(java.lang.String, java.lang.String) Push Data}' operation.
+ *
+ *
+ * @return the meta object for the 'Push Data' operation.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#pushData(java.lang.String, java.lang.String)
+ * @generated
+ */
+ EOperation getControllerCluster__PushData__String_String();
+
+ /**
+ * Returns the meta object for the '{@link org.openecomp.dcae.controller.platform.controller.ControllerCluster#receiveData(java.lang.String, java.lang.String, java.util.Date, java.lang.String) Receive Data}' operation.
+ *
+ *
+ * @return the meta object for the 'Receive Data' operation.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerCluster#receiveData(java.lang.String, java.lang.String, java.util.Date, java.lang.String)
+ * @generated
+ */
+ EOperation getControllerCluster__ReceiveData__String_String_Date_String();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer Cluster Server}'.
+ *
+ *
+ * @return the meta object for class 'Cluster Server'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServer
+ * @generated
+ */
+ EClass getControllerClusterServer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getRole Role}'.
+ *
+ *
+ * @return the meta object for the attribute 'Role'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getRole()
+ * @see #getControllerClusterServer()
+ * @generated
+ */
+ EAttribute getControllerClusterServer_Role();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getData Data}'.
+ *
+ *
+ * @return the meta object for the containment reference list 'Data'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getData()
+ * @see #getControllerClusterServer()
+ * @generated
+ */
+ EReference getControllerClusterServer_Data();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getServer Server}'.
+ *
+ *
+ * @return the meta object for the reference 'Server'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServer#getServer()
+ * @see #getControllerClusterServer()
+ * @generated
+ */
+ EReference getControllerClusterServer_Server();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData Cluster Server Data}'.
+ *
+ *
+ * @return the meta object for class 'Cluster Server Data'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData
+ * @generated
+ */
+ EClass getControllerClusterServerData();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getPushInterval Push Interval}'.
+ *
+ *
+ * @return the meta object for the attribute 'Push Interval'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getPushInterval()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_PushInterval();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastPush Last Push}'.
+ *
+ *
+ * @return the meta object for the attribute 'Last Push'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastPush()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_LastPush();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushes Number Data Pushes}'.
+ *
+ *
+ * @return the meta object for the attribute 'Number Data Pushes'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushes()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_NumberDataPushes();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushErrors Number Data Push Errors}'.
+ *
+ *
+ * @return the meta object for the attribute 'Number Data Push Errors'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataPushErrors()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_NumberDataPushErrors();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastDataReceived Last Data Received}'.
+ *
+ *
+ * @return the meta object for the attribute 'Last Data Received'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getLastDataReceived()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_LastDataReceived();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceived Number Data Received}'.
+ *
+ *
+ * @return the meta object for the attribute 'Number Data Received'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceived()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_NumberDataReceived();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceivedErrors Number Data Received Errors}'.
+ *
+ *
+ * @return the meta object for the attribute 'Number Data Received Errors'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData#getNumberDataReceivedErrors()
+ * @see #getControllerClusterServerData()
+ * @generated
+ */
+ EAttribute getControllerClusterServerData_NumberDataReceivedErrors();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.platform.controller.ControllerVirtualMachineService Virtual Machine Service}'.
+ *
+ *
+ * @return the meta object for class 'Virtual Machine Service'.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerVirtualMachineService
+ * @generated
+ */
+ EClass getControllerVirtualMachineService();
+
+ /**
+ * Returns the meta object for enum '{@link org.openecomp.dcae.controller.platform.controller.ServerRole Server Role}'.
+ *
+ *
+ * @return the meta object for enum 'Server Role'.
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @generated
+ */
+ EEnum getServerRole();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ *
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ControllerFactory getControllerFactory();
+
+ /**
+ *
+ * Defines literals for the meta objects that represent
+ *
+ *
each class,
+ *
each feature of each class,
+ *
each operation of each class,
+ *
each enum,
+ *
and each data type
+ *
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.impl.DcaePlatformControllerImpl Dcae Platform Controller}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.DcaePlatformControllerImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getDcaePlatformController()
+ * @generated
+ */
+ EClass DCAE_PLATFORM_CONTROLLER = eINSTANCE.getDcaePlatformController();
+
+ /**
+ * The meta object literal for the 'Cluster' containment reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__CLUSTER = eINSTANCE.getDcaePlatformController_Cluster();
+
+ /**
+ * The meta object literal for the 'Openstack' containment reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__OPENSTACK = eINSTANCE.getDcaePlatformController_Openstack();
+
+ /**
+ * The meta object literal for the 'Locations' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__LOCATIONS = eINSTANCE.getDcaePlatformController_Locations();
+
+ /**
+ * The meta object literal for the 'Databus' containment reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__DATABUS = eINSTANCE.getDcaePlatformController_Databus();
+
+ /**
+ * The meta object literal for the 'Services' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__SERVICES = eINSTANCE.getDcaePlatformController_Services();
+
+ /**
+ * The meta object literal for the 'Users' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__USERS = eINSTANCE.getDcaePlatformController_Users();
+
+ /**
+ * The meta object literal for the 'Descriptors' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__DESCRIPTORS = eINSTANCE.getDcaePlatformController_Descriptors();
+
+ /**
+ * The meta object literal for the 'Admin Users' reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_PLATFORM_CONTROLLER__ADMIN_USERS = eINSTANCE.getDcaePlatformController_AdminUsers();
+
+ /**
+ * The meta object literal for the 'Deploy Descriptor' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_PLATFORM_CONTROLLER___DEPLOY_DESCRIPTOR__STRING = eINSTANCE.getDcaePlatformController__DeployDescriptor__String();
+
+ /**
+ * The meta object literal for the 'Refresh Data Bus' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation DCAE_PLATFORM_CONTROLLER___REFRESH_DATA_BUS__STRING = eINSTANCE.getDcaePlatformController__RefreshDataBus__String();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.impl.DcaeDataBusImpl Dcae Data Bus}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.DcaeDataBusImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getDcaeDataBus()
+ * @generated
+ */
+ EClass DCAE_DATA_BUS = eINSTANCE.getDcaeDataBus();
+
+ /**
+ * The meta object literal for the 'Streams' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_DATA_BUS__STREAMS = eINSTANCE.getDcaeDataBus_Streams();
+
+ /**
+ * The meta object literal for the 'Locations' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_DATA_BUS__LOCATIONS = eINSTANCE.getDcaeDataBus_Locations();
+
+ /**
+ * The meta object literal for the 'Mr Clusters' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_DATA_BUS__MR_CLUSTERS = eINSTANCE.getDcaeDataBus_MrClusters();
+
+ /**
+ * The meta object literal for the 'Dr Nodes' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference DCAE_DATA_BUS__DR_NODES = eINSTANCE.getDcaeDataBus_DrNodes();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterImpl Cluster}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerCluster()
+ * @generated
+ */
+ EClass CONTROLLER_CLUSTER = eINSTANCE.getControllerCluster();
+
+ /**
+ * The meta object literal for the 'My Server Name' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER__MY_SERVER_NAME = eINSTANCE.getControllerCluster_MyServerName();
+
+ /**
+ * The meta object literal for the 'Role' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER__ROLE = eINSTANCE.getControllerCluster_Role();
+
+ /**
+ * The meta object literal for the 'State Time' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER__STATE_TIME = eINSTANCE.getControllerCluster_StateTime();
+
+ /**
+ * The meta object literal for the 'Servers' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference CONTROLLER_CLUSTER__SERVERS = eINSTANCE.getControllerCluster_Servers();
+
+ /**
+ * The meta object literal for the 'Remote Servers' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference CONTROLLER_CLUSTER__REMOTE_SERVERS = eINSTANCE.getControllerCluster_RemoteServers();
+
+ /**
+ * The meta object literal for the 'Push Data' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation CONTROLLER_CLUSTER___PUSH_DATA__STRING_STRING = eINSTANCE.getControllerCluster__PushData__String_String();
+
+ /**
+ * The meta object literal for the 'Receive Data' operation.
+ *
+ *
+ * @generated
+ */
+ EOperation CONTROLLER_CLUSTER___RECEIVE_DATA__STRING_STRING_DATE_STRING = eINSTANCE.getControllerCluster__ReceiveData__String_String_Date_String();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerImpl Cluster Server}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerClusterServer()
+ * @generated
+ */
+ EClass CONTROLLER_CLUSTER_SERVER = eINSTANCE.getControllerClusterServer();
+
+ /**
+ * The meta object literal for the 'Role' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER__ROLE = eINSTANCE.getControllerClusterServer_Role();
+
+ /**
+ * The meta object literal for the 'Data' containment reference list feature.
+ *
+ *
+ * @generated
+ */
+ EReference CONTROLLER_CLUSTER_SERVER__DATA = eINSTANCE.getControllerClusterServer_Data();
+
+ /**
+ * The meta object literal for the 'Server' reference feature.
+ *
+ *
+ * @generated
+ */
+ EReference CONTROLLER_CLUSTER_SERVER__SERVER = eINSTANCE.getControllerClusterServer_Server();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerDataImpl Cluster Server Data}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterServerDataImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerClusterServerData()
+ * @generated
+ */
+ EClass CONTROLLER_CLUSTER_SERVER_DATA = eINSTANCE.getControllerClusterServerData();
+
+ /**
+ * The meta object literal for the 'Push Interval' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__PUSH_INTERVAL = eINSTANCE.getControllerClusterServerData_PushInterval();
+
+ /**
+ * The meta object literal for the 'Last Push' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__LAST_PUSH = eINSTANCE.getControllerClusterServerData_LastPush();
+
+ /**
+ * The meta object literal for the 'Number Data Pushes' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_PUSHES = eINSTANCE.getControllerClusterServerData_NumberDataPushes();
+
+ /**
+ * The meta object literal for the 'Number Data Push Errors' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_PUSH_ERRORS = eINSTANCE.getControllerClusterServerData_NumberDataPushErrors();
+
+ /**
+ * The meta object literal for the 'Last Data Received' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__LAST_DATA_RECEIVED = eINSTANCE.getControllerClusterServerData_LastDataReceived();
+
+ /**
+ * The meta object literal for the 'Number Data Received' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_RECEIVED = eINSTANCE.getControllerClusterServerData_NumberDataReceived();
+
+ /**
+ * The meta object literal for the 'Number Data Received Errors' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute CONTROLLER_CLUSTER_SERVER_DATA__NUMBER_DATA_RECEIVED_ERRORS = eINSTANCE.getControllerClusterServerData_NumberDataReceivedErrors();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerVirtualMachineServiceImpl Virtual Machine Service}' class.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerVirtualMachineServiceImpl
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getControllerVirtualMachineService()
+ * @generated
+ */
+ EClass CONTROLLER_VIRTUAL_MACHINE_SERVICE = eINSTANCE.getControllerVirtualMachineService();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.platform.controller.ServerRole Server Role}' enum.
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ServerRole
+ * @see org.openecomp.dcae.controller.platform.controller.impl.ControllerPackageImpl#getServerRole()
+ * @generated
+ */
+ EEnum SERVER_ROLE = eINSTANCE.getServerRole();
+
+ }
+
+} //ControllerPackage
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerVirtualMachineService.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerVirtualMachineService.java
new file mode 100644
index 0000000..af9c4cb
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ControllerVirtualMachineService.java
@@ -0,0 +1,39 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import org.openecomp.dcae.controller.service.vm.VirtualMachineService;
+
+/**
+ *
+ * A representation of the model object 'Virtual Machine Service'.
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getControllerVirtualMachineService()
+ * @model
+ * @generated
+ */
+public interface ControllerVirtualMachineService extends VirtualMachineService {
+} // ControllerVirtualMachineService
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/DcaeDataBus.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/DcaeDataBus.java
new file mode 100644
index 0000000..d104318
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/DcaeDataBus.java
@@ -0,0 +1,117 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode;
+import org.openecomp.dcae.controller.core.stream.DatabusLocation;
+import org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster;
+import org.openecomp.dcae.controller.core.stream.DatabusStream;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ *
+ * A representation of the model object 'Dcae Data Bus'.
+ *
+ *
+ *
{@link org.openecomp.dcae.controller.platform.controller.DcaeDataBus#getDrNodes Dr Nodes}
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaeDataBus()
+ * @model
+ * @generated
+ */
+public interface DcaeDataBus extends EObject {
+ /**
+ * Returns the value of the 'Streams' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusStream}.
+ *
+ *
+ * If the meaning of the 'Streams' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Streams' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaeDataBus_Streams()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getStreams();
+
+ /**
+ * Returns the value of the 'Locations' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusLocation}.
+ *
+ *
+ * If the meaning of the 'Locations' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Locations' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaeDataBus_Locations()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getLocations();
+
+ /**
+ * Returns the value of the 'Mr Clusters' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster}.
+ *
+ *
+ * If the meaning of the 'Mr Clusters' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Mr Clusters' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaeDataBus_MrClusters()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getMrClusters();
+
+ /**
+ * Returns the value of the 'Dr Nodes' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode}.
+ *
+ *
+ * If the meaning of the 'Dr Nodes' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Dr Nodes' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaeDataBus_DrNodes()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getDrNodes();
+
+} // DcaeDataBus
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/DcaePlatformController.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/DcaePlatformController.java
new file mode 100644
index 0000000..a3a9204
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/DcaePlatformController.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.dcae.controller.platform.controller;
+
+import org.openecomp.dcae.controller.core.service.DcaeLocation;
+import org.openecomp.dcae.controller.core.service.DcaeService;
+import org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor;
+import org.openecomp.ncomp.core.User;
+import org.openecomp.ncomp.openstack.OpenStackController;
+import org.openecomp.ncomp.sirius.manager.server.AbstractManagementServer;
+import org.openecomp.ncomp.sirius.manager.server.SouthBoundApiWithProxy;
+import org.eclipse.emf.common.util.EList;
+
+/**
+ *
+ * A representation of the model object 'Dcae Platform Controller'.
+ *
+ *
+ *
+ *
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController()
+ * @model
+ * @generated
+ */
+public interface DcaePlatformController extends SouthBoundApiWithProxy, AbstractManagementServer {
+ /**
+ * Returns the value of the 'Cluster' containment reference.
+ *
+ *
+ * If the meaning of the 'Cluster' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Cluster' containment reference.
+ * @see #setCluster(ControllerCluster)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Cluster()
+ * @model containment="true"
+ * @generated
+ */
+ ControllerCluster getCluster();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getCluster Cluster}' containment reference.
+ *
+ *
+ * @param value the new value of the 'Cluster' containment reference.
+ * @see #getCluster()
+ * @generated
+ */
+ void setCluster(ControllerCluster value);
+
+ /**
+ * Returns the value of the 'Openstack' containment reference.
+ *
+ *
+ * If the meaning of the 'Openstack' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Openstack' containment reference.
+ * @see #setOpenstack(OpenStackController)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Openstack()
+ * @model containment="true"
+ * @generated
+ */
+ OpenStackController getOpenstack();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getOpenstack Openstack}' containment reference.
+ *
+ *
+ * @param value the new value of the 'Openstack' containment reference.
+ * @see #getOpenstack()
+ * @generated
+ */
+ void setOpenstack(OpenStackController value);
+
+ /**
+ * Returns the value of the 'Locations' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.service.DcaeLocation}.
+ *
+ *
+ * If the meaning of the 'Locations' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Locations' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Locations()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getLocations();
+
+ /**
+ * Returns the value of the 'Databus' containment reference.
+ *
+ *
+ * If the meaning of the 'Databus' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Databus' containment reference.
+ * @see #setDatabus(DcaeDataBus)
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Databus()
+ * @model containment="true"
+ * @generated
+ */
+ DcaeDataBus getDatabus();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.platform.controller.DcaePlatformController#getDatabus Databus}' containment reference.
+ *
+ *
+ * @param value the new value of the 'Databus' containment reference.
+ * @see #getDatabus()
+ * @generated
+ */
+ void setDatabus(DcaeDataBus value);
+
+ /**
+ * Returns the value of the 'Services' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.service.DcaeService}.
+ *
+ *
+ * If the meaning of the 'Services' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Services' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Services()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getServices();
+
+ /**
+ * Returns the value of the 'Users' containment reference list.
+ * The list contents are of type {@link org.openecomp.ncomp.core.User}.
+ *
+ *
+ * If the meaning of the 'Users' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Users' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Users()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getUsers();
+
+ /**
+ * Returns the value of the 'Descriptors' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor}.
+ *
+ *
+ * If the meaning of the 'Descriptors' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Descriptors' containment reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_Descriptors()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList getDescriptors();
+
+ /**
+ * Returns the value of the 'Admin Users' reference list.
+ * The list contents are of type {@link org.openecomp.ncomp.core.User}.
+ *
+ *
+ * If the meaning of the 'Admin Users' reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'Admin Users' reference list.
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getDcaePlatformController_AdminUsers()
+ * @model
+ * @generated
+ */
+ EList getAdminUsers();
+
+ /**
+ *
+ *
+ * @model nameUnique="false"
+ * @generated
+ */
+ void deployDescriptor(String name);
+
+ /**
+ *
+ *
+ * @model nameMatchUnique="false"
+ * @generated
+ */
+ void refreshDataBus(String nameMatch);
+
+} // DcaePlatformController
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ServerRole.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ServerRole.java
new file mode 100644
index 0000000..0286a1b
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/ServerRole.java
@@ -0,0 +1,278 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ *
+ * A representation of the literals of the enumeration 'Server Role',
+ * and utility methods for working with them.
+ *
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#getServerRole()
+ * @model
+ * @generated
+ */
+public enum ServerRole implements Enumerator {
+ /**
+ * The 'UNKNOWN' literal object.
+ *
+ *
+ * @see #UNKNOWN_VALUE
+ * @generated
+ * @ordered
+ */
+ UNKNOWN(0, "UNKNOWN", "UNKNOWN"), /**
+ * The 'STANDALONE' literal object.
+ *
+ *
+ * @see #STANDALONE_VALUE
+ * @generated
+ * @ordered
+ */
+ STANDALONE(0, "STANDALONE", "STANDALONE"),
+
+ /**
+ * The 'MASTER' literal object.
+ *
+ *
+ * @see #MASTER_VALUE
+ * @generated
+ * @ordered
+ */
+ MASTER(0, "MASTER", "MASTER"),
+
+ /**
+ * The 'SLAVE' literal object.
+ *
+ *
+ * @see #SLAVE_VALUE
+ * @generated
+ * @ordered
+ */
+ SLAVE(0, "SLAVE", "SLAVE");
+
+ /**
+ * The 'UNKNOWN' literal value.
+ *
+ *
+ * If the meaning of 'UNKNOWN' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #UNKNOWN
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int UNKNOWN_VALUE = 0;
+
+ /**
+ * The 'STANDALONE' literal value.
+ *
+ *
+ * If the meaning of 'STANDALONE' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #STANDALONE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int STANDALONE_VALUE = 0;
+
+ /**
+ * The 'MASTER' literal value.
+ *
+ *
+ * If the meaning of 'MASTER' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #MASTER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int MASTER_VALUE = 0;
+
+ /**
+ * The 'SLAVE' literal value.
+ *
+ *
+ * If the meaning of 'SLAVE' literal object isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @see #SLAVE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SLAVE_VALUE = 0;
+
+ /**
+ * An array of all the 'Server Role' enumerators.
+ *
+ *
+ * @generated
+ */
+ private static final ServerRole[] VALUES_ARRAY =
+ new ServerRole[] {
+ UNKNOWN,
+ STANDALONE,
+ MASTER,
+ SLAVE,
+ };
+
+ /**
+ * A public read-only list of all the 'Server Role' enumerators.
+ *
+ *
+ * @generated
+ */
+ public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the 'Server Role' literal with the specified literal value.
+ *
+ *
+ * @generated
+ */
+ public static ServerRole get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ServerRole result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Server Role' literal with the specified name.
+ *
+ *
+ * @generated
+ */
+ public static ServerRole getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ServerRole result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the 'Server Role' literal with the specified integer value.
+ *
+ *
+ * @generated
+ */
+ public static ServerRole get(int value) {
+ switch (value) {
+ case UNKNOWN_VALUE: return UNKNOWN;
+ }
+ return null;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final int value;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String name;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ *
+ *
+ * @generated
+ */
+ private ServerRole(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //ServerRole
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerClusterImpl.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerClusterImpl.java
new file mode 100644
index 0000000..7c03e75
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerClusterImpl.java
@@ -0,0 +1,428 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller.impl;
+
+import org.openecomp.dcae.controller.platform.controller.ControllerCluster;
+import org.openecomp.dcae.controller.platform.controller.ControllerClusterServer;
+import org.openecomp.dcae.controller.platform.controller.ControllerPackage;
+
+import org.openecomp.dcae.controller.platform.controller.ServerRole;
+import org.openecomp.ncomp.core.types.metrics.DateMetricAttribute;
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+import java.util.Date;
+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.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ *
+ * An implementation of the model object 'Cluster'.
+ *
+ *
+ * The following features are implemented:
+ *
+ *
{@link org.openecomp.dcae.controller.platform.controller.impl.ControllerClusterImpl#getMyServerName My Server Name}
+ *
+ *
+ * @generated
+ */
+public class ControllerClusterServerImpl extends NamedEntityImpl implements ControllerClusterServer {
+ /**
+ * The default value of the '{@link #getRole() Role}' attribute.
+ *
+ *
+ * @see #getRole()
+ * @generated
+ * @ordered
+ */
+ protected static final ServerRole ROLE_EDEFAULT = ServerRole.UNKNOWN;
+ /**
+ * The cached value of the '{@link #getRole() Role}' attribute.
+ *
+ *
+ * @see #getRole()
+ * @generated
+ * @ordered
+ */
+ protected ServerRole role = ROLE_EDEFAULT;
+ /**
+ * The cached value of the '{@link #getData() Data}' containment reference list.
+ *
+ *
+ * @see #getData()
+ * @generated
+ * @ordered
+ */
+ protected EList data;
+
+ /**
+ * The cached value of the '{@link #getServer() Server}' reference.
+ *
+ *
+ * @see #getServer()
+ * @generated
+ * @ordered
+ */
+ protected DcaeBasicServer server;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ protected ControllerClusterServerImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ControllerPackage.Literals.CONTROLLER_CLUSTER_SERVER;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ServerRole getRole() {
+ return role;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setRole(ServerRole newRole) {
+ ServerRole oldRole = role;
+ role = newRole == null ? ROLE_EDEFAULT : newRole;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ControllerPackage.CONTROLLER_CLUSTER_SERVER__ROLE, oldRole, role));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public EList getData() {
+ if (data == null) {
+ data = new EObjectContainmentEList(ControllerClusterServerData.class, this, ControllerPackage.CONTROLLER_CLUSTER_SERVER__DATA);
+ }
+ return data;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeBasicServer getServer() {
+ if (server != null && server.eIsProxy()) {
+ InternalEObject oldServer = (InternalEObject)server;
+ server = (DcaeBasicServer)eResolveProxy(oldServer);
+ if (server != oldServer) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ControllerPackage.CONTROLLER_CLUSTER_SERVER__SERVER, oldServer, server));
+ }
+ }
+ return server;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeBasicServer basicGetServer() {
+ return server;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setServer(DcaeBasicServer newServer) {
+ DcaeBasicServer oldServer = server;
+ server = newServer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ControllerPackage.CONTROLLER_CLUSTER_SERVER__SERVER, oldServer, server));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__DATA:
+ return ((InternalEList>)getData()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__ROLE:
+ return getRole();
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__DATA:
+ return getData();
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__SERVER:
+ if (resolve) return getServer();
+ return basicGetServer();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__ROLE:
+ setRole((ServerRole)newValue);
+ return;
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__DATA:
+ getData().clear();
+ getData().addAll((Collection extends ControllerClusterServerData>)newValue);
+ return;
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__SERVER:
+ setServer((DcaeBasicServer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__ROLE:
+ setRole(ROLE_EDEFAULT);
+ return;
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__DATA:
+ getData().clear();
+ return;
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__SERVER:
+ setServer((DcaeBasicServer)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__ROLE:
+ return role != ROLE_EDEFAULT;
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__DATA:
+ return data != null && !data.isEmpty();
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER__SERVER:
+ return server != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (role: ");
+ result.append(role);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ControllerClusterServerImpl
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerFactoryImpl.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerFactoryImpl.java
new file mode 100644
index 0000000..d7e6478
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerFactoryImpl.java
@@ -0,0 +1,222 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller.impl;
+
+import org.openecomp.dcae.controller.platform.controller.*;
+
+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;
+
+/**
+ *
+ * An implementation of the model Factory.
+ *
+ * @generated
+ */
+public class ControllerFactoryImpl extends EFactoryImpl implements ControllerFactory {
+ /**
+ * Creates the default factory implementation.
+ *
+ *
+ * @generated
+ */
+ public static ControllerFactory init() {
+ try {
+ ControllerFactory theControllerFactory = (ControllerFactory)EPackage.Registry.INSTANCE.getEFactory(ControllerPackage.eNS_URI);
+ if (theControllerFactory != null) {
+ return theControllerFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ControllerFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ *
+ *
+ * @generated
+ */
+ public ControllerFactoryImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ControllerPackage.DCAE_PLATFORM_CONTROLLER: return createDcaePlatformController();
+ case ControllerPackage.DCAE_DATA_BUS: return createDcaeDataBus();
+ case ControllerPackage.CONTROLLER_CLUSTER: return createControllerCluster();
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER: return createControllerClusterServer();
+ case ControllerPackage.CONTROLLER_CLUSTER_SERVER_DATA: return createControllerClusterServerData();
+ case ControllerPackage.CONTROLLER_VIRTUAL_MACHINE_SERVICE: return createControllerVirtualMachineService();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case ControllerPackage.SERVER_ROLE:
+ return createServerRoleFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case ControllerPackage.SERVER_ROLE:
+ return convertServerRoleToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaePlatformController createDcaePlatformController() {
+ DcaePlatformControllerImpl dcaePlatformController = new DcaePlatformControllerImpl();
+ return dcaePlatformController;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public DcaeDataBus createDcaeDataBus() {
+ DcaeDataBusImpl dcaeDataBus = new DcaeDataBusImpl();
+ return dcaeDataBus;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ControllerCluster createControllerCluster() {
+ ControllerClusterImpl controllerCluster = new ControllerClusterImpl();
+ return controllerCluster;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ControllerClusterServer createControllerClusterServer() {
+ ControllerClusterServerImpl controllerClusterServer = new ControllerClusterServerImpl();
+ return controllerClusterServer;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ControllerClusterServerData createControllerClusterServerData() {
+ ControllerClusterServerDataImpl controllerClusterServerData = new ControllerClusterServerDataImpl();
+ return controllerClusterServerData;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ControllerVirtualMachineService createControllerVirtualMachineService() {
+ ControllerVirtualMachineServiceImpl controllerVirtualMachineService = new ControllerVirtualMachineServiceImpl();
+ return controllerVirtualMachineService;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ServerRole createServerRoleFromString(EDataType eDataType, String initialValue) {
+ ServerRole result = ServerRole.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public String convertServerRoleToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public ControllerPackage getControllerPackage() {
+ return (ControllerPackage)getEPackage();
+ }
+
+ /**
+ *
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ControllerPackage getPackage() {
+ return ControllerPackage.eINSTANCE;
+ }
+
+} //ControllerFactoryImpl
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerPackageImpl.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerPackageImpl.java
new file mode 100644
index 0000000..8725d12
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/ControllerPackageImpl.java
@@ -0,0 +1,700 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller.impl;
+
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.dcae.controller.core.stream.StreamPackage;
+import org.openecomp.dcae.controller.platform.controller.ControllerCluster;
+import org.openecomp.dcae.controller.platform.controller.ControllerClusterServer;
+import org.openecomp.dcae.controller.platform.controller.ControllerClusterServerData;
+import org.openecomp.dcae.controller.platform.controller.ControllerFactory;
+import org.openecomp.dcae.controller.platform.controller.ControllerPackage;
+import org.openecomp.dcae.controller.platform.controller.ControllerVirtualMachineService;
+import org.openecomp.dcae.controller.platform.controller.DcaeDataBus;
+import org.openecomp.dcae.controller.platform.controller.DcaePlatformController;
+import org.openecomp.dcae.controller.platform.controller.ServerRole;
+import org.openecomp.dcae.controller.service.vm.VmPackage;
+import org.openecomp.ncomp.core.CorePackage;
+import org.openecomp.ncomp.openstack.OpenstackPackage;
+import org.openecomp.ncomp.sirius.manager.server.ServerPackage;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+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;
+
+/**
+ *
+ * An implementation of the model Package.
+ *
+ * @generated
+ */
+public class ControllerPackageImpl extends EPackageImpl implements ControllerPackage {
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaePlatformControllerEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass dcaeDataBusEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass controllerClusterEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass controllerClusterServerEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass controllerClusterServerDataEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EClass controllerVirtualMachineServiceEClass = null;
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private EEnum serverRoleEEnum = null;
+
+ /**
+ * Creates an instance of the model Package, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ *
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.
+ *
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.platform.controller.ControllerPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ControllerPackageImpl() {
+ super(eNS_URI, ControllerFactory.eINSTANCE);
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the Package for this model, and for any others upon which it depends.
+ *
+ *
+ *
+ * @generated
+ */
+public class ControllerVirtualMachineServiceImpl extends VirtualMachineServiceImpl implements ControllerVirtualMachineService {
+ /**
+ *
+ *
+ * @generated
+ */
+ protected ControllerVirtualMachineServiceImpl() {
+ super();
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ControllerPackage.Literals.CONTROLLER_VIRTUAL_MACHINE_SERVICE;
+ }
+
+} //ControllerVirtualMachineServiceImpl
diff --git a/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/DcaeDataBusImpl.java b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/DcaeDataBusImpl.java
new file mode 100644
index 0000000..eb17eff
--- /dev/null
+++ b/dcae-controller-core/dcae-controller-platform-model/src/main/xcore-gen/org/openecomp/dcae/controller/platform/controller/impl/DcaeDataBusImpl.java
@@ -0,0 +1,276 @@
+
+/*-
+ * ============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.dcae.controller.platform.controller.impl;
+
+import org.openecomp.dcae.controller.core.stream.DatabusDataRouterNode;
+import org.openecomp.dcae.controller.core.stream.DatabusLocation;
+import org.openecomp.dcae.controller.core.stream.DatabusMessageRouterCluster;
+import org.openecomp.dcae.controller.core.stream.DatabusStream;
+import org.openecomp.dcae.controller.platform.controller.ControllerPackage;
+import org.openecomp.dcae.controller.platform.controller.DcaeDataBus;
+import java.util.Collection;
+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.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ *
+ * An implementation of the model object 'Dcae Data Bus'.
+ *
+ *