aboutsummaryrefslogtreecommitdiffstats
path: root/dcae-controller-service-docker/dcae-controller-service-docker-model
diff options
context:
space:
mode:
authorlj1412 <lji@research.att.com>2017-02-14 15:12:08 +0000
committerlj1412 <lji@research.att.com>2017-02-14 15:12:10 +0000
commita84b847a3409df445482674feffa2872a8cbae83 (patch)
treea4f2dcaef92e0fb09402f2f28f793928d0a16bfd /dcae-controller-service-docker/dcae-controller-service-docker-model
parente6bca17737d1897675e6403e196fc2a61f335651 (diff)
Init dcae.controller
Change-Id: I460f09494faa84b55d9c5d54112e098b0e74d007 Signed-off-by: lj1412 <lji@research.att.com>
Diffstat (limited to 'dcae-controller-service-docker/dcae-controller-service-docker-model')
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/.classpath17
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/.gitignore2
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/.project34
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/.settings/org.eclipse.jdt.core.prefs2
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/.settings/org.eclipse.m2e.core.prefs4
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/LICENSE.txt22
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/META-INF/MANIFEST.MF31
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/build.properties11
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.properties4
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.xml25
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/pom.xml36
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerConfiguration.java72
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerFactory.java90
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerPackage.java1131
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerService.java63
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceDescriptor.java233
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceInstance.java280
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerConfigurationImpl.java184
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerFactoryImpl.java149
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerPackageImpl.java516
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceDescriptorImpl.java509
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceImpl.java173
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceInstanceImpl.java649
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerAdapterFactory.java273
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerSwitch.java266
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockerManager.java72
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerFactory.java63
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerPackage.java256
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockerManagerImpl.java194
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerFactoryImpl.java116
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerPackageImpl.java207
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerAdapterFactory.java161
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerSwitch.java149
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/manager.xcore34
-rw-r--r--dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/service.xcore72
35 files changed, 6100 insertions, 0 deletions
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/.classpath b/dcae-controller-service-docker/dcae-controller-service-docker-model/.classpath
new file mode 100644
index 0000000..69b19c6
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/.classpath
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" output="target/classes" path="src/main/xcore">
+ <attributes>
+ <attribute name="optional" value="true"/>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="src" path="src/main/xcore-gen"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
+ <attributes>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/.gitignore b/dcae-controller-service-docker/dcae-controller-service-docker-model/.gitignore
new file mode 100644
index 0000000..09e3bc9
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/.gitignore
@@ -0,0 +1,2 @@
+/bin/
+/target/
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/.project b/dcae-controller-service-docker/dcae-controller-service-docker-model/.project
new file mode 100644
index 0000000..d0956da
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>dcae-controller-service-docker-model</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ </natures>
+</projectDescription>
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/.settings/org.eclipse.jdt.core.prefs b/dcae-controller-service-docker/dcae-controller-service-docker-model/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..4ede96d
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-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-service-docker/dcae-controller-service-docker-model/.settings/org.eclipse.m2e.core.prefs b/dcae-controller-service-docker/dcae-controller-service-docker-model/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-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-service-docker/dcae-controller-service-docker-model/LICENSE.txt b/dcae-controller-service-docker/dcae-controller-service-docker-model/LICENSE.txt
new file mode 100644
index 0000000..30471b5
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-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-service-docker/dcae-controller-service-docker-model/META-INF/MANIFEST.MF b/dcae-controller-service-docker/dcae-controller-service-docker-model/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..b7ce9fb
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/META-INF/MANIFEST.MF
@@ -0,0 +1,31 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: dcae-controller-service-docker-model;singleton:=true
+Bundle-Version: 0.1.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Export-Package: org.openecomp.dcae.controller.service.dockermanager,
+ org.openecomp.dcae.controller.service.dockermanager.impl,
+ org.openecomp.dcae.controller.service.dockermanager.util,
+ org.openecomp.dcae.controller.service.docker,
+ org.openecomp.dcae.controller.service.docker.impl,
+ org.openecomp.dcae.controller.service.docker.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.xtext.xbase.lib,
+ org.eclipse.emf.ecore.xcore.lib,
+ dcae-controller-core-model;visibility:=reexport,
+ ncomp-core-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-openstack-model;visibility:=reexport,
+ ncomp-sirius-manager-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-core-types;bundle-version="0.1.0",
+ ncomp-utils-java;bundle-version="0.1.0",
+ ncomp-sirius-manager-agent-model;visibility:=reexport,
+ ncomp-docker-model;bundle-version="0.1.0";visibility:=reexport,
+ dcae-controller-service-vm-model;bundle-version="0.1.0";visibility:=reexport,
+ dcae-controller-service-docker-model;visibility:=reexport,
+ dcae-controller-service-docker-host-model;visibility:=reexport
+Bundle-ActivationPolicy: lazy
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/build.properties b/dcae-controller-service-docker/dcae-controller-service-docker-model/build.properties
new file mode 100644
index 0000000..6d35b6f
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-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-service-docker/dcae-controller-service-docker-model/plugin.properties b/dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.properties
new file mode 100644
index 0000000..04852d2
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.properties
@@ -0,0 +1,4 @@
+#
+
+pluginName = Router Model
+providerName = www.example.org
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.xml b/dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.xml
new file mode 100644
index 0000000..360106d
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/plugin.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated service -->
+ <package
+ uri="org.openecomp.dcae.controller.service.docker"
+ class="org.openecomp.dcae.controller.service.docker.DockerPackage"
+ genModel="src/main/xcore/service.xcore"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated manager -->
+ <package
+ uri="org.openecomp.dcae.controller.service.dockermanager"
+ class="org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage"
+ genModel="src/main/xcore/manager.xcore"/>
+ </extension>
+
+</plugin>
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/pom.xml b/dcae-controller-service-docker/dcae-controller-service-docker-model/pom.xml
new file mode 100644
index 0000000..e7c8945
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/pom.xml
@@ -0,0 +1,36 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.dcae.controller</groupId>
+ <artifactId>dcae-controller-service-docker-model</artifactId>
+ <parent>
+ <groupId>org.openecomp.ncomp.maven</groupId>
+ <artifactId>ncomp-maven-xcore</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+ <relativePath>../../../dcae-org.openecomp.ncomp.maven/ncomp-maven-xcore</relativePath>
+ </parent>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.ncomp.sirius.manager</groupId>
+ <artifactId>ncomp-sirius-manager-model</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.dcae.controller</groupId>
+ <artifactId>dcae-controller-service-vm-model</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.ncomp.docker</groupId>
+ <artifactId>ncomp-docker-model</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.dcae.controller</groupId>
+ <artifactId>
+ dcae-controller-service-docker-host-model
+ </artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerConfiguration.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerConfiguration.java
new file mode 100644
index 0000000..bbf2a17
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerConfiguration.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.service.docker;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Configuration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerConfiguration#getConfiguration <em>Configuration</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerConfiguration()
+ * @model
+ * @generated
+ */
+public interface DockerConfiguration extends EObject {
+ /**
+ * Returns the value of the '<em><b>Configuration</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Configuration</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Configuration</em>' attribute.
+ * @see #setConfiguration(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerConfiguration_Configuration()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * @generated
+ */
+ String getConfiguration();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerConfiguration#getConfiguration <em>Configuration</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Configuration</em>' attribute.
+ * @see #getConfiguration()
+ * @generated
+ */
+ void setConfiguration(String value);
+
+} // DockerConfiguration
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerFactory.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerFactory.java
new file mode 100644
index 0000000..c8eb4d5
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerFactory.java
@@ -0,0 +1,90 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END============================================
+ */
+
+/**
+ */
+package org.openecomp.dcae.controller.service.docker;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage
+ * @generated
+ */
+public interface DockerFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DockerFactory eINSTANCE = org.openecomp.dcae.controller.service.docker.impl.DockerFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Service</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Service</em>'.
+ * @generated
+ */
+ DockerService createDockerService();
+
+ /**
+ * Returns a new object of class '<em>Service Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Service Instance</em>'.
+ * @generated
+ */
+ DockerServiceInstance createDockerServiceInstance();
+
+ /**
+ * Returns a new object of class '<em>Configuration</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Configuration</em>'.
+ * @generated
+ */
+ DockerConfiguration createDockerConfiguration();
+
+ /**
+ * Returns a new object of class '<em>Service Descriptor</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Service Descriptor</em>'.
+ * @generated
+ */
+ DockerServiceDescriptor createDockerServiceDescriptor();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DockerPackage getDockerPackage();
+
+} //DockerFactory
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerPackage.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerPackage.java
new file mode 100644
index 0000000..cf53fe1
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerPackage.java
@@ -0,0 +1,1131 @@
+
+/*-
+ * ============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.service.docker;
+
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.DockerFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-service-docker-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.service'"
+ * annotation="http://www.eclipse.org/emf/2011/Xcore ecomp='http://openecomp.org'"
+ * @generated
+ */
+public interface DockerPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "docker";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.service.docker";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "docker";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DockerPackage eINSTANCE = org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceImpl <em>Service</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerServiceImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerService()
+ * @generated
+ */
+ int DOCKER_SERVICE = 0;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE__NAME = ServicePackage.DCAE_SERVICE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE__LAST_POLLED = ServicePackage.DCAE_SERVICE__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE__LAST_CHANGED = ServicePackage.DCAE_SERVICE__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE__CREATED = ServicePackage.DCAE_SERVICE__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Instances</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE__INSTANCES = ServicePackage.DCAE_SERVICE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Service</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_FEATURE_COUNT = ServicePackage.DCAE_SERVICE_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Deploy</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___DEPLOY__STRING_STRING = ServicePackage.DCAE_SERVICE___DEPLOY__STRING_STRING;
+
+ /**
+ * The operation id for the '<em>Undeploy</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___UNDEPLOY__STRING = ServicePackage.DCAE_SERVICE___UNDEPLOY__STRING;
+
+ /**
+ * The operation id for the '<em>Test</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___TEST__STRING = ServicePackage.DCAE_SERVICE___TEST__STRING;
+
+ /**
+ * The operation id for the '<em>Suspend</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___SUSPEND__STRING = ServicePackage.DCAE_SERVICE___SUSPEND__STRING;
+
+ /**
+ * The operation id for the '<em>Resume</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___RESUME__STRING = ServicePackage.DCAE_SERVICE___RESUME__STRING;
+
+ /**
+ * The operation id for the '<em>Push Manager Configuration</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING = ServicePackage.DCAE_SERVICE___PUSH_MANAGER_CONFIGURATION__STRING;
+
+ /**
+ * The operation id for the '<em>Poll Manager Configuration</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___POLL_MANAGER_CONFIGURATION__STRING = ServicePackage.DCAE_SERVICE___POLL_MANAGER_CONFIGURATION__STRING;
+
+ /**
+ * The operation id for the '<em>Manager Configuration</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___MANAGER_CONFIGURATION__STRING = ServicePackage.DCAE_SERVICE___MANAGER_CONFIGURATION__STRING;
+
+ /**
+ * The operation id for the '<em>Manager Operation</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT = ServicePackage.DCAE_SERVICE___MANAGER_OPERATION__STRING_STRING_JSONOBJECT;
+
+ /**
+ * The operation id for the '<em>Update Configuration From Policy</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING = ServicePackage.DCAE_SERVICE___UPDATE_CONFIGURATION_FROM_POLICY__STRING;
+
+ /**
+ * The operation id for the '<em>Run Health Tests</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE___RUN_HEALTH_TESTS = ServicePackage.DCAE_SERVICE___RUN_HEALTH_TESTS;
+
+ /**
+ * The number of operations of the '<em>Service</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_OPERATION_COUNT = ServicePackage.DCAE_SERVICE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl <em>Service Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerServiceInstance()
+ * @generated
+ */
+ int DOCKER_SERVICE_INSTANCE = 1;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__NAME = ServicePackage.DCAE_SERVICE_INSTANCE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__LAST_POLLED = ServicePackage.DCAE_SERVICE_INSTANCE__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__LAST_CHANGED = ServicePackage.DCAE_SERVICE_INSTANCE__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__CREATED = ServicePackage.DCAE_SERVICE_INSTANCE__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Service Container</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__SERVICE_CONTAINER = ServicePackage.DCAE_SERVICE_INSTANCE__SERVICE_CONTAINER;
+
+ /**
+ * The feature id for the '<em><b>Status</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__STATUS = ServicePackage.DCAE_SERVICE_INSTANCE__STATUS;
+
+ /**
+ * The feature id for the '<em><b>Input Streams</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__INPUT_STREAMS = ServicePackage.DCAE_SERVICE_INSTANCE__INPUT_STREAMS;
+
+ /**
+ * The feature id for the '<em><b>Output Streams</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__OUTPUT_STREAMS = ServicePackage.DCAE_SERVICE_INSTANCE__OUTPUT_STREAMS;
+
+ /**
+ * The feature id for the '<em><b>Last Health Test</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__LAST_HEALTH_TEST = ServicePackage.DCAE_SERVICE_INSTANCE__LAST_HEALTH_TEST;
+
+ /**
+ * The feature id for the '<em><b>Health Test Status</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__HEALTH_TEST_STATUS = ServicePackage.DCAE_SERVICE_INSTANCE__HEALTH_TEST_STATUS;
+
+ /**
+ * The feature id for the '<em><b>Health Test Message Code</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__HEALTH_TEST_MESSAGE_CODE = ServicePackage.DCAE_SERVICE_INSTANCE__HEALTH_TEST_MESSAGE_CODE;
+
+ /**
+ * The feature id for the '<em><b>Docker Host</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__DOCKER_HOST = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Host Service</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__HOST_SERVICE = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Docker Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__DOCKER_NAME = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Image</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__IMAGE = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Configuration</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__CONFIGURATION = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Volumes</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__VOLUMES = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Links</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__LINKS = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Envs</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__ENVS = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Port Bindings</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__PORT_BINDINGS = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the '<em><b>Manager Port Number</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 9;
+
+ /**
+ * The number of structural features of the '<em>Service Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE_FEATURE_COUNT = ServicePackage.DCAE_SERVICE_INSTANCE_FEATURE_COUNT + 10;
+
+ /**
+ * The number of operations of the '<em>Service Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_INSTANCE_OPERATION_COUNT = ServicePackage.DCAE_SERVICE_INSTANCE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerConfigurationImpl <em>Configuration</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerConfigurationImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerConfiguration()
+ * @generated
+ */
+ int DOCKER_CONFIGURATION = 2;
+
+ /**
+ * The feature id for the '<em><b>Configuration</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_CONFIGURATION__CONFIGURATION = 0;
+
+ /**
+ * The number of structural features of the '<em>Configuration</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_CONFIGURATION_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Configuration</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_CONFIGURATION_OPERATION_COUNT = 0;
+
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl <em>Service Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerServiceDescriptor()
+ * @generated
+ */
+ int DOCKER_SERVICE_DESCRIPTOR = 3;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__NAME = ServicePackage.DCAE_SERVICE_DESCRIPTOR__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__LAST_POLLED = ServicePackage.DCAE_SERVICE_DESCRIPTOR__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__LAST_CHANGED = ServicePackage.DCAE_SERVICE_DESCRIPTOR__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__CREATED = ServicePackage.DCAE_SERVICE_DESCRIPTOR__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Group Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__GROUP_ID = ServicePackage.DCAE_SERVICE_DESCRIPTOR__GROUP_ID;
+
+ /**
+ * The feature id for the '<em><b>Artifact</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__ARTIFACT = ServicePackage.DCAE_SERVICE_DESCRIPTOR__ARTIFACT;
+
+ /**
+ * The feature id for the '<em><b>Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__VERSION = ServicePackage.DCAE_SERVICE_DESCRIPTOR__VERSION;
+
+ /**
+ * The feature id for the '<em><b>Service Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Service Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Service Instance Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Docker Image</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Manager Port Number</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Manager User</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Encrypted Password</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the '<em>Service Descriptor</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR_FEATURE_COUNT = ServicePackage.DCAE_SERVICE_DESCRIPTOR_FEATURE_COUNT + 7;
+
+ /**
+ * The number of operations of the '<em>Service Descriptor</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_SERVICE_DESCRIPTOR_OPERATION_COUNT = ServicePackage.DCAE_SERVICE_DESCRIPTOR_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.service.docker.DockerService <em>Service</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Service</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerService
+ * @generated
+ */
+ EClass getDockerService();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.service.docker.DockerService#getInstances <em>Instances</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Instances</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerService#getInstances()
+ * @see #getDockerService()
+ * @generated
+ */
+ EReference getDockerService_Instances();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance <em>Service Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Service Instance</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance
+ * @generated
+ */
+ EClass getDockerServiceInstance();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerHost <em>Docker Host</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Docker Host</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerHost()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EReference getDockerServiceInstance_DockerHost();
+
+ /**
+ * Returns the meta object for the reference '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getHostService <em>Host Service</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Host Service</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getHostService()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EReference getDockerServiceInstance_HostService();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerName <em>Docker Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Docker Name</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerName()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EAttribute getDockerServiceInstance_DockerName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getImage <em>Image</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Image</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getImage()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EAttribute getDockerServiceInstance_Image();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getConfiguration <em>Configuration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Configuration</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getConfiguration()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EReference getDockerServiceInstance_Configuration();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getVolumes <em>Volumes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Volumes</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getVolumes()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EAttribute getDockerServiceInstance_Volumes();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getLinks <em>Links</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Links</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getLinks()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EAttribute getDockerServiceInstance_Links();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getEnvs <em>Envs</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Envs</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getEnvs()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EAttribute getDockerServiceInstance_Envs();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getPortBindings <em>Port Bindings</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Port Bindings</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getPortBindings()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EReference getDockerServiceInstance_PortBindings();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getManagerPortNumber <em>Manager Port Number</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Manager Port Number</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getManagerPortNumber()
+ * @see #getDockerServiceInstance()
+ * @generated
+ */
+ EAttribute getDockerServiceInstance_ManagerPortNumber();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.service.docker.DockerConfiguration <em>Configuration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Configuration</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerConfiguration
+ * @generated
+ */
+ EClass getDockerConfiguration();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerConfiguration#getConfiguration <em>Configuration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Configuration</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerConfiguration#getConfiguration()
+ * @see #getDockerConfiguration()
+ * @generated
+ */
+ EAttribute getDockerConfiguration_Configuration();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor <em>Service Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Service Descriptor</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor
+ * @generated
+ */
+ EClass getDockerServiceDescriptor();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServicePackage <em>Service Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Service Package</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServicePackage()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_ServicePackage();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceClass <em>Service Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Service Class</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceClass()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_ServiceClass();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceInstanceClass <em>Service Instance Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Service Instance Class</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceInstanceClass()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_ServiceInstanceClass();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getDockerImage <em>Docker Image</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Docker Image</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getDockerImage()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_DockerImage();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerPortNumber <em>Manager Port Number</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Manager Port Number</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerPortNumber()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_ManagerPortNumber();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerUser <em>Manager User</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Manager User</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerUser()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_ManagerUser();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getEncryptedPassword <em>Encrypted Password</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Encrypted Password</em>'.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getEncryptedPassword()
+ * @see #getDockerServiceDescriptor()
+ * @generated
+ */
+ EAttribute getDockerServiceDescriptor_EncryptedPassword();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ DockerFactory getDockerFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceImpl <em>Service</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerServiceImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerService()
+ * @generated
+ */
+ EClass DOCKER_SERVICE = eINSTANCE.getDockerService();
+
+ /**
+ * The meta object literal for the '<em><b>Instances</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCKER_SERVICE__INSTANCES = eINSTANCE.getDockerService_Instances();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl <em>Service Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerServiceInstance()
+ * @generated
+ */
+ EClass DOCKER_SERVICE_INSTANCE = eINSTANCE.getDockerServiceInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Docker Host</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCKER_SERVICE_INSTANCE__DOCKER_HOST = eINSTANCE.getDockerServiceInstance_DockerHost();
+
+ /**
+ * The meta object literal for the '<em><b>Host Service</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCKER_SERVICE_INSTANCE__HOST_SERVICE = eINSTANCE.getDockerServiceInstance_HostService();
+
+ /**
+ * The meta object literal for the '<em><b>Docker Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_INSTANCE__DOCKER_NAME = eINSTANCE.getDockerServiceInstance_DockerName();
+
+ /**
+ * The meta object literal for the '<em><b>Image</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_INSTANCE__IMAGE = eINSTANCE.getDockerServiceInstance_Image();
+
+ /**
+ * The meta object literal for the '<em><b>Configuration</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCKER_SERVICE_INSTANCE__CONFIGURATION = eINSTANCE.getDockerServiceInstance_Configuration();
+
+ /**
+ * The meta object literal for the '<em><b>Volumes</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_INSTANCE__VOLUMES = eINSTANCE.getDockerServiceInstance_Volumes();
+
+ /**
+ * The meta object literal for the '<em><b>Links</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_INSTANCE__LINKS = eINSTANCE.getDockerServiceInstance_Links();
+
+ /**
+ * The meta object literal for the '<em><b>Envs</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_INSTANCE__ENVS = eINSTANCE.getDockerServiceInstance_Envs();
+
+ /**
+ * The meta object literal for the '<em><b>Port Bindings</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCKER_SERVICE_INSTANCE__PORT_BINDINGS = eINSTANCE.getDockerServiceInstance_PortBindings();
+
+ /**
+ * The meta object literal for the '<em><b>Manager Port Number</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER = eINSTANCE.getDockerServiceInstance_ManagerPortNumber();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerConfigurationImpl <em>Configuration</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerConfigurationImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerConfiguration()
+ * @generated
+ */
+ EClass DOCKER_CONFIGURATION = eINSTANCE.getDockerConfiguration();
+
+ /**
+ * The meta object literal for the '<em><b>Configuration</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_CONFIGURATION__CONFIGURATION = eINSTANCE.getDockerConfiguration_Configuration();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl <em>Service Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl
+ * @see org.openecomp.dcae.controller.service.docker.impl.DockerPackageImpl#getDockerServiceDescriptor()
+ * @generated
+ */
+ EClass DOCKER_SERVICE_DESCRIPTOR = eINSTANCE.getDockerServiceDescriptor();
+
+ /**
+ * The meta object literal for the '<em><b>Service Package</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE = eINSTANCE.getDockerServiceDescriptor_ServicePackage();
+
+ /**
+ * The meta object literal for the '<em><b>Service Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS = eINSTANCE.getDockerServiceDescriptor_ServiceClass();
+
+ /**
+ * The meta object literal for the '<em><b>Service Instance Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS = eINSTANCE.getDockerServiceDescriptor_ServiceInstanceClass();
+
+ /**
+ * The meta object literal for the '<em><b>Docker Image</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE = eINSTANCE.getDockerServiceDescriptor_DockerImage();
+
+ /**
+ * The meta object literal for the '<em><b>Manager Port Number</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER = eINSTANCE.getDockerServiceDescriptor_ManagerPortNumber();
+
+ /**
+ * The meta object literal for the '<em><b>Manager User</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER = eINSTANCE.getDockerServiceDescriptor_ManagerUser();
+
+ /**
+ * The meta object literal for the '<em><b>Encrypted Password</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD = eINSTANCE.getDockerServiceDescriptor_EncryptedPassword();
+
+ }
+
+} //DockerPackage
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerService.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerService.java
new file mode 100644
index 0000000..fd57ae7
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerService.java
@@ -0,0 +1,63 @@
+
+/*-
+ * ============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.service.docker;
+
+import org.openecomp.dcae.controller.core.service.DcaeService;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Service</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerService#getInstances <em>Instances</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerService()
+ * @model
+ * @generated
+ */
+public interface DockerService extends DcaeService {
+ /**
+ * Returns the value of the '<em><b>Instances</b></em>' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Instances</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Instances</em>' containment reference list.
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerService_Instances()
+ * @model containment="true"
+ * @generated
+ */
+ EList<DockerServiceInstance> getInstances();
+
+} // DockerService
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceDescriptor.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceDescriptor.java
new file mode 100644
index 0000000..fc114e2
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceDescriptor.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.service.docker;
+
+import org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Service Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServicePackage <em>Service Package</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceClass <em>Service Class</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceInstanceClass <em>Service Instance Class</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getDockerImage <em>Docker Image</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerPortNumber <em>Manager Port Number</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerUser <em>Manager User</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getEncryptedPassword <em>Encrypted Password</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor()
+ * @model
+ * @generated
+ */
+public interface DockerServiceDescriptor extends DcaeServiceDescriptor {
+ /**
+ * Returns the value of the '<em><b>Service Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Service Package</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Service Package</em>' attribute.
+ * @see #setServicePackage(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_ServicePackage()
+ * @model unique="false"
+ * @generated
+ */
+ String getServicePackage();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServicePackage <em>Service Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Service Package</em>' attribute.
+ * @see #getServicePackage()
+ * @generated
+ */
+ void setServicePackage(String value);
+
+ /**
+ * Returns the value of the '<em><b>Service Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Service Class</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Service Class</em>' attribute.
+ * @see #setServiceClass(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_ServiceClass()
+ * @model unique="false"
+ * @generated
+ */
+ String getServiceClass();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceClass <em>Service Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Service Class</em>' attribute.
+ * @see #getServiceClass()
+ * @generated
+ */
+ void setServiceClass(String value);
+
+ /**
+ * Returns the value of the '<em><b>Service Instance Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Service Instance Class</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Service Instance Class</em>' attribute.
+ * @see #setServiceInstanceClass(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_ServiceInstanceClass()
+ * @model unique="false"
+ * @generated
+ */
+ String getServiceInstanceClass();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getServiceInstanceClass <em>Service Instance Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Service Instance Class</em>' attribute.
+ * @see #getServiceInstanceClass()
+ * @generated
+ */
+ void setServiceInstanceClass(String value);
+
+ /**
+ * Returns the value of the '<em><b>Docker Image</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Docker Image</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Docker Image</em>' attribute.
+ * @see #setDockerImage(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_DockerImage()
+ * @model unique="false"
+ * @generated
+ */
+ String getDockerImage();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getDockerImage <em>Docker Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Docker Image</em>' attribute.
+ * @see #getDockerImage()
+ * @generated
+ */
+ void setDockerImage(String value);
+
+ /**
+ * Returns the value of the '<em><b>Manager Port Number</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Manager Port Number</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Manager Port Number</em>' attribute.
+ * @see #setManagerPortNumber(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_ManagerPortNumber()
+ * @model unique="false"
+ * @generated
+ */
+ String getManagerPortNumber();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerPortNumber <em>Manager Port Number</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Manager Port Number</em>' attribute.
+ * @see #getManagerPortNumber()
+ * @generated
+ */
+ void setManagerPortNumber(String value);
+
+ /**
+ * Returns the value of the '<em><b>Manager User</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Manager User</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Manager User</em>' attribute.
+ * @see #setManagerUser(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_ManagerUser()
+ * @model unique="false"
+ * @generated
+ */
+ String getManagerUser();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getManagerUser <em>Manager User</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Manager User</em>' attribute.
+ * @see #getManagerUser()
+ * @generated
+ */
+ void setManagerUser(String value);
+
+ /**
+ * Returns the value of the '<em><b>Encrypted Password</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Encrypted Password</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Encrypted Password</em>' attribute.
+ * @see #setEncryptedPassword(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceDescriptor_EncryptedPassword()
+ * @model unique="false"
+ * @generated
+ */
+ String getEncryptedPassword();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor#getEncryptedPassword <em>Encrypted Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Encrypted Password</em>' attribute.
+ * @see #getEncryptedPassword()
+ * @generated
+ */
+ void setEncryptedPassword(String value);
+
+} // DockerServiceDescriptor
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceInstance.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceInstance.java
new file mode 100644
index 0000000..0d9ecb9
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/DockerServiceInstance.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.service.docker;
+
+import org.openecomp.dcae.controller.core.service.DcaeServiceInstance;
+import org.openecomp.dcae.controller.service.docker.host.service.DockerHostServiceInstance;
+import org.openecomp.ncomp.docker.ContainerPortBindings;
+import org.openecomp.ncomp.docker.DockerHost;
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Service Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerHost <em>Docker Host</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getHostService <em>Host Service</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerName <em>Docker Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getImage <em>Image</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getConfiguration <em>Configuration</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getVolumes <em>Volumes</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getLinks <em>Links</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getEnvs <em>Envs</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getPortBindings <em>Port Bindings</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getManagerPortNumber <em>Manager Port Number</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance()
+ * @model
+ * @generated
+ */
+public interface DockerServiceInstance extends DcaeServiceInstance {
+ /**
+ * Returns the value of the '<em><b>Docker Host</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Docker Host</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Docker Host</em>' containment reference.
+ * @see #setDockerHost(DockerHost)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_DockerHost()
+ * @model containment="true"
+ * annotation="http://openecomp.org type='configuration'"
+ * @generated
+ */
+ DockerHost getDockerHost();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerHost <em>Docker Host</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Docker Host</em>' containment reference.
+ * @see #getDockerHost()
+ * @generated
+ */
+ void setDockerHost(DockerHost value);
+
+ /**
+ * Returns the value of the '<em><b>Host Service</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Host Service</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Host Service</em>' reference.
+ * @see #setHostService(DockerHostServiceInstance)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_HostService()
+ * @model
+ * @generated
+ */
+ DockerHostServiceInstance getHostService();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getHostService <em>Host Service</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Host Service</em>' reference.
+ * @see #getHostService()
+ * @generated
+ */
+ void setHostService(DockerHostServiceInstance value);
+
+ /**
+ * Returns the value of the '<em><b>Docker Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Docker Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Docker Name</em>' attribute.
+ * @see #setDockerName(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_DockerName()
+ * @model unique="false"
+ * @generated
+ */
+ String getDockerName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getDockerName <em>Docker Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Docker Name</em>' attribute.
+ * @see #getDockerName()
+ * @generated
+ */
+ void setDockerName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Image</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Image</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Image</em>' attribute.
+ * @see #setImage(String)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_Image()
+ * @model unique="false"
+ * @generated
+ */
+ String getImage();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getImage <em>Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Image</em>' attribute.
+ * @see #getImage()
+ * @generated
+ */
+ void setImage(String value);
+
+ /**
+ * Returns the value of the '<em><b>Configuration</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Configuration</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Configuration</em>' containment reference.
+ * @see #setConfiguration(DockerConfiguration)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_Configuration()
+ * @model containment="true"
+ * @generated
+ */
+ DockerConfiguration getConfiguration();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getConfiguration <em>Configuration</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Configuration</em>' containment reference.
+ * @see #getConfiguration()
+ * @generated
+ */
+ void setConfiguration(DockerConfiguration value);
+
+ /**
+ * Returns the value of the '<em><b>Volumes</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Volumes</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Volumes</em>' attribute list.
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_Volumes()
+ * @model unique="false"
+ * @generated
+ */
+ EList<String> getVolumes();
+
+ /**
+ * Returns the value of the '<em><b>Links</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Links</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Links</em>' attribute list.
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_Links()
+ * @model unique="false"
+ * @generated
+ */
+ EList<String> getLinks();
+
+ /**
+ * Returns the value of the '<em><b>Envs</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Envs</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Envs</em>' attribute list.
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_Envs()
+ * @model unique="false"
+ * @generated
+ */
+ EList<String> getEnvs();
+
+ /**
+ * Returns the value of the '<em><b>Port Bindings</b></em>' containment reference list.
+ * The list contents are of type {@link org.openecomp.ncomp.docker.ContainerPortBindings}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Port Bindings</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Port Bindings</em>' containment reference list.
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_PortBindings()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ContainerPortBindings> getPortBindings();
+
+ /**
+ * Returns the value of the '<em><b>Manager Port Number</b></em>' attribute.
+ * The default value is <code>"9999"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Manager Port Number</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Manager Port Number</em>' attribute.
+ * @see #setManagerPortNumber(int)
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#getDockerServiceInstance_ManagerPortNumber()
+ * @model default="9999" unique="false"
+ * @generated
+ */
+ int getManagerPortNumber();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance#getManagerPortNumber <em>Manager Port Number</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Manager Port Number</em>' attribute.
+ * @see #getManagerPortNumber()
+ * @generated
+ */
+ void setManagerPortNumber(int value);
+
+} // DockerServiceInstance
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerConfigurationImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerConfigurationImpl.java
new file mode 100644
index 0000000..dc9797b
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerConfigurationImpl.java
@@ -0,0 +1,184 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END============================================
+ */
+
+/**
+ */
+package org.openecomp.dcae.controller.service.docker.impl;
+
+import org.openecomp.dcae.controller.service.docker.DockerConfiguration;
+import org.openecomp.dcae.controller.service.docker.DockerPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Configuration</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerConfigurationImpl#getConfiguration <em>Configuration</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DockerConfigurationImpl extends MinimalEObjectImpl.Container implements DockerConfiguration {
+ /**
+ * The default value of the '{@link #getConfiguration() <em>Configuration</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConfiguration()
+ * @generated
+ * @ordered
+ */
+ protected static final String CONFIGURATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getConfiguration() <em>Configuration</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConfiguration()
+ * @generated
+ * @ordered
+ */
+ protected String configuration = CONFIGURATION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockerConfigurationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DockerPackage.Literals.DOCKER_CONFIGURATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getConfiguration() {
+ return configuration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConfiguration(String newConfiguration) {
+ String oldConfiguration = configuration;
+ configuration = newConfiguration;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_CONFIGURATION__CONFIGURATION, oldConfiguration, configuration));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_CONFIGURATION__CONFIGURATION:
+ return getConfiguration();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_CONFIGURATION__CONFIGURATION:
+ setConfiguration((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_CONFIGURATION__CONFIGURATION:
+ setConfiguration(CONFIGURATION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_CONFIGURATION__CONFIGURATION:
+ return CONFIGURATION_EDEFAULT == null ? configuration != null : !CONFIGURATION_EDEFAULT.equals(configuration);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (configuration: ");
+ result.append(configuration);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DockerConfigurationImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerFactoryImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerFactoryImpl.java
new file mode 100644
index 0000000..70aeab7
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerFactoryImpl.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.service.docker.impl;
+
+import org.openecomp.dcae.controller.service.docker.*;
+
+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;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DockerFactoryImpl extends EFactoryImpl implements DockerFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static DockerFactory init() {
+ try {
+ DockerFactory theDockerFactory = (DockerFactory)EPackage.Registry.INSTANCE.getEFactory(DockerPackage.eNS_URI);
+ if (theDockerFactory != null) {
+ return theDockerFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DockerFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DockerPackage.DOCKER_SERVICE: return createDockerService();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE: return createDockerServiceInstance();
+ case DockerPackage.DOCKER_CONFIGURATION: return createDockerConfiguration();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR: return createDockerServiceDescriptor();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerService createDockerService() {
+ DockerServiceImpl dockerService = new DockerServiceImpl();
+ return dockerService;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerServiceInstance createDockerServiceInstance() {
+ DockerServiceInstanceImpl dockerServiceInstance = new DockerServiceInstanceImpl();
+ return dockerServiceInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerConfiguration createDockerConfiguration() {
+ DockerConfigurationImpl dockerConfiguration = new DockerConfigurationImpl();
+ return dockerConfiguration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerServiceDescriptor createDockerServiceDescriptor() {
+ DockerServiceDescriptorImpl dockerServiceDescriptor = new DockerServiceDescriptorImpl();
+ return dockerServiceDescriptor;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerPackage getDockerPackage() {
+ return (DockerPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DockerPackage getPackage() {
+ return DockerPackage.eINSTANCE;
+ }
+
+} //DockerFactoryImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerPackageImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerPackageImpl.java
new file mode 100644
index 0000000..0d4f93e
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerPackageImpl.java
@@ -0,0 +1,516 @@
+
+/*-
+ * ============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.service.docker.impl;
+
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.dcae.controller.service.docker.DockerConfiguration;
+import org.openecomp.dcae.controller.service.docker.DockerFactory;
+import org.openecomp.dcae.controller.service.docker.DockerPackage;
+import org.openecomp.dcae.controller.service.docker.DockerService;
+import org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor;
+import org.openecomp.dcae.controller.service.docker.DockerServiceInstance;
+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;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DockerPackageImpl extends EPackageImpl implements DockerPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dockerServiceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dockerServiceInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dockerConfigurationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dockerServiceDescriptorEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DockerPackageImpl() {
+ super(eNS_URI, DockerFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link DockerPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static DockerPackage init() {
+ if (isInited) return (DockerPackage)EPackage.Registry.INSTANCE.getEPackage(DockerPackage.eNS_URI);
+
+ // Obtain or create and register package
+ DockerPackageImpl theDockerPackage = (DockerPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DockerPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DockerPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ org.openecomp.dcae.controller.service.docker.host.service.ServicePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theDockerPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDockerPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDockerPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(DockerPackage.eNS_URI, theDockerPackage);
+ return theDockerPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDockerService() {
+ return dockerServiceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDockerService_Instances() {
+ return (EReference)dockerServiceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDockerServiceInstance() {
+ return dockerServiceInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDockerServiceInstance_DockerHost() {
+ return (EReference)dockerServiceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDockerServiceInstance_HostService() {
+ return (EReference)dockerServiceInstanceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceInstance_DockerName() {
+ return (EAttribute)dockerServiceInstanceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceInstance_Image() {
+ return (EAttribute)dockerServiceInstanceEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDockerServiceInstance_Configuration() {
+ return (EReference)dockerServiceInstanceEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceInstance_Volumes() {
+ return (EAttribute)dockerServiceInstanceEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceInstance_Links() {
+ return (EAttribute)dockerServiceInstanceEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceInstance_Envs() {
+ return (EAttribute)dockerServiceInstanceEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDockerServiceInstance_PortBindings() {
+ return (EReference)dockerServiceInstanceEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceInstance_ManagerPortNumber() {
+ return (EAttribute)dockerServiceInstanceEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDockerConfiguration() {
+ return dockerConfigurationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerConfiguration_Configuration() {
+ return (EAttribute)dockerConfigurationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDockerServiceDescriptor() {
+ return dockerServiceDescriptorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_ServicePackage() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_ServiceClass() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_ServiceInstanceClass() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_DockerImage() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_ManagerPortNumber() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_ManagerUser() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDockerServiceDescriptor_EncryptedPassword() {
+ return (EAttribute)dockerServiceDescriptorEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerFactory getDockerFactory() {
+ return (DockerFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dockerServiceEClass = createEClass(DOCKER_SERVICE);
+ createEReference(dockerServiceEClass, DOCKER_SERVICE__INSTANCES);
+
+ dockerServiceInstanceEClass = createEClass(DOCKER_SERVICE_INSTANCE);
+ createEReference(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__DOCKER_HOST);
+ createEReference(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__HOST_SERVICE);
+ createEAttribute(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__DOCKER_NAME);
+ createEAttribute(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__IMAGE);
+ createEReference(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__CONFIGURATION);
+ createEAttribute(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__VOLUMES);
+ createEAttribute(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__LINKS);
+ createEAttribute(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__ENVS);
+ createEReference(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__PORT_BINDINGS);
+ createEAttribute(dockerServiceInstanceEClass, DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER);
+
+ dockerConfigurationEClass = createEClass(DOCKER_CONFIGURATION);
+ createEAttribute(dockerConfigurationEClass, DOCKER_CONFIGURATION__CONFIGURATION);
+
+ dockerServiceDescriptorEClass = createEClass(DOCKER_SERVICE_DESCRIPTOR);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER);
+ createEAttribute(dockerServiceDescriptorEClass, DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ServicePackage theServicePackage_1 = (ServicePackage)EPackage.Registry.INSTANCE.getEPackage(ServicePackage.eNS_URI);
+ org.openecomp.ncomp.docker.DockerPackage theDockerPackage_1 = (org.openecomp.ncomp.docker.DockerPackage)EPackage.Registry.INSTANCE.getEPackage(org.openecomp.ncomp.docker.DockerPackage.eNS_URI);
+ org.openecomp.dcae.controller.service.docker.host.service.ServicePackage theServicePackage = (org.openecomp.dcae.controller.service.docker.host.service.ServicePackage)EPackage.Registry.INSTANCE.getEPackage(org.openecomp.dcae.controller.service.docker.host.service.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
+ dockerServiceEClass.getESuperTypes().add(theServicePackage_1.getDcaeService());
+ dockerServiceInstanceEClass.getESuperTypes().add(theServicePackage_1.getDcaeServiceInstance());
+ dockerServiceDescriptorEClass.getESuperTypes().add(theServicePackage_1.getDcaeServiceDescriptor());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dockerServiceEClass, DockerService.class, "DockerService", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDockerService_Instances(), this.getDockerServiceInstance(), null, "instances", null, 0, -1, DockerService.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dockerServiceInstanceEClass, DockerServiceInstance.class, "DockerServiceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDockerServiceInstance_DockerHost(), theDockerPackage_1.getDockerHost(), null, "dockerHost", null, 0, 1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDockerServiceInstance_HostService(), theServicePackage.getDockerHostServiceInstance(), null, "hostService", null, 0, 1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceInstance_DockerName(), theEcorePackage.getEString(), "dockerName", null, 0, 1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceInstance_Image(), theEcorePackage.getEString(), "image", null, 0, 1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDockerServiceInstance_Configuration(), this.getDockerConfiguration(), null, "configuration", null, 0, 1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceInstance_Volumes(), theEcorePackage.getEString(), "volumes", null, 0, -1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceInstance_Links(), theEcorePackage.getEString(), "links", null, 0, -1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceInstance_Envs(), theEcorePackage.getEString(), "envs", null, 0, -1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDockerServiceInstance_PortBindings(), theDockerPackage_1.getContainerPortBindings(), null, "portBindings", null, 0, -1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceInstance_ManagerPortNumber(), theEcorePackage.getEInt(), "managerPortNumber", "9999", 0, 1, DockerServiceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dockerConfigurationEClass, DockerConfiguration.class, "DockerConfiguration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDockerConfiguration_Configuration(), theEcorePackage.getEString(), "configuration", null, 0, 1, DockerConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dockerServiceDescriptorEClass, DockerServiceDescriptor.class, "DockerServiceDescriptor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDockerServiceDescriptor_ServicePackage(), theEcorePackage.getEString(), "servicePackage", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceDescriptor_ServiceClass(), theEcorePackage.getEString(), "serviceClass", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceDescriptor_ServiceInstanceClass(), theEcorePackage.getEString(), "serviceInstanceClass", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceDescriptor_DockerImage(), theEcorePackage.getEString(), "dockerImage", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceDescriptor_ManagerPortNumber(), theEcorePackage.getEString(), "managerPortNumber", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceDescriptor_ManagerUser(), theEcorePackage.getEString(), "managerUser", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDockerServiceDescriptor_EncryptedPassword(), theEcorePackage.getEString(), "encryptedPassword", null, 0, 1, DockerServiceDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/emf/2011/Xcore
+ createXcoreAnnotations();
+ // http://openecomp.org
+ createEcompAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/emf/2011/Xcore</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createXcoreAnnotations() {
+ String source = "http://www.eclipse.org/emf/2011/Xcore";
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "ecomp", "http://openecomp.org"
+ });
+ }
+
+ /**
+ * Initializes the annotations for <b>http://openecomp.org</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createEcompAnnotations() {
+ String source = "http://openecomp.org";
+ addAnnotation
+ (getDockerServiceInstance_DockerHost(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getDockerConfiguration_Configuration(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ }
+
+} //DockerPackageImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceDescriptorImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceDescriptorImpl.java
new file mode 100644
index 0000000..ef3d9b3
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceDescriptorImpl.java
@@ -0,0 +1,509 @@
+
+/*-
+ * ============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.service.docker.impl;
+
+import org.openecomp.dcae.controller.core.service.impl.DcaeServiceDescriptorImpl;
+
+import org.openecomp.dcae.controller.service.docker.DockerPackage;
+import org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Service Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getServicePackage <em>Service Package</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getServiceClass <em>Service Class</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getServiceInstanceClass <em>Service Instance Class</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getDockerImage <em>Docker Image</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getManagerPortNumber <em>Manager Port Number</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getManagerUser <em>Manager User</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceDescriptorImpl#getEncryptedPassword <em>Encrypted Password</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DockerServiceDescriptorImpl extends DcaeServiceDescriptorImpl implements DockerServiceDescriptor {
+ /**
+ * The default value of the '{@link #getServicePackage() <em>Service Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServicePackage()
+ * @generated
+ * @ordered
+ */
+ protected static final String SERVICE_PACKAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getServicePackage() <em>Service Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServicePackage()
+ * @generated
+ * @ordered
+ */
+ protected String servicePackage = SERVICE_PACKAGE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getServiceClass() <em>Service Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServiceClass()
+ * @generated
+ * @ordered
+ */
+ protected static final String SERVICE_CLASS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getServiceClass() <em>Service Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServiceClass()
+ * @generated
+ * @ordered
+ */
+ protected String serviceClass = SERVICE_CLASS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getServiceInstanceClass() <em>Service Instance Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServiceInstanceClass()
+ * @generated
+ * @ordered
+ */
+ protected static final String SERVICE_INSTANCE_CLASS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getServiceInstanceClass() <em>Service Instance Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServiceInstanceClass()
+ * @generated
+ * @ordered
+ */
+ protected String serviceInstanceClass = SERVICE_INSTANCE_CLASS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDockerImage() <em>Docker Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDockerImage()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCKER_IMAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDockerImage() <em>Docker Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDockerImage()
+ * @generated
+ * @ordered
+ */
+ protected String dockerImage = DOCKER_IMAGE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getManagerPortNumber() <em>Manager Port Number</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getManagerPortNumber()
+ * @generated
+ * @ordered
+ */
+ protected static final String MANAGER_PORT_NUMBER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getManagerPortNumber() <em>Manager Port Number</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getManagerPortNumber()
+ * @generated
+ * @ordered
+ */
+ protected String managerPortNumber = MANAGER_PORT_NUMBER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getManagerUser() <em>Manager User</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getManagerUser()
+ * @generated
+ * @ordered
+ */
+ protected static final String MANAGER_USER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getManagerUser() <em>Manager User</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getManagerUser()
+ * @generated
+ * @ordered
+ */
+ protected String managerUser = MANAGER_USER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getEncryptedPassword() <em>Encrypted Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEncryptedPassword()
+ * @generated
+ * @ordered
+ */
+ protected static final String ENCRYPTED_PASSWORD_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getEncryptedPassword() <em>Encrypted Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEncryptedPassword()
+ * @generated
+ * @ordered
+ */
+ protected String encryptedPassword = ENCRYPTED_PASSWORD_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockerServiceDescriptorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DockerPackage.Literals.DOCKER_SERVICE_DESCRIPTOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getServicePackage() {
+ return servicePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setServicePackage(String newServicePackage) {
+ String oldServicePackage = servicePackage;
+ servicePackage = newServicePackage;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE, oldServicePackage, servicePackage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getServiceClass() {
+ return serviceClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setServiceClass(String newServiceClass) {
+ String oldServiceClass = serviceClass;
+ serviceClass = newServiceClass;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS, oldServiceClass, serviceClass));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getServiceInstanceClass() {
+ return serviceInstanceClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setServiceInstanceClass(String newServiceInstanceClass) {
+ String oldServiceInstanceClass = serviceInstanceClass;
+ serviceInstanceClass = newServiceInstanceClass;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS, oldServiceInstanceClass, serviceInstanceClass));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDockerImage() {
+ return dockerImage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDockerImage(String newDockerImage) {
+ String oldDockerImage = dockerImage;
+ dockerImage = newDockerImage;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE, oldDockerImage, dockerImage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getManagerPortNumber() {
+ return managerPortNumber;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setManagerPortNumber(String newManagerPortNumber) {
+ String oldManagerPortNumber = managerPortNumber;
+ managerPortNumber = newManagerPortNumber;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER, oldManagerPortNumber, managerPortNumber));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getManagerUser() {
+ return managerUser;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setManagerUser(String newManagerUser) {
+ String oldManagerUser = managerUser;
+ managerUser = newManagerUser;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER, oldManagerUser, managerUser));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getEncryptedPassword() {
+ return encryptedPassword;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEncryptedPassword(String newEncryptedPassword) {
+ String oldEncryptedPassword = encryptedPassword;
+ encryptedPassword = newEncryptedPassword;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD, oldEncryptedPassword, encryptedPassword));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE:
+ return getServicePackage();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS:
+ return getServiceClass();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS:
+ return getServiceInstanceClass();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE:
+ return getDockerImage();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER:
+ return getManagerPortNumber();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER:
+ return getManagerUser();
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD:
+ return getEncryptedPassword();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE:
+ setServicePackage((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS:
+ setServiceClass((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS:
+ setServiceInstanceClass((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE:
+ setDockerImage((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER:
+ setManagerPortNumber((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER:
+ setManagerUser((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD:
+ setEncryptedPassword((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE:
+ setServicePackage(SERVICE_PACKAGE_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS:
+ setServiceClass(SERVICE_CLASS_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS:
+ setServiceInstanceClass(SERVICE_INSTANCE_CLASS_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE:
+ setDockerImage(DOCKER_IMAGE_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER:
+ setManagerPortNumber(MANAGER_PORT_NUMBER_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER:
+ setManagerUser(MANAGER_USER_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD:
+ setEncryptedPassword(ENCRYPTED_PASSWORD_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_PACKAGE:
+ return SERVICE_PACKAGE_EDEFAULT == null ? servicePackage != null : !SERVICE_PACKAGE_EDEFAULT.equals(servicePackage);
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_CLASS:
+ return SERVICE_CLASS_EDEFAULT == null ? serviceClass != null : !SERVICE_CLASS_EDEFAULT.equals(serviceClass);
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__SERVICE_INSTANCE_CLASS:
+ return SERVICE_INSTANCE_CLASS_EDEFAULT == null ? serviceInstanceClass != null : !SERVICE_INSTANCE_CLASS_EDEFAULT.equals(serviceInstanceClass);
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__DOCKER_IMAGE:
+ return DOCKER_IMAGE_EDEFAULT == null ? dockerImage != null : !DOCKER_IMAGE_EDEFAULT.equals(dockerImage);
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_PORT_NUMBER:
+ return MANAGER_PORT_NUMBER_EDEFAULT == null ? managerPortNumber != null : !MANAGER_PORT_NUMBER_EDEFAULT.equals(managerPortNumber);
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__MANAGER_USER:
+ return MANAGER_USER_EDEFAULT == null ? managerUser != null : !MANAGER_USER_EDEFAULT.equals(managerUser);
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR__ENCRYPTED_PASSWORD:
+ return ENCRYPTED_PASSWORD_EDEFAULT == null ? encryptedPassword != null : !ENCRYPTED_PASSWORD_EDEFAULT.equals(encryptedPassword);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (servicePackage: ");
+ result.append(servicePackage);
+ result.append(", serviceClass: ");
+ result.append(serviceClass);
+ result.append(", serviceInstanceClass: ");
+ result.append(serviceInstanceClass);
+ result.append(", dockerImage: ");
+ result.append(dockerImage);
+ result.append(", managerPortNumber: ");
+ result.append(managerPortNumber);
+ result.append(", managerUser: ");
+ result.append(managerUser);
+ result.append(", encryptedPassword: ");
+ result.append(encryptedPassword);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DockerServiceDescriptorImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceImpl.java
new file mode 100644
index 0000000..fb663d7
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceImpl.java
@@ -0,0 +1,173 @@
+
+/*-
+ * ============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.service.docker.impl;
+
+import org.openecomp.dcae.controller.core.service.impl.DcaeServiceImpl;
+
+import org.openecomp.dcae.controller.service.docker.DockerPackage;
+import org.openecomp.dcae.controller.service.docker.DockerService;
+import org.openecomp.dcae.controller.service.docker.DockerServiceInstance;
+
+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.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Service</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceImpl#getInstances <em>Instances</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DockerServiceImpl extends DcaeServiceImpl implements DockerService {
+ /**
+ * The cached value of the '{@link #getInstances() <em>Instances</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getInstances()
+ * @generated
+ * @ordered
+ */
+ protected EList<DockerServiceInstance> instances;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockerServiceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DockerPackage.Literals.DOCKER_SERVICE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<DockerServiceInstance> getInstances() {
+ if (instances == null) {
+ instances = new EObjectContainmentEList<DockerServiceInstance>(DockerServiceInstance.class, this, DockerPackage.DOCKER_SERVICE__INSTANCES);
+ }
+ return instances;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE__INSTANCES:
+ return ((InternalEList<?>)getInstances()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE__INSTANCES:
+ return getInstances();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE__INSTANCES:
+ getInstances().clear();
+ getInstances().addAll((Collection<? extends DockerServiceInstance>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE__INSTANCES:
+ getInstances().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE__INSTANCES:
+ return instances != null && !instances.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DockerServiceImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceInstanceImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceInstanceImpl.java
new file mode 100644
index 0000000..ddf7377
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/impl/DockerServiceInstanceImpl.java
@@ -0,0 +1,649 @@
+
+/*-
+ * ============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.service.docker.impl;
+
+import org.openecomp.dcae.controller.core.service.impl.DcaeServiceInstanceImpl;
+import org.openecomp.dcae.controller.service.docker.DockerConfiguration;
+import org.openecomp.dcae.controller.service.docker.DockerPackage;
+import org.openecomp.dcae.controller.service.docker.DockerServiceInstance;
+import org.openecomp.dcae.controller.service.docker.host.service.DockerHostServiceInstance;
+import org.openecomp.ncomp.docker.ContainerPortBindings;
+import org.openecomp.ncomp.docker.DockerHost;
+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.EDataTypeEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Service Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getDockerHost <em>Docker Host</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getHostService <em>Host Service</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getDockerName <em>Docker Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getImage <em>Image</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getConfiguration <em>Configuration</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getVolumes <em>Volumes</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getLinks <em>Links</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getEnvs <em>Envs</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getPortBindings <em>Port Bindings</em>}</li>
+ * <li>{@link org.openecomp.dcae.controller.service.docker.impl.DockerServiceInstanceImpl#getManagerPortNumber <em>Manager Port Number</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DockerServiceInstanceImpl extends DcaeServiceInstanceImpl implements DockerServiceInstance {
+ /**
+ * The cached value of the '{@link #getDockerHost() <em>Docker Host</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDockerHost()
+ * @generated
+ * @ordered
+ */
+ protected DockerHost dockerHost;
+
+ /**
+ * The cached value of the '{@link #getHostService() <em>Host Service</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getHostService()
+ * @generated
+ * @ordered
+ */
+ protected DockerHostServiceInstance hostService;
+
+ /**
+ * The default value of the '{@link #getDockerName() <em>Docker Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDockerName()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCKER_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDockerName() <em>Docker Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDockerName()
+ * @generated
+ * @ordered
+ */
+ protected String dockerName = DOCKER_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getImage() <em>Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImage()
+ * @generated
+ * @ordered
+ */
+ protected static final String IMAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getImage() <em>Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImage()
+ * @generated
+ * @ordered
+ */
+ protected String image = IMAGE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getConfiguration() <em>Configuration</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConfiguration()
+ * @generated
+ * @ordered
+ */
+ protected DockerConfiguration configuration;
+
+ /**
+ * The cached value of the '{@link #getVolumes() <em>Volumes</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVolumes()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> volumes;
+
+ /**
+ * The cached value of the '{@link #getLinks() <em>Links</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLinks()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> links;
+
+ /**
+ * The cached value of the '{@link #getEnvs() <em>Envs</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEnvs()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> envs;
+
+ /**
+ * The cached value of the '{@link #getPortBindings() <em>Port Bindings</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPortBindings()
+ * @generated
+ * @ordered
+ */
+ protected EList<ContainerPortBindings> portBindings;
+
+ /**
+ * The default value of the '{@link #getManagerPortNumber() <em>Manager Port Number</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getManagerPortNumber()
+ * @generated
+ * @ordered
+ */
+ protected static final int MANAGER_PORT_NUMBER_EDEFAULT = 9999;
+
+ /**
+ * The cached value of the '{@link #getManagerPortNumber() <em>Manager Port Number</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getManagerPortNumber()
+ * @generated
+ * @ordered
+ */
+ protected int managerPortNumber = MANAGER_PORT_NUMBER_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockerServiceInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DockerPackage.Literals.DOCKER_SERVICE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerHost getDockerHost() {
+ return dockerHost;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetDockerHost(DockerHost newDockerHost, NotificationChain msgs) {
+ DockerHost oldDockerHost = dockerHost;
+ dockerHost = newDockerHost;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST, oldDockerHost, newDockerHost);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDockerHost(DockerHost newDockerHost) {
+ if (newDockerHost != dockerHost) {
+ NotificationChain msgs = null;
+ if (dockerHost != null)
+ msgs = ((InternalEObject)dockerHost).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST, null, msgs);
+ if (newDockerHost != null)
+ msgs = ((InternalEObject)newDockerHost).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST, null, msgs);
+ msgs = basicSetDockerHost(newDockerHost, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST, newDockerHost, newDockerHost));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerHostServiceInstance getHostService() {
+ if (hostService != null && hostService.eIsProxy()) {
+ InternalEObject oldHostService = (InternalEObject)hostService;
+ hostService = (DockerHostServiceInstance)eResolveProxy(oldHostService);
+ if (hostService != oldHostService) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DockerPackage.DOCKER_SERVICE_INSTANCE__HOST_SERVICE, oldHostService, hostService));
+ }
+ }
+ return hostService;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerHostServiceInstance basicGetHostService() {
+ return hostService;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setHostService(DockerHostServiceInstance newHostService) {
+ DockerHostServiceInstance oldHostService = hostService;
+ hostService = newHostService;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__HOST_SERVICE, oldHostService, hostService));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDockerName() {
+ return dockerName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDockerName(String newDockerName) {
+ String oldDockerName = dockerName;
+ dockerName = newDockerName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_NAME, oldDockerName, dockerName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getImage() {
+ return image;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setImage(String newImage) {
+ String oldImage = image;
+ image = newImage;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__IMAGE, oldImage, image));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerConfiguration getConfiguration() {
+ return configuration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetConfiguration(DockerConfiguration newConfiguration, NotificationChain msgs) {
+ DockerConfiguration oldConfiguration = configuration;
+ configuration = newConfiguration;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION, oldConfiguration, newConfiguration);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConfiguration(DockerConfiguration newConfiguration) {
+ if (newConfiguration != configuration) {
+ NotificationChain msgs = null;
+ if (configuration != null)
+ msgs = ((InternalEObject)configuration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION, null, msgs);
+ if (newConfiguration != null)
+ msgs = ((InternalEObject)newConfiguration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION, null, msgs);
+ msgs = basicSetConfiguration(newConfiguration, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION, newConfiguration, newConfiguration));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getVolumes() {
+ if (volumes == null) {
+ volumes = new EDataTypeEList<String>(String.class, this, DockerPackage.DOCKER_SERVICE_INSTANCE__VOLUMES);
+ }
+ return volumes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getLinks() {
+ if (links == null) {
+ links = new EDataTypeEList<String>(String.class, this, DockerPackage.DOCKER_SERVICE_INSTANCE__LINKS);
+ }
+ return links;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getEnvs() {
+ if (envs == null) {
+ envs = new EDataTypeEList<String>(String.class, this, DockerPackage.DOCKER_SERVICE_INSTANCE__ENVS);
+ }
+ return envs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ContainerPortBindings> getPortBindings() {
+ if (portBindings == null) {
+ portBindings = new EObjectContainmentEList<ContainerPortBindings>(ContainerPortBindings.class, this, DockerPackage.DOCKER_SERVICE_INSTANCE__PORT_BINDINGS);
+ }
+ return portBindings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getManagerPortNumber() {
+ return managerPortNumber;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setManagerPortNumber(int newManagerPortNumber) {
+ int oldManagerPortNumber = managerPortNumber;
+ managerPortNumber = newManagerPortNumber;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockerPackage.DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER, oldManagerPortNumber, managerPortNumber));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST:
+ return basicSetDockerHost(null, msgs);
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION:
+ return basicSetConfiguration(null, msgs);
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__PORT_BINDINGS:
+ return ((InternalEList<?>)getPortBindings()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST:
+ return getDockerHost();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__HOST_SERVICE:
+ if (resolve) return getHostService();
+ return basicGetHostService();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_NAME:
+ return getDockerName();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__IMAGE:
+ return getImage();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION:
+ return getConfiguration();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__VOLUMES:
+ return getVolumes();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__LINKS:
+ return getLinks();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__ENVS:
+ return getEnvs();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__PORT_BINDINGS:
+ return getPortBindings();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER:
+ return getManagerPortNumber();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST:
+ setDockerHost((DockerHost)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__HOST_SERVICE:
+ setHostService((DockerHostServiceInstance)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_NAME:
+ setDockerName((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__IMAGE:
+ setImage((String)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION:
+ setConfiguration((DockerConfiguration)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__VOLUMES:
+ getVolumes().clear();
+ getVolumes().addAll((Collection<? extends String>)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__LINKS:
+ getLinks().clear();
+ getLinks().addAll((Collection<? extends String>)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__ENVS:
+ getEnvs().clear();
+ getEnvs().addAll((Collection<? extends String>)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__PORT_BINDINGS:
+ getPortBindings().clear();
+ getPortBindings().addAll((Collection<? extends ContainerPortBindings>)newValue);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER:
+ setManagerPortNumber((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST:
+ setDockerHost((DockerHost)null);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__HOST_SERVICE:
+ setHostService((DockerHostServiceInstance)null);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_NAME:
+ setDockerName(DOCKER_NAME_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__IMAGE:
+ setImage(IMAGE_EDEFAULT);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION:
+ setConfiguration((DockerConfiguration)null);
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__VOLUMES:
+ getVolumes().clear();
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__LINKS:
+ getLinks().clear();
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__ENVS:
+ getEnvs().clear();
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__PORT_BINDINGS:
+ getPortBindings().clear();
+ return;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER:
+ setManagerPortNumber(MANAGER_PORT_NUMBER_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_HOST:
+ return dockerHost != null;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__HOST_SERVICE:
+ return hostService != null;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__DOCKER_NAME:
+ return DOCKER_NAME_EDEFAULT == null ? dockerName != null : !DOCKER_NAME_EDEFAULT.equals(dockerName);
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__IMAGE:
+ return IMAGE_EDEFAULT == null ? image != null : !IMAGE_EDEFAULT.equals(image);
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__CONFIGURATION:
+ return configuration != null;
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__VOLUMES:
+ return volumes != null && !volumes.isEmpty();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__LINKS:
+ return links != null && !links.isEmpty();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__ENVS:
+ return envs != null && !envs.isEmpty();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__PORT_BINDINGS:
+ return portBindings != null && !portBindings.isEmpty();
+ case DockerPackage.DOCKER_SERVICE_INSTANCE__MANAGER_PORT_NUMBER:
+ return managerPortNumber != MANAGER_PORT_NUMBER_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (dockerName: ");
+ result.append(dockerName);
+ result.append(", image: ");
+ result.append(image);
+ result.append(", volumes: ");
+ result.append(volumes);
+ result.append(", links: ");
+ result.append(links);
+ result.append(", envs: ");
+ result.append(envs);
+ result.append(", managerPortNumber: ");
+ result.append(managerPortNumber);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DockerServiceInstanceImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerAdapterFactory.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerAdapterFactory.java
new file mode 100644
index 0000000..8949887
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerAdapterFactory.java
@@ -0,0 +1,273 @@
+
+/*-
+ * ============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.service.docker.util;
+
+import org.openecomp.dcae.controller.core.service.DcaeService;
+
+import org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor;
+import org.openecomp.dcae.controller.core.service.DcaeServiceInstance;
+import org.openecomp.dcae.controller.service.docker.*;
+
+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;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage
+ * @generated
+ */
+public class DockerAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DockerPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DockerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockerSwitch<Adapter> modelSwitch =
+ new DockerSwitch<Adapter>() {
+ @Override
+ public Adapter caseDockerService(DockerService object) {
+ return createDockerServiceAdapter();
+ }
+ @Override
+ public Adapter caseDockerServiceInstance(DockerServiceInstance object) {
+ return createDockerServiceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseDockerConfiguration(DockerConfiguration object) {
+ return createDockerConfigurationAdapter();
+ }
+ @Override
+ public Adapter caseDockerServiceDescriptor(DockerServiceDescriptor object) {
+ return createDockerServiceDescriptorAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter caseDcaeService(DcaeService object) {
+ return createDcaeServiceAdapter();
+ }
+ @Override
+ public Adapter caseDcaeServiceInstance(DcaeServiceInstance object) {
+ return createDcaeServiceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseDcaeServiceDescriptor(DcaeServiceDescriptor object) {
+ return createDcaeServiceDescriptorAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.service.docker.DockerService <em>Service</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.service.docker.DockerService
+ * @generated
+ */
+ public Adapter createDockerServiceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.service.docker.DockerServiceInstance <em>Service Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceInstance
+ * @generated
+ */
+ public Adapter createDockerServiceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.service.docker.DockerConfiguration <em>Configuration</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.service.docker.DockerConfiguration
+ * @generated
+ */
+ public Adapter createDockerConfigurationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor <em>Service Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.service.docker.DockerServiceDescriptor
+ * @generated
+ */
+ public Adapter createDockerServiceDescriptorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity <em>Named Entity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaeService <em>Dcae Service</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.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.DcaeServiceInstance <em>Dcae Service Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.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.DcaeServiceDescriptor <em>Dcae Service Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor
+ * @generated
+ */
+ public Adapter createDcaeServiceDescriptorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //DockerAdapterFactory
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerSwitch.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerSwitch.java
new file mode 100644
index 0000000..d712bfc
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/docker/util/DockerSwitch.java
@@ -0,0 +1,266 @@
+
+/*-
+ * ============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.service.docker.util;
+
+import org.openecomp.dcae.controller.core.service.DcaeService;
+
+import org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor;
+import org.openecomp.dcae.controller.core.service.DcaeServiceInstance;
+import org.openecomp.dcae.controller.service.docker.*;
+
+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;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.docker.DockerPackage
+ * @generated
+ */
+public class DockerSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DockerPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DockerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case DockerPackage.DOCKER_SERVICE: {
+ DockerService dockerService = (DockerService)theEObject;
+ T result = caseDockerService(dockerService);
+ if (result == null) result = caseDcaeService(dockerService);
+ if (result == null) result = caseNamedEntity(dockerService);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DockerPackage.DOCKER_SERVICE_INSTANCE: {
+ DockerServiceInstance dockerServiceInstance = (DockerServiceInstance)theEObject;
+ T result = caseDockerServiceInstance(dockerServiceInstance);
+ if (result == null) result = caseDcaeServiceInstance(dockerServiceInstance);
+ if (result == null) result = caseNamedEntity(dockerServiceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DockerPackage.DOCKER_CONFIGURATION: {
+ DockerConfiguration dockerConfiguration = (DockerConfiguration)theEObject;
+ T result = caseDockerConfiguration(dockerConfiguration);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DockerPackage.DOCKER_SERVICE_DESCRIPTOR: {
+ DockerServiceDescriptor dockerServiceDescriptor = (DockerServiceDescriptor)theEObject;
+ T result = caseDockerServiceDescriptor(dockerServiceDescriptor);
+ if (result == null) result = caseDcaeServiceDescriptor(dockerServiceDescriptor);
+ if (result == null) result = caseNamedEntity(dockerServiceDescriptor);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Service</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Service</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDockerService(DockerService object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Service Instance</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Service Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDockerServiceInstance(DockerServiceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Configuration</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Configuration</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDockerConfiguration(DockerConfiguration object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Service Descriptor</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Service Descriptor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDockerServiceDescriptor(DockerServiceDescriptor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Named Entity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Named Entity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNamedEntity(NamedEntity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dcae Service</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dcae Service</em>'.
+ * @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 '<em>Dcae Service Instance</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dcae Service Instance</em>'.
+ * @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 '<em>Dcae Service Descriptor</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dcae Service Descriptor</em>'.
+ * @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 '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //DockerSwitch
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockerManager.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockerManager.java
new file mode 100644
index 0000000..99ba892
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockerManager.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.service.dockermanager;
+
+import org.openecomp.dcae.controller.core.manager.DcaeManager;
+import org.openecomp.dcae.controller.service.docker.DockerConfiguration;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Docker Manager</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.dockermanager.DockerManager#getConfiguration <em>Configuration</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage#getDockerManager()
+ * @model
+ * @generated
+ */
+public interface DockerManager extends DcaeManager {
+ /**
+ * Returns the value of the '<em><b>Configuration</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Configuration</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Configuration</em>' containment reference.
+ * @see #setConfiguration(DockerConfiguration)
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage#getDockerManager_Configuration()
+ * @model containment="true"
+ * @generated
+ */
+ DockerConfiguration getConfiguration();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.controller.service.dockermanager.DockerManager#getConfiguration <em>Configuration</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Configuration</em>' containment reference.
+ * @see #getConfiguration()
+ * @generated
+ */
+ void setConfiguration(DockerConfiguration value);
+
+} // DockerManager
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerFactory.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerFactory.java
new file mode 100644
index 0000000..de949b9
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerFactory.java
@@ -0,0 +1,63 @@
+
+/*-
+ * ============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.service.dockermanager;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage
+ * @generated
+ */
+public interface DockermanagerFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DockermanagerFactory eINSTANCE = org.openecomp.dcae.controller.service.dockermanager.impl.DockermanagerFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Docker Manager</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Docker Manager</em>'.
+ * @generated
+ */
+ DockerManager createDockerManager();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DockermanagerPackage getDockermanagerPackage();
+
+} //DockermanagerFactory
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerPackage.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerPackage.java
new file mode 100644
index 0000000..a2292a8
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/DockermanagerPackage.java
@@ -0,0 +1,256 @@
+
+/*-
+ * ============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.service.dockermanager;
+
+import org.openecomp.dcae.controller.core.manager.ManagerPackage;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-controller-service-docker-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.controller.service'"
+ * @generated
+ */
+public interface DockermanagerPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "dockermanager";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.controller.service.dockermanager";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "dockermanager";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DockermanagerPackage eINSTANCE = org.openecomp.dcae.controller.service.dockermanager.impl.DockermanagerPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.controller.service.dockermanager.impl.DockerManagerImpl <em>Docker Manager</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.dockermanager.impl.DockerManagerImpl
+ * @see org.openecomp.dcae.controller.service.dockermanager.impl.DockermanagerPackageImpl#getDockerManager()
+ * @generated
+ */
+ int DOCKER_MANAGER = 0;
+
+ /**
+ * The feature id for the '<em><b>Input Streams</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER__INPUT_STREAMS = ManagerPackage.DCAE_MANAGER__INPUT_STREAMS;
+
+ /**
+ * The feature id for the '<em><b>Output Streams</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER__OUTPUT_STREAMS = ManagerPackage.DCAE_MANAGER__OUTPUT_STREAMS;
+
+ /**
+ * The feature id for the '<em><b>Configuration</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER__CONFIGURATION = ManagerPackage.DCAE_MANAGER_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Docker Manager</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER_FEATURE_COUNT = ManagerPackage.DCAE_MANAGER_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Test</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER___TEST = ManagerPackage.DCAE_MANAGER___TEST;
+
+ /**
+ * The operation id for the '<em>Suspend</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER___SUSPEND = ManagerPackage.DCAE_MANAGER___SUSPEND;
+
+ /**
+ * The operation id for the '<em>Resume</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER___RESUME = ManagerPackage.DCAE_MANAGER___RESUME;
+
+ /**
+ * The operation id for the '<em>Public Key</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER___PUBLIC_KEY = ManagerPackage.DCAE_MANAGER___PUBLIC_KEY;
+
+ /**
+ * The operation id for the '<em>Configuration Changed</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER___CONFIGURATION_CHANGED = ManagerPackage.DCAE_MANAGER___CONFIGURATION_CHANGED;
+
+ /**
+ * The operation id for the '<em>Update Streams</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER___UPDATE_STREAMS__ELIST_ELIST = ManagerPackage.DCAE_MANAGER___UPDATE_STREAMS__ELIST_ELIST;
+
+ /**
+ * The number of operations of the '<em>Docker Manager</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCKER_MANAGER_OPERATION_COUNT = ManagerPackage.DCAE_MANAGER_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.controller.service.dockermanager.DockerManager <em>Docker Manager</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Docker Manager</em>'.
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockerManager
+ * @generated
+ */
+ EClass getDockerManager();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.openecomp.dcae.controller.service.dockermanager.DockerManager#getConfiguration <em>Configuration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Configuration</em>'.
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockerManager#getConfiguration()
+ * @see #getDockerManager()
+ * @generated
+ */
+ EReference getDockerManager_Configuration();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ DockermanagerFactory getDockermanagerFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.controller.service.dockermanager.impl.DockerManagerImpl <em>Docker Manager</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.dockermanager.impl.DockerManagerImpl
+ * @see org.openecomp.dcae.controller.service.dockermanager.impl.DockermanagerPackageImpl#getDockerManager()
+ * @generated
+ */
+ EClass DOCKER_MANAGER = eINSTANCE.getDockerManager();
+
+ /**
+ * The meta object literal for the '<em><b>Configuration</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCKER_MANAGER__CONFIGURATION = eINSTANCE.getDockerManager_Configuration();
+
+ }
+
+} //DockermanagerPackage
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockerManagerImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockerManagerImpl.java
new file mode 100644
index 0000000..281b7a5
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockerManagerImpl.java
@@ -0,0 +1,194 @@
+
+/*-
+ * ============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.service.dockermanager.impl;
+
+import org.openecomp.dcae.controller.core.manager.impl.DcaeManagerImpl;
+import org.openecomp.dcae.controller.service.docker.DockerConfiguration;
+import org.openecomp.dcae.controller.service.dockermanager.DockerManager;
+import org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Docker Manager</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.controller.service.dockermanager.impl.DockerManagerImpl#getConfiguration <em>Configuration</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DockerManagerImpl extends DcaeManagerImpl implements DockerManager {
+ /**
+ * The cached value of the '{@link #getConfiguration() <em>Configuration</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConfiguration()
+ * @generated
+ * @ordered
+ */
+ protected DockerConfiguration configuration;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockerManagerImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DockermanagerPackage.Literals.DOCKER_MANAGER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerConfiguration getConfiguration() {
+ return configuration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetConfiguration(DockerConfiguration newConfiguration, NotificationChain msgs) {
+ DockerConfiguration oldConfiguration = configuration;
+ configuration = newConfiguration;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION, oldConfiguration, newConfiguration);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConfiguration(DockerConfiguration newConfiguration) {
+ if (newConfiguration != configuration) {
+ NotificationChain msgs = null;
+ if (configuration != null)
+ msgs = ((InternalEObject)configuration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION, null, msgs);
+ if (newConfiguration != null)
+ msgs = ((InternalEObject)newConfiguration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION, null, msgs);
+ msgs = basicSetConfiguration(newConfiguration, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION, newConfiguration, newConfiguration));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION:
+ return basicSetConfiguration(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION:
+ return getConfiguration();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION:
+ setConfiguration((DockerConfiguration)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION:
+ setConfiguration((DockerConfiguration)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DockermanagerPackage.DOCKER_MANAGER__CONFIGURATION:
+ return configuration != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DockerManagerImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerFactoryImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerFactoryImpl.java
new file mode 100644
index 0000000..37afecb
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerFactoryImpl.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.service.dockermanager.impl;
+
+import org.openecomp.dcae.controller.service.dockermanager.*;
+
+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;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DockermanagerFactoryImpl extends EFactoryImpl implements DockermanagerFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static DockermanagerFactory init() {
+ try {
+ DockermanagerFactory theDockermanagerFactory = (DockermanagerFactory)EPackage.Registry.INSTANCE.getEFactory(DockermanagerPackage.eNS_URI);
+ if (theDockermanagerFactory != null) {
+ return theDockermanagerFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DockermanagerFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockermanagerFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DockermanagerPackage.DOCKER_MANAGER: return createDockerManager();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockerManager createDockerManager() {
+ DockerManagerImpl dockerManager = new DockerManagerImpl();
+ return dockerManager;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockermanagerPackage getDockermanagerPackage() {
+ return (DockermanagerPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DockermanagerPackage getPackage() {
+ return DockermanagerPackage.eINSTANCE;
+ }
+
+} //DockermanagerFactoryImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerPackageImpl.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerPackageImpl.java
new file mode 100644
index 0000000..462f627
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/impl/DockermanagerPackageImpl.java
@@ -0,0 +1,207 @@
+
+/*-
+ * ============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.service.dockermanager.impl;
+
+import org.openecomp.dcae.controller.core.manager.ManagerPackage;
+import org.openecomp.dcae.controller.service.docker.DockerPackage;
+import org.openecomp.dcae.controller.service.dockermanager.DockerManager;
+import org.openecomp.dcae.controller.service.dockermanager.DockermanagerFactory;
+import org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DockermanagerPackageImpl extends EPackageImpl implements DockermanagerPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dockerManagerEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DockermanagerPackageImpl() {
+ super(eNS_URI, DockermanagerFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link DockermanagerPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static DockermanagerPackage init() {
+ if (isInited) return (DockermanagerPackage)EPackage.Registry.INSTANCE.getEPackage(DockermanagerPackage.eNS_URI);
+
+ // Obtain or create and register package
+ DockermanagerPackageImpl theDockermanagerPackage = (DockermanagerPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DockermanagerPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DockermanagerPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ DockerPackage.eINSTANCE.eClass();
+ ManagerPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theDockermanagerPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDockermanagerPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDockermanagerPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(DockermanagerPackage.eNS_URI, theDockermanagerPackage);
+ return theDockermanagerPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDockerManager() {
+ return dockerManagerEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDockerManager_Configuration() {
+ return (EReference)dockerManagerEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockermanagerFactory getDockermanagerFactory() {
+ return (DockermanagerFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dockerManagerEClass = createEClass(DOCKER_MANAGER);
+ createEReference(dockerManagerEClass, DOCKER_MANAGER__CONFIGURATION);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ManagerPackage theManagerPackage = (ManagerPackage)EPackage.Registry.INSTANCE.getEPackage(ManagerPackage.eNS_URI);
+ DockerPackage theDockerPackage = (DockerPackage)EPackage.Registry.INSTANCE.getEPackage(DockerPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ dockerManagerEClass.getESuperTypes().add(theManagerPackage.getDcaeManager());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dockerManagerEClass, DockerManager.class, "DockerManager", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDockerManager_Configuration(), theDockerPackage.getDockerConfiguration(), null, "configuration", null, 0, 1, DockerManager.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //DockermanagerPackageImpl
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerAdapterFactory.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerAdapterFactory.java
new file mode 100644
index 0000000..8ac00d4
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerAdapterFactory.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.service.dockermanager.util;
+
+import org.openecomp.dcae.controller.core.manager.DcaeManager;
+
+import org.openecomp.dcae.controller.service.dockermanager.*;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage
+ * @generated
+ */
+public class DockermanagerAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DockermanagerPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockermanagerAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DockermanagerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DockermanagerSwitch<Adapter> modelSwitch =
+ new DockermanagerSwitch<Adapter>() {
+ @Override
+ public Adapter caseDockerManager(DockerManager object) {
+ return createDockerManagerAdapter();
+ }
+ @Override
+ public Adapter caseDcaeManager(DcaeManager object) {
+ return createDcaeManagerAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.service.dockermanager.DockerManager <em>Docker Manager</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockerManager
+ * @generated
+ */
+ public Adapter createDockerManagerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.manager.DcaeManager <em>Dcae Manager</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.dcae.controller.core.manager.DcaeManager
+ * @generated
+ */
+ public Adapter createDcaeManagerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //DockermanagerAdapterFactory
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerSwitch.java b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerSwitch.java
new file mode 100644
index 0000000..f87a202
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore-gen/org/openecomp/dcae/controller/service/dockermanager/util/DockermanagerSwitch.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.service.dockermanager.util;
+
+import org.openecomp.dcae.controller.core.manager.DcaeManager;
+
+import org.openecomp.dcae.controller.service.dockermanager.*;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.controller.service.dockermanager.DockermanagerPackage
+ * @generated
+ */
+public class DockermanagerSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DockermanagerPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DockermanagerSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DockermanagerPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case DockermanagerPackage.DOCKER_MANAGER: {
+ DockerManager dockerManager = (DockerManager)theEObject;
+ T result = caseDockerManager(dockerManager);
+ if (result == null) result = caseDcaeManager(dockerManager);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Docker Manager</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Docker Manager</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDockerManager(DockerManager object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dcae Manager</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dcae Manager</em>'.
+ * @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 '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //DockermanagerSwitch
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/manager.xcore b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/manager.xcore
new file mode 100644
index 0000000..db767eb
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/manager.xcore
@@ -0,0 +1,34 @@
+
+/*-
+ * ============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-service-docker-model/src/main/xcore-gen")
+
+
+package org.openecomp.dcae.controller.service.dockermanager
+
+import org.openecomp.dcae.controller.core.manager.DcaeManager
+import org.openecomp.dcae.controller.service.docker.DockerConfiguration
+
+// state of manager
+class DockerManager extends DcaeManager {
+ contains DockerConfiguration configuration
+}
+
diff --git a/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/service.xcore b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/service.xcore
new file mode 100644
index 0000000..0ccf5b4
--- /dev/null
+++ b/dcae-controller-service-docker/dcae-controller-service-docker-model/src/main/xcore/service.xcore
@@ -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============================================
+ */
+
+@GenModel(modelDirectory="/dcae-controller-service-docker-model/src/main/xcore-gen")
+
+package org.openecomp.dcae.controller.service.docker
+
+import org.openecomp.dcae.controller.core.service.DcaeService
+import org.openecomp.dcae.controller.core.service.DcaeServiceDescriptor
+import org.openecomp.dcae.controller.core.service.DcaeServiceInstance
+import org.openecomp.dcae.controller.service.docker.host.service.DockerHostServiceInstance
+import org.openecomp.ncomp.docker.ContainerPortBindings
+import org.openecomp.ncomp.docker.DockerHost
+
+annotation "http://openecomp.org" as ecomp
+
+class DockerService extends DcaeService {
+ contains DockerServiceInstance[] instances
+}
+
+// state in the controller
+class DockerServiceInstance extends DcaeServiceInstance {
+ @ecomp(^type = "configuration")
+ contains DockerHost dockerHost
+ refers DockerHostServiceInstance hostService
+ String dockerName
+ String image
+ contains DockerConfiguration configuration
+ String[] volumes
+ String[] links
+ String[] envs
+ contains ContainerPortBindings[] portBindings
+ int managerPortNumber = "9999"
+}
+
+// state in both controller and manager
+class DockerConfiguration {
+ @ecomp(^type = "configuration")
+ String configuration
+}
+
+class DockerServiceDescriptor extends DcaeServiceDescriptor {
+ String servicePackage
+ String serviceClass
+ String serviceInstanceClass
+ String dockerImage
+ String managerPortNumber
+ String managerUser
+ String encryptedPassword
+}
+
+
+
+