aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlj1412 <lji@research.att.com>2017-02-14 15:12:00 +0000
committerlj1412 <lji@research.att.com>2017-02-14 15:12:02 +0000
commit0e073e02693e44b8b7d5c9eac86cc324d38aaee9 (patch)
treeba9e0375ecfafb59961d260ba5ebebced020c04e
parent6aecb62a692e8d86b568c94be844f40639670ff4 (diff)
Init dcae.controller.analytics
Change-Id: Ib3a282f2c3ec248665f1fd042570578c61344f2e Signed-off-by: lj1412 <lji@research.att.com>
-rw-r--r--.gitreview4
-rw-r--r--LICENSE.txt22
-rw-r--r--README.md10
-rw-r--r--dcae-analytics-cdap-common-model/.classpath33
-rw-r--r--dcae-analytics-cdap-common-model/.gitignore1
-rw-r--r--dcae-analytics-cdap-common-model/.project40
-rw-r--r--dcae-analytics-cdap-common-model/.settings/org.eclipse.core.resources.prefs5
-rw-r--r--dcae-analytics-cdap-common-model/.settings/org.eclipse.jdt.core.prefs5
-rw-r--r--dcae-analytics-cdap-common-model/.settings/org.eclipse.m2e.core.prefs4
-rw-r--r--dcae-analytics-cdap-common-model/LICENSE.txt22
-rw-r--r--dcae-analytics-cdap-common-model/META-INF/MANIFEST.MF27
-rw-r--r--dcae-analytics-cdap-common-model/build.properties10
-rw-r--r--dcae-analytics-cdap-common-model/common.xmi304
-rw-r--r--dcae-analytics-cdap-common-model/core.xmi50
-rw-r--r--dcae-analytics-cdap-common-model/plugin.properties4
-rw-r--r--dcae-analytics-cdap-common-model/plugin.xml17
-rw-r--r--dcae-analytics-cdap-common-model/pom.xml18
-rw-r--r--dcae-analytics-cdap-common-model/service.xmi184
-rw-r--r--dcae-analytics-cdap-common-model/src/main/java/org/openecomp/dcae/analytics/cdap/common/tools/CreateXmi.java38
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonFactory.java81
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonPackage.java1287
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaConfiguration.java730
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaMetrics.java95
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaThreshold.java218
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonFactoryImpl.java138
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonPackageImpl.java1040
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaConfigurationImpl.java1432
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaMetricsImpl.java661
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaThresholdImpl.java451
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonAdapterFactory.java231
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonSwitch.java223
-rw-r--r--dcae-analytics-cdap-common-model/src/main/xcore/common.xcore168
32 files changed, 7553 insertions, 0 deletions
diff --git a/.gitreview b/.gitreview
new file mode 100644
index 0000000..99269f0
--- /dev/null
+++ b/.gitreview
@@ -0,0 +1,4 @@
+[gerrit]
+host=gerrit.openecomp.org
+port=29418
+project=dcae/controller/analytics.git
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 0000000..30471b5
--- /dev/null
+++ b/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/README.md b/README.md
new file mode 100644
index 0000000..9e9fd2c
--- /dev/null
+++ b/README.md
@@ -0,0 +1,10 @@
+
+
+Contains one artifact that contains the EMF model for the TCA CDAP micro services.
+
+
+# Build instructions
+
+1. Clone the repository
+2. Build using Maven: mvn clean install
+
diff --git a/dcae-analytics-cdap-common-model/.classpath b/dcae-analytics-cdap-common-model/.classpath
new file mode 100644
index 0000000..6f5cd4e
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/.classpath
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/xcore">
+ <attributes>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="src" output="target/classes" path="src/main/xcore-gen">
+ <attributes>
+ <attribute name="optional" value="true"/>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="src" path="src/main/java"/>
+ <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="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
+ <attributes>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="src" output="target/test-classes" path="src/test/java">
+ <attributes>
+ <attribute name="optional" value="true"/>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/dcae-analytics-cdap-common-model/.gitignore b/dcae-analytics-cdap-common-model/.gitignore
new file mode 100644
index 0000000..b83d222
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/.gitignore
@@ -0,0 +1 @@
+/target/
diff --git a/dcae-analytics-cdap-common-model/.project b/dcae-analytics-cdap-common-model/.project
new file mode 100644
index 0000000..962d121
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/.project
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>dcae-analytics-cdap-common-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>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/dcae-analytics-cdap-common-model/.settings/org.eclipse.core.resources.prefs b/dcae-analytics-cdap-common-model/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..1f99b20
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+encoding//src/main/xcore=UTF-8
+encoding//src/main/xcore-gen=UTF-8
+encoding//src/test/java=UTF-8
+encoding/<project>=UTF-8
diff --git a/dcae-analytics-cdap-common-model/.settings/org.eclipse.jdt.core.prefs b/dcae-analytics-cdap-common-model/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..ec4300d
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/dcae-analytics-cdap-common-model/.settings/org.eclipse.m2e.core.prefs b/dcae-analytics-cdap-common-model/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/dcae-analytics-cdap-common-model/LICENSE.txt b/dcae-analytics-cdap-common-model/LICENSE.txt
new file mode 100644
index 0000000..30471b5
--- /dev/null
+++ b/dcae-analytics-cdap-common-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-analytics-cdap-common-model/META-INF/MANIFEST.MF b/dcae-analytics-cdap-common-model/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..d988bbd
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/META-INF/MANIFEST.MF
@@ -0,0 +1,27 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: dcae-analytics-cdap-common-model;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.openecomp.dcae.analytics.cdap.common,
+ org.openecomp.dcae.analytics.cdap.common.impl,
+ org.openecomp.dcae.analytics.cdap.common.util
+Require-Bundle: org.eclipse.emf.ecore.xcore;bundle-version="1.2.2",
+ org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.xtext.xbase.lib,
+ org.eclipse.emf.ecore.xcore.lib,
+ ncomp-openstack-model;visibility:=reexport,
+ dcae-controller-core-model;visibility:=reexport,
+ ncomp-core-model;visibility:=reexport,
+ ncomp-sirius-manager-agent-model;visibility:=reexport,
+ ncomp-cdap-model;visibility:=reexport,
+ dcae-controller-service-cdap-cluster-model;visibility:=reexport,
+ dcae-controller-service-vm-model;visibility:=reexport,
+ dcae-controller-service-cdap-model;bundle-version="0.1.0";visibility:=reexport,
+ ncomp-sirius-manager-model;visibility:=reexport
+Bundle-ActivationPolicy: lazy
diff --git a/dcae-analytics-cdap-common-model/build.properties b/dcae-analytics-cdap-common-model/build.properties
new file mode 100644
index 0000000..23f0fe2
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/build.properties
@@ -0,0 +1,10 @@
+#
+
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties
+jars.compile.order = .
+source.. = src/main/xcore-gen/
+output.. = bin/
diff --git a/dcae-analytics-cdap-common-model/common.xmi b/dcae-analytics-cdap-common-model/common.xmi
new file mode 100644
index 0000000..90c0a6c
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/common.xmi
@@ -0,0 +1,304 @@
+<?xml version="1.0" encoding="ASCII"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="common" nsURI="org.openecomp.dcae.analytics.cdap.common" nsPrefix="common">
+ <eAnnotations source="http://www.eclipse.org/emf/2011/Xcore">
+ <details key="cdap" value="http://openecomp.org/cdap"/>
+ <details key="ecomp" value="http://openecomp.org"/>
+ <details key="policy" value="http://openecomp.org/policy"/>
+ </eAnnotations>
+ <eClassifiers xsi:type="ecore:EClass" name="TcaConfiguration">
+ <eSuperTypes href="org.openecomp.dcae.controller.service.cdap#//CdapServiceInstanceConfiguration"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="domain" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:domain"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberHostName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberHostName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberHostPort" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberHostPort"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberTopicName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberTopicName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberProtocol" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberProtocol"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberUserName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberUserName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberUserPassword" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberUserPassword"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberContentType" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberContentType"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberConsumerId" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberConsumerId"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberConsumerGroup" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberConsumerGroup"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberTimeoutMS" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberTimeoutMS"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberMessageLimit" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberMessageLimit"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="subscriberPollingInterval" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:subscriberPollingInterval"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherHostName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherHostName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherHostPort" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherHostPort"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherTopicName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherTopicName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherProtocol" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherProtocol"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherUserName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherUserName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherUserPassword" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherUserPassword"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherContentType" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherContentType"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherMaxBatchSize" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherMaxBatchSize"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherMaxRecoveryQueueSize" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherMaxRecoveryQueueSize"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherPollingInterval" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:publisherPollingInterval"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="metricsPerFunctionalRole" upperBound="-1" eType="//TcaMetrics" containment="true" resolveProxies="false"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TcaMetrics">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/policy">
+ <details key="policyTemplate" value="dcae-microservice"/>
+ <details key="dcaeService" value="tca"/>
+ </eAnnotations>
+ <eSuperTypes href="org.openecomp.ncomp.core#//NamedEntity"/>
+ <eSuperTypes href="org.openecomp.dcae.controller.core.service#//DcaePolicyEntity"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="functionalRole" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.functionalRole"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="thresholds" upperBound="-1" eType="//TcaThreshold" containment="true" resolveProxies="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TcaThreshold">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eSuperTypes href="org.openecomp.ncomp.core#//NamedEntity"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="closedLoopControlName" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.closedLoopControlName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.version"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="fieldPath" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.fieldPath"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="thresholdValue" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.thresholdValue"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.direction"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="severity" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs:cdap-tca:${path}.policy.severity"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/dcae-analytics-cdap-common-model/core.xmi b/dcae-analytics-cdap-common-model/core.xmi
new file mode 100644
index 0000000..15e129f
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/core.xmi
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="ASCII"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="core" nsURI="org.openecomp.ncomp.core" nsPrefix="core">
+ <eAnnotations source="http://www.eclipse.org/emf/2011/Xcore">
+ <details key="ecomp" value="http://openecomp.org"/>
+ </eAnnotations>
+ <eClassifiers xsi:type="ecore:EClass" name="NamedEntity" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="configuration"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastPolled" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastChanged" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="created" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Event" abstract="true"/>
+ <eClassifiers xsi:type="ecore:EClass" name="HasOperationalState" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="operationalState" unique="false" eType="//OperationalState"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="User" eSuperTypes="//NamedEntity">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicKey" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="deploymentStatus" unique="false" eType="//DeploymentStatus"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="OperationalState">
+ <eLiterals name="OPERATIONAL"/>
+ <eLiterals name="SUSPENDED"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="DeploymentStatus">
+ <eLiterals name="UNDEPLOYED"/>
+ <eLiterals name="DEPLOYED"/>
+ <eLiterals name="DEPLOYED_PARTIALLY"/>
+ <eLiterals name="DEPLOYED_ERRORS"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EDataType" name="JsonObject" instanceClassName="org.json.JSONObject"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="RemoteContext" instanceClassName="org.json.JSONObject"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="IncreasingULongMetricAttribute" instanceClassName="org.openecomp.ncomp.core.types.metrics.IncreasingULongMetricAttribute"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="LongMetricAttribute" instanceClassName="org.openecomp.ncomp.core.types.metrics.LongMetricAttribute"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="DoubleMetricAttribute" instanceClassName="org.openecomp.ncomp.core.types.metrics.DoubleMetricAttribute"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="StringMetricAttribute" instanceClassName="org.openecomp.ncomp.core.types.metrics.StringMetricAttribute"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="DateMetricAttribute" instanceClassName="org.openecomp.ncomp.core.types.metrics.DateMetricAttribute"/>
+</ecore:EPackage>
diff --git a/dcae-analytics-cdap-common-model/plugin.properties b/dcae-analytics-cdap-common-model/plugin.properties
new file mode 100644
index 0000000..3c77e0d
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/plugin.properties
@@ -0,0 +1,4 @@
+#
+
+pluginName = Common Model
+providerName = www.example.org
diff --git a/dcae-analytics-cdap-common-model/plugin.xml b/dcae-analytics-cdap-common-model/plugin.xml
new file mode 100644
index 0000000..44b2761
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/plugin.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated common -->
+ <package
+ uri="org.openecomp.dcae.analytics.cdap.common"
+ class="org.openecomp.dcae.analytics.cdap.common.CommonPackage"
+ genModel="src/main/xcore/common.xcore"/>
+ </extension>
+
+</plugin>
diff --git a/dcae-analytics-cdap-common-model/pom.xml b/dcae-analytics-cdap-common-model/pom.xml
new file mode 100644
index 0000000..1476d9f
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/pom.xml
@@ -0,0 +1,18 @@
+<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.analytics</groupId>
+ <artifactId>dcae-analytics-cdap-common-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.dcae.controller</groupId>
+ <artifactId>dcae-controller-service-cdap-model</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/dcae-analytics-cdap-common-model/service.xmi b/dcae-analytics-cdap-common-model/service.xmi
new file mode 100644
index 0000000..00d90da
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/service.xmi
@@ -0,0 +1,184 @@
+<?xml version="1.0" encoding="ASCII"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="service" nsURI="org.openecomp.dcae.controller.core.service" nsPrefix="service">
+ <eAnnotations source="http://www.eclipse.org/emf/2011/Xcore">
+ <details key="ecomp" value="http://openecomp.org"/>
+ <details key="cdap" value="http://openecomp.org/cdap"/>
+ </eAnnotations>
+ <eClassifiers xsi:type="ecore:EClass" name="DcaeServiceContainer" abstract="true">
+ <eSuperTypes href="org.openecomp.ncomp.core#//NamedEntity"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="instances" upperBound="-1" eType="//DcaeServiceInstance" eOpposite="//DcaeServiceInstance/serviceContainer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DcaeService" abstract="true">
+ <eSuperTypes href="org.openecomp.ncomp.core#//NamedEntity"/>
+ <eOperations name="deploy" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ <eParameters name="containerPath" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="undeploy" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="test" unique="false" eType="//HealthTestResponse">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="suspend" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="resume" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="pushManagerConfiguration" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="pollManagerConfiguration" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="managerConfiguration" unique="false">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="managerOperation" unique="false">
+ <eType xsi:type="ecore:EDataType" href="org.openecomp.ncomp.core#//JsonObject"/>
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ <eParameters name="operation" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ <eParameters name="parameters" unique="false">
+ <eType xsi:type="ecore:EDataType" href="org.openecomp.ncomp.core#//JsonObject"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="updateConfigurationFromPolicy" unique="false">
+ <eParameters name="instanceName" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="runHealthTests" unique="false"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DcaeServiceInstance" abstract="true">
+ <eSuperTypes href="org.openecomp.ncomp.core#//NamedEntity"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="serviceContainer" eType="//DcaeServiceContainer" eOpposite="//DcaeServiceContainer/instances">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="operational"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="status" unique="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="operational"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EEnum" href="org.openecomp.ncomp.core#//DeploymentStatus"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="inputStreams" upperBound="-1" containment="true" resolveProxies="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="service"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="org.openecomp.dcae.controller.core.stream#//DcaeStream"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="outputStreams" upperBound="-1" containment="true" resolveProxies="false">
+ <eAnnotations source="http://openecomp.org">
+ <details key="type" value="service"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="org.openecomp.dcae.controller.core.stream#//DcaeStream"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastHealthTest" unique="false" transient="true">
+ <eType xsi:type="ecore:EDataType" href="org.openecomp.ncomp.core#//DateMetricAttribute"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="healthTestStatus" unique="false" eType="//HealthTestStatus"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="healthTestMessageCode" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DcaeLocation" eSuperTypes="//DcaeServiceContainer">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="locationType" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="openstackProject">
+ <eType xsi:type="ecore:EClass" href="org.openecomp.ncomp.openstack.location#//OpenStackProject"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DcaeServiceDescriptor">
+ <eSuperTypes href="org.openecomp.ncomp.core#//NamedEntity"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="groupId" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="artifact" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="HealthTestResponse">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="status" unique="false" eType="//HealthTestStatus"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="messageCode" unique="false">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DcaePolicyEntity" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyName" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyDescription" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyDescription"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyConfigName" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyConfigName"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyTemplateVersion" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyTemplateVersion"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyVersion" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyVersion"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyPriority" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyPriority"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="policyScope" unique="false">
+ <eAnnotations source="http://openecomp.org/cdap">
+ <details key="destination" value="namespace-prefs::${path}.policyScope"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="HealthTestStatus">
+ <eLiterals name="GREEN"/>
+ <eLiterals name="YELLOW"/>
+ <eLiterals name="RED"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/dcae-analytics-cdap-common-model/src/main/java/org/openecomp/dcae/analytics/cdap/common/tools/CreateXmi.java b/dcae-analytics-cdap-common-model/src/main/java/org/openecomp/dcae/analytics/cdap/common/tools/CreateXmi.java
new file mode 100644
index 0000000..d33f21a
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/java/org/openecomp/dcae/analytics/cdap/common/tools/CreateXmi.java
@@ -0,0 +1,38 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END============================================
+ */
+
+package org.openecomp.dcae.analytics.cdap.common.tools;
+
+import java.io.IOException;
+
+import org.eclipse.emf.ecore.EPackage;
+
+import org.openecomp.ncomp.utils.emf.Ecore2Xmi;
+
+public class CreateXmi {
+ org.openecomp.dcae.controller.core.service.ServicePackage p2;
+ org.openecomp.dcae.analytics.cdap.common.CommonPackage p1;
+
+ public static void main(String[] args) throws ClassNotFoundException, IllegalArgumentException, IllegalAccessException, NoSuchFieldException, SecurityException, IOException {
+ Ecore2Xmi.main(args);
+ }
+
+}
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonFactory.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonFactory.java
new file mode 100644
index 0000000..ca880db
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonFactory.java
@@ -0,0 +1,81 @@
+
+/*-
+ * ============LICENSE_START==========================================
+ * OPENECOMP - DCAE
+ * ===================================================================
+ * Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END============================================
+ */
+
+/**
+ */
+package org.openecomp.dcae.analytics.cdap.common;
+
+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.analytics.cdap.common.CommonPackage
+ * @generated
+ */
+public interface CommonFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CommonFactory eINSTANCE = org.openecomp.dcae.analytics.cdap.common.impl.CommonFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Tca Configuration</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Tca Configuration</em>'.
+ * @generated
+ */
+ TcaConfiguration createTcaConfiguration();
+
+ /**
+ * Returns a new object of class '<em>Tca Metrics</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Tca Metrics</em>'.
+ * @generated
+ */
+ TcaMetrics createTcaMetrics();
+
+ /**
+ * Returns a new object of class '<em>Tca Threshold</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Tca Threshold</em>'.
+ * @generated
+ */
+ TcaThreshold createTcaThreshold();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ CommonPackage getCommonPackage();
+
+} //CommonFactory
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonPackage.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonPackage.java
new file mode 100644
index 0000000..334bb03
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/CommonPackage.java
@@ -0,0 +1,1287 @@
+
+/*-
+ * ============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.analytics.cdap.common;
+
+import org.openecomp.dcae.controller.service.cdap.CdapPackage;
+
+import org.openecomp.ncomp.core.CorePackage;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- 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.analytics.cdap.common.CommonFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/GenModel modelDirectory='/dcae-analytics-cdap-common-model/src/main/xcore-gen' basePackage='org.openecomp.dcae.analytics.cdap'"
+ * annotation="http://www.eclipse.org/emf/2011/Xcore cdap='http://openecomp.org/cdap' ecomp='http://openecomp.org' policy='http://openecomp.org/policy'"
+ * @generated
+ */
+public interface CommonPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "common";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "org.openecomp.dcae.analytics.cdap.common";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "common";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CommonPackage eINSTANCE = org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl <em>Tca Configuration</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl#getTcaConfiguration()
+ * @generated
+ */
+ int TCA_CONFIGURATION = 0;
+
+ /**
+ * The feature id for the '<em><b>Domain</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__DOMAIN = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Host Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Host Port</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Topic Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Protocol</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Subscriber User Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_USER_NAME = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Subscriber User Password</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Content Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Consumer Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Consumer Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Timeout MS</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Message Limit</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 11;
+
+ /**
+ * The feature id for the '<em><b>Subscriber Polling Interval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 12;
+
+ /**
+ * The feature id for the '<em><b>Publisher Host Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_HOST_NAME = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 13;
+
+ /**
+ * The feature id for the '<em><b>Publisher Host Port</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_HOST_PORT = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 14;
+
+ /**
+ * The feature id for the '<em><b>Publisher Topic Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 15;
+
+ /**
+ * The feature id for the '<em><b>Publisher Protocol</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_PROTOCOL = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 16;
+
+ /**
+ * The feature id for the '<em><b>Publisher User Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_USER_NAME = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 17;
+
+ /**
+ * The feature id for the '<em><b>Publisher User Password</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 18;
+
+ /**
+ * The feature id for the '<em><b>Publisher Content Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 19;
+
+ /**
+ * The feature id for the '<em><b>Publisher Max Batch Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 20;
+
+ /**
+ * The feature id for the '<em><b>Publisher Max Recovery Queue Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 21;
+
+ /**
+ * The feature id for the '<em><b>Publisher Polling Interval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 22;
+
+ /**
+ * The feature id for the '<em><b>Metrics Per Functional Role</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 23;
+
+ /**
+ * The number of structural features of the '<em>Tca Configuration</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION_FEATURE_COUNT = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_FEATURE_COUNT + 24;
+
+ /**
+ * The number of operations of the '<em>Tca Configuration</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_CONFIGURATION_OPERATION_COUNT = CdapPackage.CDAP_SERVICE_INSTANCE_CONFIGURATION_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl <em>Tca Metrics</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl#getTcaMetrics()
+ * @generated
+ */
+ int TCA_METRICS = 1;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Policy Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Policy Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_DESCRIPTION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Policy Config Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_CONFIG_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Policy Template Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_TEMPLATE_VERSION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Policy Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_VERSION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Policy Priority</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_PRIORITY = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Policy Scope</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__POLICY_SCOPE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Functional Role</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__FUNCTIONAL_ROLE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Thresholds</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS__THRESHOLDS = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 8;
+
+ /**
+ * The number of structural features of the '<em>Tca Metrics</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 9;
+
+ /**
+ * The number of operations of the '<em>Tca Metrics</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_METRICS_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl <em>Tca Threshold</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl#getTcaThreshold()
+ * @generated
+ */
+ int TCA_THRESHOLD = 2;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__NAME = CorePackage.NAMED_ENTITY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Last Polled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__LAST_POLLED = CorePackage.NAMED_ENTITY__LAST_POLLED;
+
+ /**
+ * The feature id for the '<em><b>Last Changed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__LAST_CHANGED = CorePackage.NAMED_ENTITY__LAST_CHANGED;
+
+ /**
+ * The feature id for the '<em><b>Created</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__CREATED = CorePackage.NAMED_ENTITY__CREATED;
+
+ /**
+ * The feature id for the '<em><b>Closed Loop Control Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__VERSION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Field Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__FIELD_PATH = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Threshold Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__THRESHOLD_VALUE = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Direction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__DIRECTION = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Severity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD__SEVERITY = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>Tca Threshold</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD_FEATURE_COUNT = CorePackage.NAMED_ENTITY_FEATURE_COUNT + 6;
+
+ /**
+ * The number of operations of the '<em>Tca Threshold</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TCA_THRESHOLD_OPERATION_COUNT = CorePackage.NAMED_ENTITY_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration <em>Tca Configuration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Tca Configuration</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration
+ * @generated
+ */
+ EClass getTcaConfiguration();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getDomain <em>Domain</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Domain</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getDomain()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_Domain();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostName <em>Subscriber Host Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Host Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostName()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberHostName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostPort <em>Subscriber Host Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Host Port</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostPort()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberHostPort();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTopicName <em>Subscriber Topic Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Topic Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTopicName()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberTopicName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberProtocol <em>Subscriber Protocol</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Protocol</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberProtocol()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberProtocol();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserName <em>Subscriber User Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber User Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserName()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberUserName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserPassword <em>Subscriber User Password</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber User Password</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserPassword()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberUserPassword();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberContentType <em>Subscriber Content Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Content Type</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberContentType()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberContentType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerId <em>Subscriber Consumer Id</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Consumer Id</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerId()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberConsumerId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerGroup <em>Subscriber Consumer Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Consumer Group</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerGroup()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberConsumerGroup();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTimeoutMS <em>Subscriber Timeout MS</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Timeout MS</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTimeoutMS()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberTimeoutMS();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberMessageLimit <em>Subscriber Message Limit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Message Limit</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberMessageLimit()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberMessageLimit();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberPollingInterval <em>Subscriber Polling Interval</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Subscriber Polling Interval</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberPollingInterval()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_SubscriberPollingInterval();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostName <em>Publisher Host Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Host Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostName()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherHostName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostPort <em>Publisher Host Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Host Port</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostPort()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherHostPort();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherTopicName <em>Publisher Topic Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Topic Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherTopicName()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherTopicName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherProtocol <em>Publisher Protocol</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Protocol</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherProtocol()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherProtocol();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserName <em>Publisher User Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher User Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserName()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherUserName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserPassword <em>Publisher User Password</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher User Password</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserPassword()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherUserPassword();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherContentType <em>Publisher Content Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Content Type</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherContentType()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherContentType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxBatchSize <em>Publisher Max Batch Size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Max Batch Size</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxBatchSize()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherMaxBatchSize();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxRecoveryQueueSize <em>Publisher Max Recovery Queue Size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Max Recovery Queue Size</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxRecoveryQueueSize()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherMaxRecoveryQueueSize();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherPollingInterval <em>Publisher Polling Interval</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Publisher Polling Interval</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherPollingInterval()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EAttribute getTcaConfiguration_PublisherPollingInterval();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getMetricsPerFunctionalRole <em>Metrics Per Functional Role</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Metrics Per Functional Role</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getMetricsPerFunctionalRole()
+ * @see #getTcaConfiguration()
+ * @generated
+ */
+ EReference getTcaConfiguration_MetricsPerFunctionalRole();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics <em>Tca Metrics</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Tca Metrics</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaMetrics
+ * @generated
+ */
+ EClass getTcaMetrics();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getFunctionalRole <em>Functional Role</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Functional Role</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getFunctionalRole()
+ * @see #getTcaMetrics()
+ * @generated
+ */
+ EAttribute getTcaMetrics_FunctionalRole();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getThresholds <em>Thresholds</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Thresholds</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getThresholds()
+ * @see #getTcaMetrics()
+ * @generated
+ */
+ EReference getTcaMetrics_Thresholds();
+
+ /**
+ * Returns the meta object for class '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold <em>Tca Threshold</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Tca Threshold</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold
+ * @generated
+ */
+ EClass getTcaThreshold();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getClosedLoopControlName <em>Closed Loop Control Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Closed Loop Control Name</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getClosedLoopControlName()
+ * @see #getTcaThreshold()
+ * @generated
+ */
+ EAttribute getTcaThreshold_ClosedLoopControlName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getVersion <em>Version</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Version</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getVersion()
+ * @see #getTcaThreshold()
+ * @generated
+ */
+ EAttribute getTcaThreshold_Version();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getFieldPath <em>Field Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Field Path</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getFieldPath()
+ * @see #getTcaThreshold()
+ * @generated
+ */
+ EAttribute getTcaThreshold_FieldPath();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getThresholdValue <em>Threshold Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Threshold Value</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getThresholdValue()
+ * @see #getTcaThreshold()
+ * @generated
+ */
+ EAttribute getTcaThreshold_ThresholdValue();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getDirection <em>Direction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Direction</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getDirection()
+ * @see #getTcaThreshold()
+ * @generated
+ */
+ EAttribute getTcaThreshold_Direction();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getSeverity <em>Severity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Severity</em>'.
+ * @see org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getSeverity()
+ * @see #getTcaThreshold()
+ * @generated
+ */
+ EAttribute getTcaThreshold_Severity();
+
+ /**
+ * 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
+ */
+ CommonFactory getCommonFactory();
+
+ /**
+ * <!-- 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.analytics.cdap.common.impl.TcaConfigurationImpl <em>Tca Configuration</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl#getTcaConfiguration()
+ * @generated
+ */
+ EClass TCA_CONFIGURATION = eINSTANCE.getTcaConfiguration();
+
+ /**
+ * The meta object literal for the '<em><b>Domain</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__DOMAIN = eINSTANCE.getTcaConfiguration_Domain();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Host Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME = eINSTANCE.getTcaConfiguration_SubscriberHostName();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Host Port</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT = eINSTANCE.getTcaConfiguration_SubscriberHostPort();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Topic Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME = eINSTANCE.getTcaConfiguration_SubscriberTopicName();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Protocol</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL = eINSTANCE.getTcaConfiguration_SubscriberProtocol();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber User Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_USER_NAME = eINSTANCE.getTcaConfiguration_SubscriberUserName();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber User Password</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD = eINSTANCE.getTcaConfiguration_SubscriberUserPassword();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Content Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE = eINSTANCE.getTcaConfiguration_SubscriberContentType();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Consumer Id</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID = eINSTANCE.getTcaConfiguration_SubscriberConsumerId();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Consumer Group</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP = eINSTANCE.getTcaConfiguration_SubscriberConsumerGroup();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Timeout MS</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS = eINSTANCE.getTcaConfiguration_SubscriberTimeoutMS();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Message Limit</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT = eINSTANCE.getTcaConfiguration_SubscriberMessageLimit();
+
+ /**
+ * The meta object literal for the '<em><b>Subscriber Polling Interval</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL = eINSTANCE.getTcaConfiguration_SubscriberPollingInterval();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Host Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_HOST_NAME = eINSTANCE.getTcaConfiguration_PublisherHostName();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Host Port</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_HOST_PORT = eINSTANCE.getTcaConfiguration_PublisherHostPort();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Topic Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME = eINSTANCE.getTcaConfiguration_PublisherTopicName();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Protocol</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_PROTOCOL = eINSTANCE.getTcaConfiguration_PublisherProtocol();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher User Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_USER_NAME = eINSTANCE.getTcaConfiguration_PublisherUserName();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher User Password</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD = eINSTANCE.getTcaConfiguration_PublisherUserPassword();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Content Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE = eINSTANCE.getTcaConfiguration_PublisherContentType();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Max Batch Size</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE = eINSTANCE.getTcaConfiguration_PublisherMaxBatchSize();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Max Recovery Queue Size</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE = eINSTANCE.getTcaConfiguration_PublisherMaxRecoveryQueueSize();
+
+ /**
+ * The meta object literal for the '<em><b>Publisher Polling Interval</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL = eINSTANCE.getTcaConfiguration_PublisherPollingInterval();
+
+ /**
+ * The meta object literal for the '<em><b>Metrics Per Functional Role</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE = eINSTANCE.getTcaConfiguration_MetricsPerFunctionalRole();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl <em>Tca Metrics</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl#getTcaMetrics()
+ * @generated
+ */
+ EClass TCA_METRICS = eINSTANCE.getTcaMetrics();
+
+ /**
+ * The meta object literal for the '<em><b>Functional Role</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_METRICS__FUNCTIONAL_ROLE = eINSTANCE.getTcaMetrics_FunctionalRole();
+
+ /**
+ * The meta object literal for the '<em><b>Thresholds</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TCA_METRICS__THRESHOLDS = eINSTANCE.getTcaMetrics_Thresholds();
+
+ /**
+ * The meta object literal for the '{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl <em>Tca Threshold</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl
+ * @see org.openecomp.dcae.analytics.cdap.common.impl.CommonPackageImpl#getTcaThreshold()
+ * @generated
+ */
+ EClass TCA_THRESHOLD = eINSTANCE.getTcaThreshold();
+
+ /**
+ * The meta object literal for the '<em><b>Closed Loop Control Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME = eINSTANCE.getTcaThreshold_ClosedLoopControlName();
+
+ /**
+ * The meta object literal for the '<em><b>Version</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_THRESHOLD__VERSION = eINSTANCE.getTcaThreshold_Version();
+
+ /**
+ * The meta object literal for the '<em><b>Field Path</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_THRESHOLD__FIELD_PATH = eINSTANCE.getTcaThreshold_FieldPath();
+
+ /**
+ * The meta object literal for the '<em><b>Threshold Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_THRESHOLD__THRESHOLD_VALUE = eINSTANCE.getTcaThreshold_ThresholdValue();
+
+ /**
+ * The meta object literal for the '<em><b>Direction</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_THRESHOLD__DIRECTION = eINSTANCE.getTcaThreshold_Direction();
+
+ /**
+ * The meta object literal for the '<em><b>Severity</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TCA_THRESHOLD__SEVERITY = eINSTANCE.getTcaThreshold_Severity();
+
+ }
+
+} //CommonPackage
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaConfiguration.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaConfiguration.java
new file mode 100644
index 0000000..b86fe62
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaConfiguration.java
@@ -0,0 +1,730 @@
+
+/*-
+ * ============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.analytics.cdap.common;
+
+import org.openecomp.dcae.controller.service.cdap.CdapServiceInstanceConfiguration;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Tca Configuration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getDomain <em>Domain</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostName <em>Subscriber Host Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostPort <em>Subscriber Host Port</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTopicName <em>Subscriber Topic Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberProtocol <em>Subscriber Protocol</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserName <em>Subscriber User Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserPassword <em>Subscriber User Password</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberContentType <em>Subscriber Content Type</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerId <em>Subscriber Consumer Id</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerGroup <em>Subscriber Consumer Group</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTimeoutMS <em>Subscriber Timeout MS</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberMessageLimit <em>Subscriber Message Limit</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberPollingInterval <em>Subscriber Polling Interval</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostName <em>Publisher Host Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostPort <em>Publisher Host Port</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherTopicName <em>Publisher Topic Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherProtocol <em>Publisher Protocol</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserName <em>Publisher User Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserPassword <em>Publisher User Password</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherContentType <em>Publisher Content Type</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxBatchSize <em>Publisher Max Batch Size</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxRecoveryQueueSize <em>Publisher Max Recovery Queue Size</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherPollingInterval <em>Publisher Polling Interval</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getMetricsPerFunctionalRole <em>Metrics Per Functional Role</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration()
+ * @model
+ * @generated
+ */
+public interface TcaConfiguration extends CdapServiceInstanceConfiguration {
+ /**
+ * Returns the value of the '<em><b>Domain</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Domain</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Domain</em>' attribute.
+ * @see #setDomain(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_Domain()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:domain'"
+ * @generated
+ */
+ String getDomain();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getDomain <em>Domain</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Domain</em>' attribute.
+ * @see #getDomain()
+ * @generated
+ */
+ void setDomain(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Host Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Host 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>Subscriber Host Name</em>' attribute.
+ * @see #setSubscriberHostName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberHostName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberHostName'"
+ * @generated
+ */
+ String getSubscriberHostName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostName <em>Subscriber Host Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Host Name</em>' attribute.
+ * @see #getSubscriberHostName()
+ * @generated
+ */
+ void setSubscriberHostName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Host Port</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Host Port</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Host Port</em>' attribute.
+ * @see #setSubscriberHostPort(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberHostPort()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberHostPort'"
+ * @generated
+ */
+ String getSubscriberHostPort();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberHostPort <em>Subscriber Host Port</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Host Port</em>' attribute.
+ * @see #getSubscriberHostPort()
+ * @generated
+ */
+ void setSubscriberHostPort(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Topic Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Topic 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>Subscriber Topic Name</em>' attribute.
+ * @see #setSubscriberTopicName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberTopicName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberTopicName'"
+ * @generated
+ */
+ String getSubscriberTopicName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTopicName <em>Subscriber Topic Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Topic Name</em>' attribute.
+ * @see #getSubscriberTopicName()
+ * @generated
+ */
+ void setSubscriberTopicName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Protocol</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Protocol</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Protocol</em>' attribute.
+ * @see #setSubscriberProtocol(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberProtocol()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberProtocol'"
+ * @generated
+ */
+ String getSubscriberProtocol();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberProtocol <em>Subscriber Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Protocol</em>' attribute.
+ * @see #getSubscriberProtocol()
+ * @generated
+ */
+ void setSubscriberProtocol(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber User Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber User 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>Subscriber User Name</em>' attribute.
+ * @see #setSubscriberUserName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberUserName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberUserName'"
+ * @generated
+ */
+ String getSubscriberUserName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserName <em>Subscriber User Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber User Name</em>' attribute.
+ * @see #getSubscriberUserName()
+ * @generated
+ */
+ void setSubscriberUserName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber User Password</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber User 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>Subscriber User Password</em>' attribute.
+ * @see #setSubscriberUserPassword(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberUserPassword()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberUserPassword'"
+ * @generated
+ */
+ String getSubscriberUserPassword();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberUserPassword <em>Subscriber User Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber User Password</em>' attribute.
+ * @see #getSubscriberUserPassword()
+ * @generated
+ */
+ void setSubscriberUserPassword(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Content Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Content Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Content Type</em>' attribute.
+ * @see #setSubscriberContentType(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberContentType()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberContentType'"
+ * @generated
+ */
+ String getSubscriberContentType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberContentType <em>Subscriber Content Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Content Type</em>' attribute.
+ * @see #getSubscriberContentType()
+ * @generated
+ */
+ void setSubscriberContentType(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Consumer Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Consumer Id</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Consumer Id</em>' attribute.
+ * @see #setSubscriberConsumerId(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberConsumerId()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberConsumerId'"
+ * @generated
+ */
+ String getSubscriberConsumerId();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerId <em>Subscriber Consumer Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Consumer Id</em>' attribute.
+ * @see #getSubscriberConsumerId()
+ * @generated
+ */
+ void setSubscriberConsumerId(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Consumer Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Consumer Group</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Consumer Group</em>' attribute.
+ * @see #setSubscriberConsumerGroup(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberConsumerGroup()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberConsumerGroup'"
+ * @generated
+ */
+ String getSubscriberConsumerGroup();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberConsumerGroup <em>Subscriber Consumer Group</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Consumer Group</em>' attribute.
+ * @see #getSubscriberConsumerGroup()
+ * @generated
+ */
+ void setSubscriberConsumerGroup(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Timeout MS</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Timeout MS</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Timeout MS</em>' attribute.
+ * @see #setSubscriberTimeoutMS(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberTimeoutMS()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberTimeoutMS'"
+ * @generated
+ */
+ String getSubscriberTimeoutMS();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberTimeoutMS <em>Subscriber Timeout MS</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Timeout MS</em>' attribute.
+ * @see #getSubscriberTimeoutMS()
+ * @generated
+ */
+ void setSubscriberTimeoutMS(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Message Limit</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Message Limit</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Message Limit</em>' attribute.
+ * @see #setSubscriberMessageLimit(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberMessageLimit()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberMessageLimit'"
+ * @generated
+ */
+ String getSubscriberMessageLimit();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberMessageLimit <em>Subscriber Message Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Message Limit</em>' attribute.
+ * @see #getSubscriberMessageLimit()
+ * @generated
+ */
+ void setSubscriberMessageLimit(String value);
+
+ /**
+ * Returns the value of the '<em><b>Subscriber Polling Interval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Subscriber Polling Interval</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Subscriber Polling Interval</em>' attribute.
+ * @see #setSubscriberPollingInterval(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_SubscriberPollingInterval()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:subscriberPollingInterval'"
+ * @generated
+ */
+ String getSubscriberPollingInterval();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getSubscriberPollingInterval <em>Subscriber Polling Interval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Subscriber Polling Interval</em>' attribute.
+ * @see #getSubscriberPollingInterval()
+ * @generated
+ */
+ void setSubscriberPollingInterval(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Host Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Host 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>Publisher Host Name</em>' attribute.
+ * @see #setPublisherHostName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherHostName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherHostName'"
+ * @generated
+ */
+ String getPublisherHostName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostName <em>Publisher Host Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Host Name</em>' attribute.
+ * @see #getPublisherHostName()
+ * @generated
+ */
+ void setPublisherHostName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Host Port</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Host Port</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Publisher Host Port</em>' attribute.
+ * @see #setPublisherHostPort(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherHostPort()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherHostPort'"
+ * @generated
+ */
+ String getPublisherHostPort();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherHostPort <em>Publisher Host Port</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Host Port</em>' attribute.
+ * @see #getPublisherHostPort()
+ * @generated
+ */
+ void setPublisherHostPort(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Topic Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Topic 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>Publisher Topic Name</em>' attribute.
+ * @see #setPublisherTopicName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherTopicName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherTopicName'"
+ * @generated
+ */
+ String getPublisherTopicName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherTopicName <em>Publisher Topic Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Topic Name</em>' attribute.
+ * @see #getPublisherTopicName()
+ * @generated
+ */
+ void setPublisherTopicName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Protocol</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Protocol</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Publisher Protocol</em>' attribute.
+ * @see #setPublisherProtocol(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherProtocol()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherProtocol'"
+ * @generated
+ */
+ String getPublisherProtocol();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherProtocol <em>Publisher Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Protocol</em>' attribute.
+ * @see #getPublisherProtocol()
+ * @generated
+ */
+ void setPublisherProtocol(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher User Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher User 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>Publisher User Name</em>' attribute.
+ * @see #setPublisherUserName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherUserName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherUserName'"
+ * @generated
+ */
+ String getPublisherUserName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserName <em>Publisher User Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher User Name</em>' attribute.
+ * @see #getPublisherUserName()
+ * @generated
+ */
+ void setPublisherUserName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher User Password</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher User 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>Publisher User Password</em>' attribute.
+ * @see #setPublisherUserPassword(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherUserPassword()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherUserPassword'"
+ * @generated
+ */
+ String getPublisherUserPassword();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherUserPassword <em>Publisher User Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher User Password</em>' attribute.
+ * @see #getPublisherUserPassword()
+ * @generated
+ */
+ void setPublisherUserPassword(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Content Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Content Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Publisher Content Type</em>' attribute.
+ * @see #setPublisherContentType(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherContentType()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherContentType'"
+ * @generated
+ */
+ String getPublisherContentType();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherContentType <em>Publisher Content Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Content Type</em>' attribute.
+ * @see #getPublisherContentType()
+ * @generated
+ */
+ void setPublisherContentType(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Max Batch Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Max Batch Size</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Publisher Max Batch Size</em>' attribute.
+ * @see #setPublisherMaxBatchSize(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherMaxBatchSize()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherMaxBatchSize'"
+ * @generated
+ */
+ String getPublisherMaxBatchSize();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxBatchSize <em>Publisher Max Batch Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Max Batch Size</em>' attribute.
+ * @see #getPublisherMaxBatchSize()
+ * @generated
+ */
+ void setPublisherMaxBatchSize(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Max Recovery Queue Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Max Recovery Queue Size</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Publisher Max Recovery Queue Size</em>' attribute.
+ * @see #setPublisherMaxRecoveryQueueSize(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherMaxRecoveryQueueSize()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherMaxRecoveryQueueSize'"
+ * @generated
+ */
+ String getPublisherMaxRecoveryQueueSize();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherMaxRecoveryQueueSize <em>Publisher Max Recovery Queue Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Max Recovery Queue Size</em>' attribute.
+ * @see #getPublisherMaxRecoveryQueueSize()
+ * @generated
+ */
+ void setPublisherMaxRecoveryQueueSize(String value);
+
+ /**
+ * Returns the value of the '<em><b>Publisher Polling Interval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Publisher Polling Interval</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Publisher Polling Interval</em>' attribute.
+ * @see #setPublisherPollingInterval(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_PublisherPollingInterval()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:publisherPollingInterval'"
+ * @generated
+ */
+ String getPublisherPollingInterval();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaConfiguration#getPublisherPollingInterval <em>Publisher Polling Interval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Publisher Polling Interval</em>' attribute.
+ * @see #getPublisherPollingInterval()
+ * @generated
+ */
+ void setPublisherPollingInterval(String value);
+
+ /**
+ * Returns the value of the '<em><b>Metrics Per Functional Role</b></em>' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Metrics Per Functional Role</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>Metrics Per Functional Role</em>' containment reference list.
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaConfiguration_MetricsPerFunctionalRole()
+ * @model containment="true"
+ * @generated
+ */
+ EList<TcaMetrics> getMetricsPerFunctionalRole();
+
+} // TcaConfiguration
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaMetrics.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaMetrics.java
new file mode 100644
index 0000000..280103f
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaMetrics.java
@@ -0,0 +1,95 @@
+
+/*-
+ * ============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.analytics.cdap.common;
+
+import org.openecomp.dcae.controller.core.service.DcaePolicyEntity;
+import org.openecomp.ncomp.core.NamedEntity;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Tca Metrics</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getFunctionalRole <em>Functional Role</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getThresholds <em>Thresholds</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaMetrics()
+ * @model annotation="http://openecomp.org/policy policyTemplate='dcae-microservice' dcaeService='tca'"
+ * annotation="http://openecomp.org type='configuration'"
+ * @generated
+ */
+public interface TcaMetrics extends NamedEntity, DcaePolicyEntity {
+ /**
+ * Returns the value of the '<em><b>Functional Role</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Functional Role</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Functional Role</em>' attribute.
+ * @see #setFunctionalRole(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaMetrics_FunctionalRole()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.functionalRole'"
+ * @generated
+ */
+ String getFunctionalRole();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics#getFunctionalRole <em>Functional Role</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Functional Role</em>' attribute.
+ * @see #getFunctionalRole()
+ * @generated
+ */
+ void setFunctionalRole(String value);
+
+ /**
+ * Returns the value of the '<em><b>Thresholds</b></em>' containment reference list.
+ * The list contents are of type {@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Thresholds</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>Thresholds</em>' containment reference list.
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaMetrics_Thresholds()
+ * @model containment="true"
+ * annotation="http://openecomp.org type='configuration'"
+ * @generated
+ */
+ EList<TcaThreshold> getThresholds();
+
+} // TcaMetrics
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaThreshold.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaThreshold.java
new file mode 100644
index 0000000..49b249e
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/TcaThreshold.java
@@ -0,0 +1,218 @@
+
+/*-
+ * ============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.analytics.cdap.common;
+
+import org.openecomp.ncomp.core.NamedEntity;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Tca Threshold</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getClosedLoopControlName <em>Closed Loop Control Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getVersion <em>Version</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getFieldPath <em>Field Path</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getThresholdValue <em>Threshold Value</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getDirection <em>Direction</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getSeverity <em>Severity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold()
+ * @model annotation="http://openecomp.org type='configuration'"
+ * @generated
+ */
+public interface TcaThreshold extends NamedEntity {
+ /**
+ * Returns the value of the '<em><b>Closed Loop Control Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Closed Loop Control 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>Closed Loop Control Name</em>' attribute.
+ * @see #setClosedLoopControlName(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold_ClosedLoopControlName()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.closedLoopControlName'"
+ * @generated
+ */
+ String getClosedLoopControlName();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getClosedLoopControlName <em>Closed Loop Control Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Closed Loop Control Name</em>' attribute.
+ * @see #getClosedLoopControlName()
+ * @generated
+ */
+ void setClosedLoopControlName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Version</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Version</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Version</em>' attribute.
+ * @see #setVersion(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold_Version()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.version'"
+ * @generated
+ */
+ String getVersion();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getVersion <em>Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Version</em>' attribute.
+ * @see #getVersion()
+ * @generated
+ */
+ void setVersion(String value);
+
+ /**
+ * Returns the value of the '<em><b>Field Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Field Path</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Field Path</em>' attribute.
+ * @see #setFieldPath(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold_FieldPath()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.fieldPath'"
+ * @generated
+ */
+ String getFieldPath();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getFieldPath <em>Field Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Field Path</em>' attribute.
+ * @see #getFieldPath()
+ * @generated
+ */
+ void setFieldPath(String value);
+
+ /**
+ * Returns the value of the '<em><b>Threshold Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Threshold Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Threshold Value</em>' attribute.
+ * @see #setThresholdValue(Integer)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold_ThresholdValue()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.thresholdValue'"
+ * @generated
+ */
+ Integer getThresholdValue();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getThresholdValue <em>Threshold Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Threshold Value</em>' attribute.
+ * @see #getThresholdValue()
+ * @generated
+ */
+ void setThresholdValue(Integer value);
+
+ /**
+ * Returns the value of the '<em><b>Direction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Direction</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Direction</em>' attribute.
+ * @see #setDirection(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold_Direction()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.direction'"
+ * @generated
+ */
+ String getDirection();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getDirection <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Direction</em>' attribute.
+ * @see #getDirection()
+ * @generated
+ */
+ void setDirection(String value);
+
+ /**
+ * Returns the value of the '<em><b>Severity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Severity</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Severity</em>' attribute.
+ * @see #setSeverity(String)
+ * @see org.openecomp.dcae.analytics.cdap.common.CommonPackage#getTcaThreshold_Severity()
+ * @model unique="false"
+ * annotation="http://openecomp.org type='configuration'"
+ * annotation="http://openecomp.org/cdap destination='namespace-prefs:cdap-tca:${path}.policy.severity'"
+ * @generated
+ */
+ String getSeverity();
+
+ /**
+ * Sets the value of the '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold#getSeverity <em>Severity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Severity</em>' attribute.
+ * @see #getSeverity()
+ * @generated
+ */
+ void setSeverity(String value);
+
+} // TcaThreshold
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonFactoryImpl.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonFactoryImpl.java
new file mode 100644
index 0000000..2f2a9db
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonFactoryImpl.java
@@ -0,0 +1,138 @@
+
+/*-
+ * ============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.analytics.cdap.common.impl;
+
+import org.openecomp.dcae.analytics.cdap.common.*;
+
+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 CommonFactoryImpl extends EFactoryImpl implements CommonFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CommonFactory init() {
+ try {
+ CommonFactory theCommonFactory = (CommonFactory)EPackage.Registry.INSTANCE.getEFactory(CommonPackage.eNS_URI);
+ if (theCommonFactory != null) {
+ return theCommonFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new CommonFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CommonFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case CommonPackage.TCA_CONFIGURATION: return createTcaConfiguration();
+ case CommonPackage.TCA_METRICS: return createTcaMetrics();
+ case CommonPackage.TCA_THRESHOLD: return createTcaThreshold();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TcaConfiguration createTcaConfiguration() {
+ TcaConfigurationImpl tcaConfiguration = new TcaConfigurationImpl();
+ return tcaConfiguration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TcaMetrics createTcaMetrics() {
+ TcaMetricsImpl tcaMetrics = new TcaMetricsImpl();
+ return tcaMetrics;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TcaThreshold createTcaThreshold() {
+ TcaThresholdImpl tcaThreshold = new TcaThresholdImpl();
+ return tcaThreshold;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CommonPackage getCommonPackage() {
+ return (CommonPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static CommonPackage getPackage() {
+ return CommonPackage.eINSTANCE;
+ }
+
+} //CommonFactoryImpl
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonPackageImpl.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonPackageImpl.java
new file mode 100644
index 0000000..3f1e9fd
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/CommonPackageImpl.java
@@ -0,0 +1,1040 @@
+
+/*-
+ * ============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.analytics.cdap.common.impl;
+
+import org.openecomp.dcae.analytics.cdap.common.CommonFactory;
+import org.openecomp.dcae.analytics.cdap.common.CommonPackage;
+import org.openecomp.dcae.analytics.cdap.common.TcaConfiguration;
+import org.openecomp.dcae.analytics.cdap.common.TcaMetrics;
+import org.openecomp.dcae.analytics.cdap.common.TcaThreshold;
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.dcae.controller.service.cdap.CdapPackage;
+import org.openecomp.ncomp.core.CorePackage;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+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 CommonPackageImpl extends EPackageImpl implements CommonPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tcaConfigurationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tcaMetricsEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tcaThresholdEClass = 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.analytics.cdap.common.CommonPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private CommonPackageImpl() {
+ super(eNS_URI, CommonFactory.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 CommonPackage#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 CommonPackage init() {
+ if (isInited) return (CommonPackage)EPackage.Registry.INSTANCE.getEPackage(CommonPackage.eNS_URI);
+
+ // Obtain or create and register package
+ CommonPackageImpl theCommonPackage = (CommonPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CommonPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CommonPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CdapPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theCommonPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theCommonPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theCommonPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(CommonPackage.eNS_URI, theCommonPackage);
+ return theCommonPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTcaConfiguration() {
+ return tcaConfigurationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_Domain() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberHostName() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberHostPort() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberTopicName() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberProtocol() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberUserName() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberUserPassword() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberContentType() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberConsumerId() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberConsumerGroup() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberTimeoutMS() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberMessageLimit() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_SubscriberPollingInterval() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(12);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherHostName() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(13);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherHostPort() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(14);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherTopicName() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(15);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherProtocol() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(16);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherUserName() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(17);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherUserPassword() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(18);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherContentType() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(19);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherMaxBatchSize() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(20);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherMaxRecoveryQueueSize() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(21);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaConfiguration_PublisherPollingInterval() {
+ return (EAttribute)tcaConfigurationEClass.getEStructuralFeatures().get(22);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTcaConfiguration_MetricsPerFunctionalRole() {
+ return (EReference)tcaConfigurationEClass.getEStructuralFeatures().get(23);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTcaMetrics() {
+ return tcaMetricsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaMetrics_FunctionalRole() {
+ return (EAttribute)tcaMetricsEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTcaMetrics_Thresholds() {
+ return (EReference)tcaMetricsEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTcaThreshold() {
+ return tcaThresholdEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaThreshold_ClosedLoopControlName() {
+ return (EAttribute)tcaThresholdEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaThreshold_Version() {
+ return (EAttribute)tcaThresholdEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaThreshold_FieldPath() {
+ return (EAttribute)tcaThresholdEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaThreshold_ThresholdValue() {
+ return (EAttribute)tcaThresholdEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaThreshold_Direction() {
+ return (EAttribute)tcaThresholdEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTcaThreshold_Severity() {
+ return (EAttribute)tcaThresholdEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CommonFactory getCommonFactory() {
+ return (CommonFactory)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
+ tcaConfigurationEClass = createEClass(TCA_CONFIGURATION);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__DOMAIN);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_USER_NAME);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_HOST_NAME);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_HOST_PORT);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_PROTOCOL);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_USER_NAME);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE);
+ createEAttribute(tcaConfigurationEClass, TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL);
+ createEReference(tcaConfigurationEClass, TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE);
+
+ tcaMetricsEClass = createEClass(TCA_METRICS);
+ createEAttribute(tcaMetricsEClass, TCA_METRICS__FUNCTIONAL_ROLE);
+ createEReference(tcaMetricsEClass, TCA_METRICS__THRESHOLDS);
+
+ tcaThresholdEClass = createEClass(TCA_THRESHOLD);
+ createEAttribute(tcaThresholdEClass, TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME);
+ createEAttribute(tcaThresholdEClass, TCA_THRESHOLD__VERSION);
+ createEAttribute(tcaThresholdEClass, TCA_THRESHOLD__FIELD_PATH);
+ createEAttribute(tcaThresholdEClass, TCA_THRESHOLD__THRESHOLD_VALUE);
+ createEAttribute(tcaThresholdEClass, TCA_THRESHOLD__DIRECTION);
+ createEAttribute(tcaThresholdEClass, TCA_THRESHOLD__SEVERITY);
+ }
+
+ /**
+ * <!-- 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
+ CdapPackage theCdapPackage = (CdapPackage)EPackage.Registry.INSTANCE.getEPackage(CdapPackage.eNS_URI);
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+ CorePackage theCorePackage = (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ ServicePackage theServicePackage = (ServicePackage)EPackage.Registry.INSTANCE.getEPackage(ServicePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ tcaConfigurationEClass.getESuperTypes().add(theCdapPackage.getCdapServiceInstanceConfiguration());
+ tcaMetricsEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+ tcaMetricsEClass.getESuperTypes().add(theServicePackage.getDcaePolicyEntity());
+ tcaThresholdEClass.getESuperTypes().add(theCorePackage.getNamedEntity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(tcaConfigurationEClass, TcaConfiguration.class, "TcaConfiguration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTcaConfiguration_Domain(), theEcorePackage.getEString(), "domain", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberHostName(), theEcorePackage.getEString(), "subscriberHostName", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberHostPort(), theEcorePackage.getEString(), "subscriberHostPort", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberTopicName(), theEcorePackage.getEString(), "subscriberTopicName", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberProtocol(), theEcorePackage.getEString(), "subscriberProtocol", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberUserName(), theEcorePackage.getEString(), "subscriberUserName", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberUserPassword(), theEcorePackage.getEString(), "subscriberUserPassword", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberContentType(), theEcorePackage.getEString(), "subscriberContentType", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberConsumerId(), theEcorePackage.getEString(), "subscriberConsumerId", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberConsumerGroup(), theEcorePackage.getEString(), "subscriberConsumerGroup", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberTimeoutMS(), theEcorePackage.getEString(), "subscriberTimeoutMS", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberMessageLimit(), theEcorePackage.getEString(), "subscriberMessageLimit", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_SubscriberPollingInterval(), theEcorePackage.getEString(), "subscriberPollingInterval", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherHostName(), theEcorePackage.getEString(), "publisherHostName", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherHostPort(), theEcorePackage.getEString(), "publisherHostPort", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherTopicName(), theEcorePackage.getEString(), "publisherTopicName", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherProtocol(), theEcorePackage.getEString(), "publisherProtocol", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherUserName(), theEcorePackage.getEString(), "publisherUserName", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherUserPassword(), theEcorePackage.getEString(), "publisherUserPassword", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherContentType(), theEcorePackage.getEString(), "publisherContentType", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherMaxBatchSize(), theEcorePackage.getEString(), "publisherMaxBatchSize", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherMaxRecoveryQueueSize(), theEcorePackage.getEString(), "publisherMaxRecoveryQueueSize", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaConfiguration_PublisherPollingInterval(), theEcorePackage.getEString(), "publisherPollingInterval", null, 0, 1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTcaConfiguration_MetricsPerFunctionalRole(), this.getTcaMetrics(), null, "metricsPerFunctionalRole", null, 0, -1, TcaConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(tcaMetricsEClass, TcaMetrics.class, "TcaMetrics", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTcaMetrics_FunctionalRole(), theEcorePackage.getEString(), "functionalRole", null, 0, 1, TcaMetrics.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTcaMetrics_Thresholds(), this.getTcaThreshold(), null, "thresholds", null, 0, -1, TcaMetrics.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(tcaThresholdEClass, TcaThreshold.class, "TcaThreshold", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTcaThreshold_ClosedLoopControlName(), theEcorePackage.getEString(), "closedLoopControlName", null, 0, 1, TcaThreshold.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaThreshold_Version(), theEcorePackage.getEString(), "version", null, 0, 1, TcaThreshold.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaThreshold_FieldPath(), theEcorePackage.getEString(), "fieldPath", null, 0, 1, TcaThreshold.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaThreshold_ThresholdValue(), theEcorePackage.getEIntegerObject(), "thresholdValue", null, 0, 1, TcaThreshold.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaThreshold_Direction(), theEcorePackage.getEString(), "direction", null, 0, 1, TcaThreshold.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTcaThreshold_Severity(), theEcorePackage.getEString(), "severity", null, 0, 1, TcaThreshold.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();
+ // http://openecomp.org/cdap
+ createCdapAnnotations();
+ // http://openecomp.org/policy
+ createPolicyAnnotations();
+ }
+
+ /**
+ * 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[] {
+ "cdap", "http://openecomp.org/cdap",
+ "ecomp", "http://openecomp.org",
+ "policy", "http://openecomp.org/policy"
+ });
+ }
+
+ /**
+ * Initializes the annotations for <b>http://openecomp.org/cdap</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createCdapAnnotations() {
+ String source = "http://openecomp.org/cdap";
+ addAnnotation
+ (getTcaConfiguration_Domain(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:domain"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberHostName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberHostName"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberHostPort(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberHostPort"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberTopicName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberTopicName"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberProtocol(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberProtocol"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberUserName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberUserName"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberUserPassword(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberUserPassword"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberContentType(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberContentType"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberConsumerId(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberConsumerId"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberConsumerGroup(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberConsumerGroup"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberTimeoutMS(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberTimeoutMS"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberMessageLimit(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberMessageLimit"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberPollingInterval(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:subscriberPollingInterval"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherHostName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherHostName"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherHostPort(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherHostPort"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherTopicName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherTopicName"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherProtocol(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherProtocol"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherUserName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherUserName"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherUserPassword(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherUserPassword"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherContentType(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherContentType"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherMaxBatchSize(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherMaxBatchSize"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherMaxRecoveryQueueSize(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherMaxRecoveryQueueSize"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherPollingInterval(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:publisherPollingInterval"
+ });
+ addAnnotation
+ (getTcaMetrics_FunctionalRole(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.functionalRole"
+ });
+ addAnnotation
+ (getTcaThreshold_ClosedLoopControlName(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.closedLoopControlName"
+ });
+ addAnnotation
+ (getTcaThreshold_Version(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.version"
+ });
+ addAnnotation
+ (getTcaThreshold_FieldPath(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.fieldPath"
+ });
+ addAnnotation
+ (getTcaThreshold_ThresholdValue(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.thresholdValue"
+ });
+ addAnnotation
+ (getTcaThreshold_Direction(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.direction"
+ });
+ addAnnotation
+ (getTcaThreshold_Severity(),
+ source,
+ new String[] {
+ "destination", "namespace-prefs:cdap-tca:${path}.policy.severity"
+ });
+ }
+
+ /**
+ * 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
+ (getTcaConfiguration_Domain(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberHostName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberHostPort(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberTopicName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberProtocol(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberUserName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberUserPassword(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberContentType(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberConsumerId(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberConsumerGroup(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberTimeoutMS(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberMessageLimit(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_SubscriberPollingInterval(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherHostName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherHostPort(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherTopicName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherProtocol(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherUserName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherUserPassword(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherContentType(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherMaxBatchSize(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherMaxRecoveryQueueSize(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaConfiguration_PublisherPollingInterval(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (tcaMetricsEClass,
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaMetrics_FunctionalRole(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaMetrics_Thresholds(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (tcaThresholdEClass,
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaThreshold_ClosedLoopControlName(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaThreshold_Version(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaThreshold_FieldPath(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaThreshold_ThresholdValue(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaThreshold_Direction(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ addAnnotation
+ (getTcaThreshold_Severity(),
+ source,
+ new String[] {
+ "type", "configuration"
+ });
+ }
+
+ /**
+ * Initializes the annotations for <b>http://openecomp.org/policy</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createPolicyAnnotations() {
+ String source = "http://openecomp.org/policy";
+ addAnnotation
+ (tcaMetricsEClass,
+ source,
+ new String[] {
+ "policyTemplate", "dcae-microservice",
+ "dcaeService", "tca"
+ });
+ }
+
+} //CommonPackageImpl
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaConfigurationImpl.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaConfigurationImpl.java
new file mode 100644
index 0000000..208f0f9
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaConfigurationImpl.java
@@ -0,0 +1,1432 @@
+
+/*-
+ * ============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.analytics.cdap.common.impl;
+
+import org.openecomp.dcae.analytics.cdap.common.CommonPackage;
+import org.openecomp.dcae.analytics.cdap.common.TcaConfiguration;
+import org.openecomp.dcae.analytics.cdap.common.TcaMetrics;
+
+import org.openecomp.dcae.controller.service.cdap.impl.CdapServiceInstanceConfigurationImpl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Tca Configuration</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getDomain <em>Domain</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberHostName <em>Subscriber Host Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberHostPort <em>Subscriber Host Port</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberTopicName <em>Subscriber Topic Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberProtocol <em>Subscriber Protocol</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberUserName <em>Subscriber User Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberUserPassword <em>Subscriber User Password</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberContentType <em>Subscriber Content Type</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberConsumerId <em>Subscriber Consumer Id</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberConsumerGroup <em>Subscriber Consumer Group</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberTimeoutMS <em>Subscriber Timeout MS</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberMessageLimit <em>Subscriber Message Limit</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getSubscriberPollingInterval <em>Subscriber Polling Interval</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherHostName <em>Publisher Host Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherHostPort <em>Publisher Host Port</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherTopicName <em>Publisher Topic Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherProtocol <em>Publisher Protocol</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherUserName <em>Publisher User Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherUserPassword <em>Publisher User Password</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherContentType <em>Publisher Content Type</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherMaxBatchSize <em>Publisher Max Batch Size</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherMaxRecoveryQueueSize <em>Publisher Max Recovery Queue Size</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getPublisherPollingInterval <em>Publisher Polling Interval</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaConfigurationImpl#getMetricsPerFunctionalRole <em>Metrics Per Functional Role</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TcaConfigurationImpl extends CdapServiceInstanceConfigurationImpl implements TcaConfiguration {
+ /**
+ * The default value of the '{@link #getDomain() <em>Domain</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDomain()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOMAIN_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDomain() <em>Domain</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDomain()
+ * @generated
+ * @ordered
+ */
+ protected String domain = DOMAIN_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberHostName() <em>Subscriber Host Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberHostName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_HOST_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberHostName() <em>Subscriber Host Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberHostName()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberHostName = SUBSCRIBER_HOST_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberHostPort() <em>Subscriber Host Port</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberHostPort()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_HOST_PORT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberHostPort() <em>Subscriber Host Port</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberHostPort()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberHostPort = SUBSCRIBER_HOST_PORT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberTopicName() <em>Subscriber Topic Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberTopicName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_TOPIC_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberTopicName() <em>Subscriber Topic Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberTopicName()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberTopicName = SUBSCRIBER_TOPIC_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberProtocol() <em>Subscriber Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberProtocol()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_PROTOCOL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberProtocol() <em>Subscriber Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberProtocol()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberProtocol = SUBSCRIBER_PROTOCOL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberUserName() <em>Subscriber User Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberUserName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_USER_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberUserName() <em>Subscriber User Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberUserName()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberUserName = SUBSCRIBER_USER_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberUserPassword() <em>Subscriber User Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberUserPassword()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_USER_PASSWORD_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberUserPassword() <em>Subscriber User Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberUserPassword()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberUserPassword = SUBSCRIBER_USER_PASSWORD_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberContentType() <em>Subscriber Content Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberContentType()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_CONTENT_TYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberContentType() <em>Subscriber Content Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberContentType()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberContentType = SUBSCRIBER_CONTENT_TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberConsumerId() <em>Subscriber Consumer Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberConsumerId()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_CONSUMER_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberConsumerId() <em>Subscriber Consumer Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberConsumerId()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberConsumerId = SUBSCRIBER_CONSUMER_ID_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberConsumerGroup() <em>Subscriber Consumer Group</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberConsumerGroup()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_CONSUMER_GROUP_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberConsumerGroup() <em>Subscriber Consumer Group</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberConsumerGroup()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberConsumerGroup = SUBSCRIBER_CONSUMER_GROUP_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberTimeoutMS() <em>Subscriber Timeout MS</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberTimeoutMS()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_TIMEOUT_MS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberTimeoutMS() <em>Subscriber Timeout MS</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberTimeoutMS()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberTimeoutMS = SUBSCRIBER_TIMEOUT_MS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberMessageLimit() <em>Subscriber Message Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberMessageLimit()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_MESSAGE_LIMIT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberMessageLimit() <em>Subscriber Message Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberMessageLimit()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberMessageLimit = SUBSCRIBER_MESSAGE_LIMIT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubscriberPollingInterval() <em>Subscriber Polling Interval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberPollingInterval()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBSCRIBER_POLLING_INTERVAL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubscriberPollingInterval() <em>Subscriber Polling Interval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubscriberPollingInterval()
+ * @generated
+ * @ordered
+ */
+ protected String subscriberPollingInterval = SUBSCRIBER_POLLING_INTERVAL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherHostName() <em>Publisher Host Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherHostName()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_HOST_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherHostName() <em>Publisher Host Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherHostName()
+ * @generated
+ * @ordered
+ */
+ protected String publisherHostName = PUBLISHER_HOST_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherHostPort() <em>Publisher Host Port</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherHostPort()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_HOST_PORT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherHostPort() <em>Publisher Host Port</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherHostPort()
+ * @generated
+ * @ordered
+ */
+ protected String publisherHostPort = PUBLISHER_HOST_PORT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherTopicName() <em>Publisher Topic Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherTopicName()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_TOPIC_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherTopicName() <em>Publisher Topic Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherTopicName()
+ * @generated
+ * @ordered
+ */
+ protected String publisherTopicName = PUBLISHER_TOPIC_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherProtocol() <em>Publisher Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherProtocol()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_PROTOCOL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherProtocol() <em>Publisher Protocol</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherProtocol()
+ * @generated
+ * @ordered
+ */
+ protected String publisherProtocol = PUBLISHER_PROTOCOL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherUserName() <em>Publisher User Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherUserName()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_USER_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherUserName() <em>Publisher User Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherUserName()
+ * @generated
+ * @ordered
+ */
+ protected String publisherUserName = PUBLISHER_USER_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherUserPassword() <em>Publisher User Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherUserPassword()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_USER_PASSWORD_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherUserPassword() <em>Publisher User Password</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherUserPassword()
+ * @generated
+ * @ordered
+ */
+ protected String publisherUserPassword = PUBLISHER_USER_PASSWORD_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherContentType() <em>Publisher Content Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherContentType()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_CONTENT_TYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherContentType() <em>Publisher Content Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherContentType()
+ * @generated
+ * @ordered
+ */
+ protected String publisherContentType = PUBLISHER_CONTENT_TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherMaxBatchSize() <em>Publisher Max Batch Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherMaxBatchSize()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_MAX_BATCH_SIZE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherMaxBatchSize() <em>Publisher Max Batch Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherMaxBatchSize()
+ * @generated
+ * @ordered
+ */
+ protected String publisherMaxBatchSize = PUBLISHER_MAX_BATCH_SIZE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherMaxRecoveryQueueSize() <em>Publisher Max Recovery Queue Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherMaxRecoveryQueueSize()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_MAX_RECOVERY_QUEUE_SIZE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherMaxRecoveryQueueSize() <em>Publisher Max Recovery Queue Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherMaxRecoveryQueueSize()
+ * @generated
+ * @ordered
+ */
+ protected String publisherMaxRecoveryQueueSize = PUBLISHER_MAX_RECOVERY_QUEUE_SIZE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPublisherPollingInterval() <em>Publisher Polling Interval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherPollingInterval()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLISHER_POLLING_INTERVAL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublisherPollingInterval() <em>Publisher Polling Interval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublisherPollingInterval()
+ * @generated
+ * @ordered
+ */
+ protected String publisherPollingInterval = PUBLISHER_POLLING_INTERVAL_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getMetricsPerFunctionalRole() <em>Metrics Per Functional Role</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMetricsPerFunctionalRole()
+ * @generated
+ * @ordered
+ */
+ protected EList<TcaMetrics> metricsPerFunctionalRole;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TcaConfigurationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CommonPackage.Literals.TCA_CONFIGURATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDomain() {
+ return domain;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDomain(String newDomain) {
+ String oldDomain = domain;
+ domain = newDomain;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__DOMAIN, oldDomain, domain));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberHostName() {
+ return subscriberHostName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberHostName(String newSubscriberHostName) {
+ String oldSubscriberHostName = subscriberHostName;
+ subscriberHostName = newSubscriberHostName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME, oldSubscriberHostName, subscriberHostName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberHostPort() {
+ return subscriberHostPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberHostPort(String newSubscriberHostPort) {
+ String oldSubscriberHostPort = subscriberHostPort;
+ subscriberHostPort = newSubscriberHostPort;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT, oldSubscriberHostPort, subscriberHostPort));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberTopicName() {
+ return subscriberTopicName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberTopicName(String newSubscriberTopicName) {
+ String oldSubscriberTopicName = subscriberTopicName;
+ subscriberTopicName = newSubscriberTopicName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME, oldSubscriberTopicName, subscriberTopicName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberProtocol() {
+ return subscriberProtocol;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberProtocol(String newSubscriberProtocol) {
+ String oldSubscriberProtocol = subscriberProtocol;
+ subscriberProtocol = newSubscriberProtocol;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL, oldSubscriberProtocol, subscriberProtocol));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberUserName() {
+ return subscriberUserName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberUserName(String newSubscriberUserName) {
+ String oldSubscriberUserName = subscriberUserName;
+ subscriberUserName = newSubscriberUserName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_NAME, oldSubscriberUserName, subscriberUserName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberUserPassword() {
+ return subscriberUserPassword;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberUserPassword(String newSubscriberUserPassword) {
+ String oldSubscriberUserPassword = subscriberUserPassword;
+ subscriberUserPassword = newSubscriberUserPassword;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD, oldSubscriberUserPassword, subscriberUserPassword));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberContentType() {
+ return subscriberContentType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberContentType(String newSubscriberContentType) {
+ String oldSubscriberContentType = subscriberContentType;
+ subscriberContentType = newSubscriberContentType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE, oldSubscriberContentType, subscriberContentType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberConsumerId() {
+ return subscriberConsumerId;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberConsumerId(String newSubscriberConsumerId) {
+ String oldSubscriberConsumerId = subscriberConsumerId;
+ subscriberConsumerId = newSubscriberConsumerId;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID, oldSubscriberConsumerId, subscriberConsumerId));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberConsumerGroup() {
+ return subscriberConsumerGroup;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberConsumerGroup(String newSubscriberConsumerGroup) {
+ String oldSubscriberConsumerGroup = subscriberConsumerGroup;
+ subscriberConsumerGroup = newSubscriberConsumerGroup;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP, oldSubscriberConsumerGroup, subscriberConsumerGroup));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberTimeoutMS() {
+ return subscriberTimeoutMS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberTimeoutMS(String newSubscriberTimeoutMS) {
+ String oldSubscriberTimeoutMS = subscriberTimeoutMS;
+ subscriberTimeoutMS = newSubscriberTimeoutMS;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS, oldSubscriberTimeoutMS, subscriberTimeoutMS));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberMessageLimit() {
+ return subscriberMessageLimit;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberMessageLimit(String newSubscriberMessageLimit) {
+ String oldSubscriberMessageLimit = subscriberMessageLimit;
+ subscriberMessageLimit = newSubscriberMessageLimit;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT, oldSubscriberMessageLimit, subscriberMessageLimit));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubscriberPollingInterval() {
+ return subscriberPollingInterval;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubscriberPollingInterval(String newSubscriberPollingInterval) {
+ String oldSubscriberPollingInterval = subscriberPollingInterval;
+ subscriberPollingInterval = newSubscriberPollingInterval;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL, oldSubscriberPollingInterval, subscriberPollingInterval));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherHostName() {
+ return publisherHostName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherHostName(String newPublisherHostName) {
+ String oldPublisherHostName = publisherHostName;
+ publisherHostName = newPublisherHostName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_NAME, oldPublisherHostName, publisherHostName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherHostPort() {
+ return publisherHostPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherHostPort(String newPublisherHostPort) {
+ String oldPublisherHostPort = publisherHostPort;
+ publisherHostPort = newPublisherHostPort;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_PORT, oldPublisherHostPort, publisherHostPort));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherTopicName() {
+ return publisherTopicName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherTopicName(String newPublisherTopicName) {
+ String oldPublisherTopicName = publisherTopicName;
+ publisherTopicName = newPublisherTopicName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME, oldPublisherTopicName, publisherTopicName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherProtocol() {
+ return publisherProtocol;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherProtocol(String newPublisherProtocol) {
+ String oldPublisherProtocol = publisherProtocol;
+ publisherProtocol = newPublisherProtocol;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_PROTOCOL, oldPublisherProtocol, publisherProtocol));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherUserName() {
+ return publisherUserName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherUserName(String newPublisherUserName) {
+ String oldPublisherUserName = publisherUserName;
+ publisherUserName = newPublisherUserName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_NAME, oldPublisherUserName, publisherUserName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherUserPassword() {
+ return publisherUserPassword;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherUserPassword(String newPublisherUserPassword) {
+ String oldPublisherUserPassword = publisherUserPassword;
+ publisherUserPassword = newPublisherUserPassword;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD, oldPublisherUserPassword, publisherUserPassword));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherContentType() {
+ return publisherContentType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherContentType(String newPublisherContentType) {
+ String oldPublisherContentType = publisherContentType;
+ publisherContentType = newPublisherContentType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE, oldPublisherContentType, publisherContentType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherMaxBatchSize() {
+ return publisherMaxBatchSize;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherMaxBatchSize(String newPublisherMaxBatchSize) {
+ String oldPublisherMaxBatchSize = publisherMaxBatchSize;
+ publisherMaxBatchSize = newPublisherMaxBatchSize;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE, oldPublisherMaxBatchSize, publisherMaxBatchSize));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherMaxRecoveryQueueSize() {
+ return publisherMaxRecoveryQueueSize;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherMaxRecoveryQueueSize(String newPublisherMaxRecoveryQueueSize) {
+ String oldPublisherMaxRecoveryQueueSize = publisherMaxRecoveryQueueSize;
+ publisherMaxRecoveryQueueSize = newPublisherMaxRecoveryQueueSize;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE, oldPublisherMaxRecoveryQueueSize, publisherMaxRecoveryQueueSize));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublisherPollingInterval() {
+ return publisherPollingInterval;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublisherPollingInterval(String newPublisherPollingInterval) {
+ String oldPublisherPollingInterval = publisherPollingInterval;
+ publisherPollingInterval = newPublisherPollingInterval;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL, oldPublisherPollingInterval, publisherPollingInterval));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<TcaMetrics> getMetricsPerFunctionalRole() {
+ if (metricsPerFunctionalRole == null) {
+ metricsPerFunctionalRole = new EObjectContainmentEList<TcaMetrics>(TcaMetrics.class, this, CommonPackage.TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE);
+ }
+ return metricsPerFunctionalRole;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case CommonPackage.TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE:
+ return ((InternalEList<?>)getMetricsPerFunctionalRole()).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 CommonPackage.TCA_CONFIGURATION__DOMAIN:
+ return getDomain();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME:
+ return getSubscriberHostName();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT:
+ return getSubscriberHostPort();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME:
+ return getSubscriberTopicName();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL:
+ return getSubscriberProtocol();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_NAME:
+ return getSubscriberUserName();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD:
+ return getSubscriberUserPassword();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE:
+ return getSubscriberContentType();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID:
+ return getSubscriberConsumerId();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP:
+ return getSubscriberConsumerGroup();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS:
+ return getSubscriberTimeoutMS();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT:
+ return getSubscriberMessageLimit();
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL:
+ return getSubscriberPollingInterval();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_NAME:
+ return getPublisherHostName();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_PORT:
+ return getPublisherHostPort();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME:
+ return getPublisherTopicName();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_PROTOCOL:
+ return getPublisherProtocol();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_NAME:
+ return getPublisherUserName();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD:
+ return getPublisherUserPassword();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE:
+ return getPublisherContentType();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE:
+ return getPublisherMaxBatchSize();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE:
+ return getPublisherMaxRecoveryQueueSize();
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL:
+ return getPublisherPollingInterval();
+ case CommonPackage.TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE:
+ return getMetricsPerFunctionalRole();
+ }
+ 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 CommonPackage.TCA_CONFIGURATION__DOMAIN:
+ setDomain((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME:
+ setSubscriberHostName((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT:
+ setSubscriberHostPort((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME:
+ setSubscriberTopicName((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL:
+ setSubscriberProtocol((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_NAME:
+ setSubscriberUserName((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD:
+ setSubscriberUserPassword((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE:
+ setSubscriberContentType((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID:
+ setSubscriberConsumerId((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP:
+ setSubscriberConsumerGroup((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS:
+ setSubscriberTimeoutMS((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT:
+ setSubscriberMessageLimit((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL:
+ setSubscriberPollingInterval((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_NAME:
+ setPublisherHostName((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_PORT:
+ setPublisherHostPort((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME:
+ setPublisherTopicName((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_PROTOCOL:
+ setPublisherProtocol((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_NAME:
+ setPublisherUserName((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD:
+ setPublisherUserPassword((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE:
+ setPublisherContentType((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE:
+ setPublisherMaxBatchSize((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE:
+ setPublisherMaxRecoveryQueueSize((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL:
+ setPublisherPollingInterval((String)newValue);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE:
+ getMetricsPerFunctionalRole().clear();
+ getMetricsPerFunctionalRole().addAll((Collection<? extends TcaMetrics>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CommonPackage.TCA_CONFIGURATION__DOMAIN:
+ setDomain(DOMAIN_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME:
+ setSubscriberHostName(SUBSCRIBER_HOST_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT:
+ setSubscriberHostPort(SUBSCRIBER_HOST_PORT_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME:
+ setSubscriberTopicName(SUBSCRIBER_TOPIC_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL:
+ setSubscriberProtocol(SUBSCRIBER_PROTOCOL_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_NAME:
+ setSubscriberUserName(SUBSCRIBER_USER_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD:
+ setSubscriberUserPassword(SUBSCRIBER_USER_PASSWORD_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE:
+ setSubscriberContentType(SUBSCRIBER_CONTENT_TYPE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID:
+ setSubscriberConsumerId(SUBSCRIBER_CONSUMER_ID_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP:
+ setSubscriberConsumerGroup(SUBSCRIBER_CONSUMER_GROUP_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS:
+ setSubscriberTimeoutMS(SUBSCRIBER_TIMEOUT_MS_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT:
+ setSubscriberMessageLimit(SUBSCRIBER_MESSAGE_LIMIT_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL:
+ setSubscriberPollingInterval(SUBSCRIBER_POLLING_INTERVAL_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_NAME:
+ setPublisherHostName(PUBLISHER_HOST_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_PORT:
+ setPublisherHostPort(PUBLISHER_HOST_PORT_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME:
+ setPublisherTopicName(PUBLISHER_TOPIC_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_PROTOCOL:
+ setPublisherProtocol(PUBLISHER_PROTOCOL_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_NAME:
+ setPublisherUserName(PUBLISHER_USER_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD:
+ setPublisherUserPassword(PUBLISHER_USER_PASSWORD_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE:
+ setPublisherContentType(PUBLISHER_CONTENT_TYPE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE:
+ setPublisherMaxBatchSize(PUBLISHER_MAX_BATCH_SIZE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE:
+ setPublisherMaxRecoveryQueueSize(PUBLISHER_MAX_RECOVERY_QUEUE_SIZE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL:
+ setPublisherPollingInterval(PUBLISHER_POLLING_INTERVAL_EDEFAULT);
+ return;
+ case CommonPackage.TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE:
+ getMetricsPerFunctionalRole().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CommonPackage.TCA_CONFIGURATION__DOMAIN:
+ return DOMAIN_EDEFAULT == null ? domain != null : !DOMAIN_EDEFAULT.equals(domain);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_NAME:
+ return SUBSCRIBER_HOST_NAME_EDEFAULT == null ? subscriberHostName != null : !SUBSCRIBER_HOST_NAME_EDEFAULT.equals(subscriberHostName);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_HOST_PORT:
+ return SUBSCRIBER_HOST_PORT_EDEFAULT == null ? subscriberHostPort != null : !SUBSCRIBER_HOST_PORT_EDEFAULT.equals(subscriberHostPort);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TOPIC_NAME:
+ return SUBSCRIBER_TOPIC_NAME_EDEFAULT == null ? subscriberTopicName != null : !SUBSCRIBER_TOPIC_NAME_EDEFAULT.equals(subscriberTopicName);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_PROTOCOL:
+ return SUBSCRIBER_PROTOCOL_EDEFAULT == null ? subscriberProtocol != null : !SUBSCRIBER_PROTOCOL_EDEFAULT.equals(subscriberProtocol);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_NAME:
+ return SUBSCRIBER_USER_NAME_EDEFAULT == null ? subscriberUserName != null : !SUBSCRIBER_USER_NAME_EDEFAULT.equals(subscriberUserName);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_USER_PASSWORD:
+ return SUBSCRIBER_USER_PASSWORD_EDEFAULT == null ? subscriberUserPassword != null : !SUBSCRIBER_USER_PASSWORD_EDEFAULT.equals(subscriberUserPassword);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONTENT_TYPE:
+ return SUBSCRIBER_CONTENT_TYPE_EDEFAULT == null ? subscriberContentType != null : !SUBSCRIBER_CONTENT_TYPE_EDEFAULT.equals(subscriberContentType);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_ID:
+ return SUBSCRIBER_CONSUMER_ID_EDEFAULT == null ? subscriberConsumerId != null : !SUBSCRIBER_CONSUMER_ID_EDEFAULT.equals(subscriberConsumerId);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_CONSUMER_GROUP:
+ return SUBSCRIBER_CONSUMER_GROUP_EDEFAULT == null ? subscriberConsumerGroup != null : !SUBSCRIBER_CONSUMER_GROUP_EDEFAULT.equals(subscriberConsumerGroup);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_TIMEOUT_MS:
+ return SUBSCRIBER_TIMEOUT_MS_EDEFAULT == null ? subscriberTimeoutMS != null : !SUBSCRIBER_TIMEOUT_MS_EDEFAULT.equals(subscriberTimeoutMS);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_MESSAGE_LIMIT:
+ return SUBSCRIBER_MESSAGE_LIMIT_EDEFAULT == null ? subscriberMessageLimit != null : !SUBSCRIBER_MESSAGE_LIMIT_EDEFAULT.equals(subscriberMessageLimit);
+ case CommonPackage.TCA_CONFIGURATION__SUBSCRIBER_POLLING_INTERVAL:
+ return SUBSCRIBER_POLLING_INTERVAL_EDEFAULT == null ? subscriberPollingInterval != null : !SUBSCRIBER_POLLING_INTERVAL_EDEFAULT.equals(subscriberPollingInterval);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_NAME:
+ return PUBLISHER_HOST_NAME_EDEFAULT == null ? publisherHostName != null : !PUBLISHER_HOST_NAME_EDEFAULT.equals(publisherHostName);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_HOST_PORT:
+ return PUBLISHER_HOST_PORT_EDEFAULT == null ? publisherHostPort != null : !PUBLISHER_HOST_PORT_EDEFAULT.equals(publisherHostPort);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_TOPIC_NAME:
+ return PUBLISHER_TOPIC_NAME_EDEFAULT == null ? publisherTopicName != null : !PUBLISHER_TOPIC_NAME_EDEFAULT.equals(publisherTopicName);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_PROTOCOL:
+ return PUBLISHER_PROTOCOL_EDEFAULT == null ? publisherProtocol != null : !PUBLISHER_PROTOCOL_EDEFAULT.equals(publisherProtocol);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_NAME:
+ return PUBLISHER_USER_NAME_EDEFAULT == null ? publisherUserName != null : !PUBLISHER_USER_NAME_EDEFAULT.equals(publisherUserName);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_USER_PASSWORD:
+ return PUBLISHER_USER_PASSWORD_EDEFAULT == null ? publisherUserPassword != null : !PUBLISHER_USER_PASSWORD_EDEFAULT.equals(publisherUserPassword);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_CONTENT_TYPE:
+ return PUBLISHER_CONTENT_TYPE_EDEFAULT == null ? publisherContentType != null : !PUBLISHER_CONTENT_TYPE_EDEFAULT.equals(publisherContentType);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_BATCH_SIZE:
+ return PUBLISHER_MAX_BATCH_SIZE_EDEFAULT == null ? publisherMaxBatchSize != null : !PUBLISHER_MAX_BATCH_SIZE_EDEFAULT.equals(publisherMaxBatchSize);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_MAX_RECOVERY_QUEUE_SIZE:
+ return PUBLISHER_MAX_RECOVERY_QUEUE_SIZE_EDEFAULT == null ? publisherMaxRecoveryQueueSize != null : !PUBLISHER_MAX_RECOVERY_QUEUE_SIZE_EDEFAULT.equals(publisherMaxRecoveryQueueSize);
+ case CommonPackage.TCA_CONFIGURATION__PUBLISHER_POLLING_INTERVAL:
+ return PUBLISHER_POLLING_INTERVAL_EDEFAULT == null ? publisherPollingInterval != null : !PUBLISHER_POLLING_INTERVAL_EDEFAULT.equals(publisherPollingInterval);
+ case CommonPackage.TCA_CONFIGURATION__METRICS_PER_FUNCTIONAL_ROLE:
+ return metricsPerFunctionalRole != null && !metricsPerFunctionalRole.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (domain: ");
+ result.append(domain);
+ result.append(", subscriberHostName: ");
+ result.append(subscriberHostName);
+ result.append(", subscriberHostPort: ");
+ result.append(subscriberHostPort);
+ result.append(", subscriberTopicName: ");
+ result.append(subscriberTopicName);
+ result.append(", subscriberProtocol: ");
+ result.append(subscriberProtocol);
+ result.append(", subscriberUserName: ");
+ result.append(subscriberUserName);
+ result.append(", subscriberUserPassword: ");
+ result.append(subscriberUserPassword);
+ result.append(", subscriberContentType: ");
+ result.append(subscriberContentType);
+ result.append(", subscriberConsumerId: ");
+ result.append(subscriberConsumerId);
+ result.append(", subscriberConsumerGroup: ");
+ result.append(subscriberConsumerGroup);
+ result.append(", subscriberTimeoutMS: ");
+ result.append(subscriberTimeoutMS);
+ result.append(", subscriberMessageLimit: ");
+ result.append(subscriberMessageLimit);
+ result.append(", subscriberPollingInterval: ");
+ result.append(subscriberPollingInterval);
+ result.append(", publisherHostName: ");
+ result.append(publisherHostName);
+ result.append(", publisherHostPort: ");
+ result.append(publisherHostPort);
+ result.append(", publisherTopicName: ");
+ result.append(publisherTopicName);
+ result.append(", publisherProtocol: ");
+ result.append(publisherProtocol);
+ result.append(", publisherUserName: ");
+ result.append(publisherUserName);
+ result.append(", publisherUserPassword: ");
+ result.append(publisherUserPassword);
+ result.append(", publisherContentType: ");
+ result.append(publisherContentType);
+ result.append(", publisherMaxBatchSize: ");
+ result.append(publisherMaxBatchSize);
+ result.append(", publisherMaxRecoveryQueueSize: ");
+ result.append(publisherMaxRecoveryQueueSize);
+ result.append(", publisherPollingInterval: ");
+ result.append(publisherPollingInterval);
+ result.append(')');
+ return result.toString();
+ }
+
+} //TcaConfigurationImpl
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaMetricsImpl.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaMetricsImpl.java
new file mode 100644
index 0000000..5ad8173
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaMetricsImpl.java
@@ -0,0 +1,661 @@
+
+/*-
+ * ============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.analytics.cdap.common.impl;
+
+import org.openecomp.dcae.analytics.cdap.common.CommonPackage;
+import org.openecomp.dcae.analytics.cdap.common.TcaMetrics;
+import org.openecomp.dcae.analytics.cdap.common.TcaThreshold;
+import org.openecomp.dcae.controller.core.service.DcaePolicyEntity;
+import org.openecomp.dcae.controller.core.service.ServicePackage;
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+import java.util.Collection;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Tca Metrics</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyName <em>Policy Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyDescription <em>Policy Description</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyConfigName <em>Policy Config Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyTemplateVersion <em>Policy Template Version</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyVersion <em>Policy Version</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyPriority <em>Policy Priority</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getPolicyScope <em>Policy Scope</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getFunctionalRole <em>Functional Role</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaMetricsImpl#getThresholds <em>Thresholds</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TcaMetricsImpl extends NamedEntityImpl implements TcaMetrics {
+ /**
+ * The default value of the '{@link #getPolicyName() <em>Policy Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyName()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyName() <em>Policy Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyName()
+ * @generated
+ * @ordered
+ */
+ protected String policyName = POLICY_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolicyDescription() <em>Policy Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_DESCRIPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyDescription() <em>Policy Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyDescription()
+ * @generated
+ * @ordered
+ */
+ protected String policyDescription = POLICY_DESCRIPTION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolicyConfigName() <em>Policy Config Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyConfigName()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_CONFIG_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyConfigName() <em>Policy Config Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyConfigName()
+ * @generated
+ * @ordered
+ */
+ protected String policyConfigName = POLICY_CONFIG_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolicyTemplateVersion() <em>Policy Template Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyTemplateVersion()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_TEMPLATE_VERSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyTemplateVersion() <em>Policy Template Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyTemplateVersion()
+ * @generated
+ * @ordered
+ */
+ protected String policyTemplateVersion = POLICY_TEMPLATE_VERSION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolicyVersion() <em>Policy Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyVersion()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_VERSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyVersion() <em>Policy Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyVersion()
+ * @generated
+ * @ordered
+ */
+ protected String policyVersion = POLICY_VERSION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolicyPriority() <em>Policy Priority</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyPriority()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_PRIORITY_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyPriority() <em>Policy Priority</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyPriority()
+ * @generated
+ * @ordered
+ */
+ protected String policyPriority = POLICY_PRIORITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPolicyScope() <em>Policy Scope</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyScope()
+ * @generated
+ * @ordered
+ */
+ protected static final String POLICY_SCOPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPolicyScope() <em>Policy Scope</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPolicyScope()
+ * @generated
+ * @ordered
+ */
+ protected String policyScope = POLICY_SCOPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getFunctionalRole() <em>Functional Role</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFunctionalRole()
+ * @generated
+ * @ordered
+ */
+ protected static final String FUNCTIONAL_ROLE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFunctionalRole() <em>Functional Role</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFunctionalRole()
+ * @generated
+ * @ordered
+ */
+ protected String functionalRole = FUNCTIONAL_ROLE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getThresholds() <em>Thresholds</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getThresholds()
+ * @generated
+ * @ordered
+ */
+ protected EList<TcaThreshold> thresholds;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TcaMetricsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CommonPackage.Literals.TCA_METRICS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyName() {
+ return policyName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyName(String newPolicyName) {
+ String oldPolicyName = policyName;
+ policyName = newPolicyName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_NAME, oldPolicyName, policyName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyDescription() {
+ return policyDescription;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyDescription(String newPolicyDescription) {
+ String oldPolicyDescription = policyDescription;
+ policyDescription = newPolicyDescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_DESCRIPTION, oldPolicyDescription, policyDescription));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyConfigName() {
+ return policyConfigName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyConfigName(String newPolicyConfigName) {
+ String oldPolicyConfigName = policyConfigName;
+ policyConfigName = newPolicyConfigName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME, oldPolicyConfigName, policyConfigName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyTemplateVersion() {
+ return policyTemplateVersion;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyTemplateVersion(String newPolicyTemplateVersion) {
+ String oldPolicyTemplateVersion = policyTemplateVersion;
+ policyTemplateVersion = newPolicyTemplateVersion;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION, oldPolicyTemplateVersion, policyTemplateVersion));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyVersion() {
+ return policyVersion;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyVersion(String newPolicyVersion) {
+ String oldPolicyVersion = policyVersion;
+ policyVersion = newPolicyVersion;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_VERSION, oldPolicyVersion, policyVersion));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyPriority() {
+ return policyPriority;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyPriority(String newPolicyPriority) {
+ String oldPolicyPriority = policyPriority;
+ policyPriority = newPolicyPriority;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_PRIORITY, oldPolicyPriority, policyPriority));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPolicyScope() {
+ return policyScope;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPolicyScope(String newPolicyScope) {
+ String oldPolicyScope = policyScope;
+ policyScope = newPolicyScope;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__POLICY_SCOPE, oldPolicyScope, policyScope));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFunctionalRole() {
+ return functionalRole;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFunctionalRole(String newFunctionalRole) {
+ String oldFunctionalRole = functionalRole;
+ functionalRole = newFunctionalRole;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_METRICS__FUNCTIONAL_ROLE, oldFunctionalRole, functionalRole));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<TcaThreshold> getThresholds() {
+ if (thresholds == null) {
+ thresholds = new EObjectContainmentEList<TcaThreshold>(TcaThreshold.class, this, CommonPackage.TCA_METRICS__THRESHOLDS);
+ }
+ return thresholds;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case CommonPackage.TCA_METRICS__THRESHOLDS:
+ return ((InternalEList<?>)getThresholds()).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 CommonPackage.TCA_METRICS__POLICY_NAME:
+ return getPolicyName();
+ case CommonPackage.TCA_METRICS__POLICY_DESCRIPTION:
+ return getPolicyDescription();
+ case CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME:
+ return getPolicyConfigName();
+ case CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION:
+ return getPolicyTemplateVersion();
+ case CommonPackage.TCA_METRICS__POLICY_VERSION:
+ return getPolicyVersion();
+ case CommonPackage.TCA_METRICS__POLICY_PRIORITY:
+ return getPolicyPriority();
+ case CommonPackage.TCA_METRICS__POLICY_SCOPE:
+ return getPolicyScope();
+ case CommonPackage.TCA_METRICS__FUNCTIONAL_ROLE:
+ return getFunctionalRole();
+ case CommonPackage.TCA_METRICS__THRESHOLDS:
+ return getThresholds();
+ }
+ 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 CommonPackage.TCA_METRICS__POLICY_NAME:
+ setPolicyName((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_DESCRIPTION:
+ setPolicyDescription((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME:
+ setPolicyConfigName((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION:
+ setPolicyTemplateVersion((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_VERSION:
+ setPolicyVersion((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_PRIORITY:
+ setPolicyPriority((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_SCOPE:
+ setPolicyScope((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__FUNCTIONAL_ROLE:
+ setFunctionalRole((String)newValue);
+ return;
+ case CommonPackage.TCA_METRICS__THRESHOLDS:
+ getThresholds().clear();
+ getThresholds().addAll((Collection<? extends TcaThreshold>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CommonPackage.TCA_METRICS__POLICY_NAME:
+ setPolicyName(POLICY_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_DESCRIPTION:
+ setPolicyDescription(POLICY_DESCRIPTION_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME:
+ setPolicyConfigName(POLICY_CONFIG_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION:
+ setPolicyTemplateVersion(POLICY_TEMPLATE_VERSION_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_VERSION:
+ setPolicyVersion(POLICY_VERSION_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_PRIORITY:
+ setPolicyPriority(POLICY_PRIORITY_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__POLICY_SCOPE:
+ setPolicyScope(POLICY_SCOPE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__FUNCTIONAL_ROLE:
+ setFunctionalRole(FUNCTIONAL_ROLE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_METRICS__THRESHOLDS:
+ getThresholds().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CommonPackage.TCA_METRICS__POLICY_NAME:
+ return POLICY_NAME_EDEFAULT == null ? policyName != null : !POLICY_NAME_EDEFAULT.equals(policyName);
+ case CommonPackage.TCA_METRICS__POLICY_DESCRIPTION:
+ return POLICY_DESCRIPTION_EDEFAULT == null ? policyDescription != null : !POLICY_DESCRIPTION_EDEFAULT.equals(policyDescription);
+ case CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME:
+ return POLICY_CONFIG_NAME_EDEFAULT == null ? policyConfigName != null : !POLICY_CONFIG_NAME_EDEFAULT.equals(policyConfigName);
+ case CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION:
+ return POLICY_TEMPLATE_VERSION_EDEFAULT == null ? policyTemplateVersion != null : !POLICY_TEMPLATE_VERSION_EDEFAULT.equals(policyTemplateVersion);
+ case CommonPackage.TCA_METRICS__POLICY_VERSION:
+ return POLICY_VERSION_EDEFAULT == null ? policyVersion != null : !POLICY_VERSION_EDEFAULT.equals(policyVersion);
+ case CommonPackage.TCA_METRICS__POLICY_PRIORITY:
+ return POLICY_PRIORITY_EDEFAULT == null ? policyPriority != null : !POLICY_PRIORITY_EDEFAULT.equals(policyPriority);
+ case CommonPackage.TCA_METRICS__POLICY_SCOPE:
+ return POLICY_SCOPE_EDEFAULT == null ? policyScope != null : !POLICY_SCOPE_EDEFAULT.equals(policyScope);
+ case CommonPackage.TCA_METRICS__FUNCTIONAL_ROLE:
+ return FUNCTIONAL_ROLE_EDEFAULT == null ? functionalRole != null : !FUNCTIONAL_ROLE_EDEFAULT.equals(functionalRole);
+ case CommonPackage.TCA_METRICS__THRESHOLDS:
+ return thresholds != null && !thresholds.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DcaePolicyEntity.class) {
+ switch (derivedFeatureID) {
+ case CommonPackage.TCA_METRICS__POLICY_NAME: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_NAME;
+ case CommonPackage.TCA_METRICS__POLICY_DESCRIPTION: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_DESCRIPTION;
+ case CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_CONFIG_NAME;
+ case CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_TEMPLATE_VERSION;
+ case CommonPackage.TCA_METRICS__POLICY_VERSION: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_VERSION;
+ case CommonPackage.TCA_METRICS__POLICY_PRIORITY: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_PRIORITY;
+ case CommonPackage.TCA_METRICS__POLICY_SCOPE: return ServicePackage.DCAE_POLICY_ENTITY__POLICY_SCOPE;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DcaePolicyEntity.class) {
+ switch (baseFeatureID) {
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_NAME: return CommonPackage.TCA_METRICS__POLICY_NAME;
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_DESCRIPTION: return CommonPackage.TCA_METRICS__POLICY_DESCRIPTION;
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_CONFIG_NAME: return CommonPackage.TCA_METRICS__POLICY_CONFIG_NAME;
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_TEMPLATE_VERSION: return CommonPackage.TCA_METRICS__POLICY_TEMPLATE_VERSION;
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_VERSION: return CommonPackage.TCA_METRICS__POLICY_VERSION;
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_PRIORITY: return CommonPackage.TCA_METRICS__POLICY_PRIORITY;
+ case ServicePackage.DCAE_POLICY_ENTITY__POLICY_SCOPE: return CommonPackage.TCA_METRICS__POLICY_SCOPE;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (policyName: ");
+ result.append(policyName);
+ result.append(", policyDescription: ");
+ result.append(policyDescription);
+ result.append(", policyConfigName: ");
+ result.append(policyConfigName);
+ result.append(", policyTemplateVersion: ");
+ result.append(policyTemplateVersion);
+ result.append(", policyVersion: ");
+ result.append(policyVersion);
+ result.append(", policyPriority: ");
+ result.append(policyPriority);
+ result.append(", policyScope: ");
+ result.append(policyScope);
+ result.append(", functionalRole: ");
+ result.append(functionalRole);
+ result.append(')');
+ return result.toString();
+ }
+
+} //TcaMetricsImpl
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaThresholdImpl.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaThresholdImpl.java
new file mode 100644
index 0000000..7004af4
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/impl/TcaThresholdImpl.java
@@ -0,0 +1,451 @@
+
+/*-
+ * ============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.analytics.cdap.common.impl;
+
+import org.openecomp.dcae.analytics.cdap.common.CommonPackage;
+import org.openecomp.dcae.analytics.cdap.common.TcaThreshold;
+import org.openecomp.ncomp.core.impl.NamedEntityImpl;
+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>Tca Threshold</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl#getClosedLoopControlName <em>Closed Loop Control Name</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl#getVersion <em>Version</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl#getFieldPath <em>Field Path</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl#getThresholdValue <em>Threshold Value</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl#getDirection <em>Direction</em>}</li>
+ * <li>{@link org.openecomp.dcae.analytics.cdap.common.impl.TcaThresholdImpl#getSeverity <em>Severity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TcaThresholdImpl extends NamedEntityImpl implements TcaThreshold {
+ /**
+ * The default value of the '{@link #getClosedLoopControlName() <em>Closed Loop Control Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getClosedLoopControlName()
+ * @generated
+ * @ordered
+ */
+ protected static final String CLOSED_LOOP_CONTROL_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getClosedLoopControlName() <em>Closed Loop Control Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getClosedLoopControlName()
+ * @generated
+ * @ordered
+ */
+ protected String closedLoopControlName = CLOSED_LOOP_CONTROL_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVersion()
+ * @generated
+ * @ordered
+ */
+ protected static final String VERSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVersion()
+ * @generated
+ * @ordered
+ */
+ protected String version = VERSION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getFieldPath() <em>Field Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFieldPath()
+ * @generated
+ * @ordered
+ */
+ protected static final String FIELD_PATH_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFieldPath() <em>Field Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFieldPath()
+ * @generated
+ * @ordered
+ */
+ protected String fieldPath = FIELD_PATH_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getThresholdValue() <em>Threshold Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getThresholdValue()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer THRESHOLD_VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getThresholdValue() <em>Threshold Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getThresholdValue()
+ * @generated
+ * @ordered
+ */
+ protected Integer thresholdValue = THRESHOLD_VALUE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDirection()
+ * @generated
+ * @ordered
+ */
+ protected static final String DIRECTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDirection()
+ * @generated
+ * @ordered
+ */
+ protected String direction = DIRECTION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSeverity() <em>Severity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeverity()
+ * @generated
+ * @ordered
+ */
+ protected static final String SEVERITY_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSeverity() <em>Severity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeverity()
+ * @generated
+ * @ordered
+ */
+ protected String severity = SEVERITY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TcaThresholdImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CommonPackage.Literals.TCA_THRESHOLD;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getClosedLoopControlName() {
+ return closedLoopControlName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setClosedLoopControlName(String newClosedLoopControlName) {
+ String oldClosedLoopControlName = closedLoopControlName;
+ closedLoopControlName = newClosedLoopControlName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME, oldClosedLoopControlName, closedLoopControlName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVersion(String newVersion) {
+ String oldVersion = version;
+ version = newVersion;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_THRESHOLD__VERSION, oldVersion, version));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFieldPath() {
+ return fieldPath;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFieldPath(String newFieldPath) {
+ String oldFieldPath = fieldPath;
+ fieldPath = newFieldPath;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_THRESHOLD__FIELD_PATH, oldFieldPath, fieldPath));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getThresholdValue() {
+ return thresholdValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setThresholdValue(Integer newThresholdValue) {
+ Integer oldThresholdValue = thresholdValue;
+ thresholdValue = newThresholdValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_THRESHOLD__THRESHOLD_VALUE, oldThresholdValue, thresholdValue));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDirection() {
+ return direction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDirection(String newDirection) {
+ String oldDirection = direction;
+ direction = newDirection;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_THRESHOLD__DIRECTION, oldDirection, direction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSeverity() {
+ return severity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSeverity(String newSeverity) {
+ String oldSeverity = severity;
+ severity = newSeverity;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CommonPackage.TCA_THRESHOLD__SEVERITY, oldSeverity, severity));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CommonPackage.TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME:
+ return getClosedLoopControlName();
+ case CommonPackage.TCA_THRESHOLD__VERSION:
+ return getVersion();
+ case CommonPackage.TCA_THRESHOLD__FIELD_PATH:
+ return getFieldPath();
+ case CommonPackage.TCA_THRESHOLD__THRESHOLD_VALUE:
+ return getThresholdValue();
+ case CommonPackage.TCA_THRESHOLD__DIRECTION:
+ return getDirection();
+ case CommonPackage.TCA_THRESHOLD__SEVERITY:
+ return getSeverity();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CommonPackage.TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME:
+ setClosedLoopControlName((String)newValue);
+ return;
+ case CommonPackage.TCA_THRESHOLD__VERSION:
+ setVersion((String)newValue);
+ return;
+ case CommonPackage.TCA_THRESHOLD__FIELD_PATH:
+ setFieldPath((String)newValue);
+ return;
+ case CommonPackage.TCA_THRESHOLD__THRESHOLD_VALUE:
+ setThresholdValue((Integer)newValue);
+ return;
+ case CommonPackage.TCA_THRESHOLD__DIRECTION:
+ setDirection((String)newValue);
+ return;
+ case CommonPackage.TCA_THRESHOLD__SEVERITY:
+ setSeverity((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CommonPackage.TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME:
+ setClosedLoopControlName(CLOSED_LOOP_CONTROL_NAME_EDEFAULT);
+ return;
+ case CommonPackage.TCA_THRESHOLD__VERSION:
+ setVersion(VERSION_EDEFAULT);
+ return;
+ case CommonPackage.TCA_THRESHOLD__FIELD_PATH:
+ setFieldPath(FIELD_PATH_EDEFAULT);
+ return;
+ case CommonPackage.TCA_THRESHOLD__THRESHOLD_VALUE:
+ setThresholdValue(THRESHOLD_VALUE_EDEFAULT);
+ return;
+ case CommonPackage.TCA_THRESHOLD__DIRECTION:
+ setDirection(DIRECTION_EDEFAULT);
+ return;
+ case CommonPackage.TCA_THRESHOLD__SEVERITY:
+ setSeverity(SEVERITY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CommonPackage.TCA_THRESHOLD__CLOSED_LOOP_CONTROL_NAME:
+ return CLOSED_LOOP_CONTROL_NAME_EDEFAULT == null ? closedLoopControlName != null : !CLOSED_LOOP_CONTROL_NAME_EDEFAULT.equals(closedLoopControlName);
+ case CommonPackage.TCA_THRESHOLD__VERSION:
+ return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
+ case CommonPackage.TCA_THRESHOLD__FIELD_PATH:
+ return FIELD_PATH_EDEFAULT == null ? fieldPath != null : !FIELD_PATH_EDEFAULT.equals(fieldPath);
+ case CommonPackage.TCA_THRESHOLD__THRESHOLD_VALUE:
+ return THRESHOLD_VALUE_EDEFAULT == null ? thresholdValue != null : !THRESHOLD_VALUE_EDEFAULT.equals(thresholdValue);
+ case CommonPackage.TCA_THRESHOLD__DIRECTION:
+ return DIRECTION_EDEFAULT == null ? direction != null : !DIRECTION_EDEFAULT.equals(direction);
+ case CommonPackage.TCA_THRESHOLD__SEVERITY:
+ return SEVERITY_EDEFAULT == null ? severity != null : !SEVERITY_EDEFAULT.equals(severity);
+ }
+ 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(" (closedLoopControlName: ");
+ result.append(closedLoopControlName);
+ result.append(", version: ");
+ result.append(version);
+ result.append(", fieldPath: ");
+ result.append(fieldPath);
+ result.append(", thresholdValue: ");
+ result.append(thresholdValue);
+ result.append(", direction: ");
+ result.append(direction);
+ result.append(", severity: ");
+ result.append(severity);
+ result.append(')');
+ return result.toString();
+ }
+
+} //TcaThresholdImpl
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonAdapterFactory.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonAdapterFactory.java
new file mode 100644
index 0000000..8c7536f
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonAdapterFactory.java
@@ -0,0 +1,231 @@
+
+/*-
+ * ============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.analytics.cdap.common.util;
+
+import org.openecomp.dcae.analytics.cdap.common.*;
+import org.openecomp.dcae.controller.core.service.DcaePolicyEntity;
+import org.openecomp.dcae.controller.service.cdap.CdapServiceInstanceConfiguration;
+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.analytics.cdap.common.CommonPackage
+ * @generated
+ */
+public class CommonAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CommonPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CommonAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = CommonPackage.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 CommonSwitch<Adapter> modelSwitch =
+ new CommonSwitch<Adapter>() {
+ @Override
+ public Adapter caseTcaConfiguration(TcaConfiguration object) {
+ return createTcaConfigurationAdapter();
+ }
+ @Override
+ public Adapter caseTcaMetrics(TcaMetrics object) {
+ return createTcaMetricsAdapter();
+ }
+ @Override
+ public Adapter caseTcaThreshold(TcaThreshold object) {
+ return createTcaThresholdAdapter();
+ }
+ @Override
+ public Adapter caseCdapServiceInstanceConfiguration(CdapServiceInstanceConfiguration object) {
+ return createCdapServiceInstanceConfigurationAdapter();
+ }
+ @Override
+ public Adapter caseNamedEntity(NamedEntity object) {
+ return createNamedEntityAdapter();
+ }
+ @Override
+ public Adapter caseDcaePolicyEntity(DcaePolicyEntity object) {
+ return createDcaePolicyEntityAdapter();
+ }
+ @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.analytics.cdap.common.TcaConfiguration <em>Tca 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.analytics.cdap.common.TcaConfiguration
+ * @generated
+ */
+ public Adapter createTcaConfigurationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.analytics.cdap.common.TcaMetrics <em>Tca Metrics</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.analytics.cdap.common.TcaMetrics
+ * @generated
+ */
+ public Adapter createTcaMetricsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.analytics.cdap.common.TcaThreshold <em>Tca Threshold</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.analytics.cdap.common.TcaThreshold
+ * @generated
+ */
+ public Adapter createTcaThresholdAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.service.cdap.CdapServiceInstanceConfiguration <em>Service Instance 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.cdap.CdapServiceInstanceConfiguration
+ * @generated
+ */
+ public Adapter createCdapServiceInstanceConfigurationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.dcae.controller.core.service.DcaePolicyEntity <em>Dcae Policy 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.dcae.controller.core.service.DcaePolicyEntity
+ * @generated
+ */
+ public Adapter createDcaePolicyEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.openecomp.ncomp.core.NamedEntity <em>Named Entity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.openecomp.ncomp.core.NamedEntity
+ * @generated
+ */
+ public Adapter createNamedEntityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //CommonAdapterFactory
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonSwitch.java b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonSwitch.java
new file mode 100644
index 0000000..0c52242
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore-gen/org/openecomp/dcae/analytics/cdap/common/util/CommonSwitch.java
@@ -0,0 +1,223 @@
+
+/*-
+ * ============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.analytics.cdap.common.util;
+
+import org.openecomp.dcae.analytics.cdap.common.*;
+import org.openecomp.dcae.controller.core.service.DcaePolicyEntity;
+import org.openecomp.dcae.controller.service.cdap.CdapServiceInstanceConfiguration;
+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.analytics.cdap.common.CommonPackage
+ * @generated
+ */
+public class CommonSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CommonPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CommonSwitch() {
+ if (modelPackage == null) {
+ modelPackage = CommonPackage.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 CommonPackage.TCA_CONFIGURATION: {
+ TcaConfiguration tcaConfiguration = (TcaConfiguration)theEObject;
+ T result = caseTcaConfiguration(tcaConfiguration);
+ if (result == null) result = caseCdapServiceInstanceConfiguration(tcaConfiguration);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CommonPackage.TCA_METRICS: {
+ TcaMetrics tcaMetrics = (TcaMetrics)theEObject;
+ T result = caseTcaMetrics(tcaMetrics);
+ if (result == null) result = caseNamedEntity(tcaMetrics);
+ if (result == null) result = caseDcaePolicyEntity(tcaMetrics);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CommonPackage.TCA_THRESHOLD: {
+ TcaThreshold tcaThreshold = (TcaThreshold)theEObject;
+ T result = caseTcaThreshold(tcaThreshold);
+ if (result == null) result = caseNamedEntity(tcaThreshold);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Tca 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>Tca Configuration</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTcaConfiguration(TcaConfiguration object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Tca Metrics</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>Tca Metrics</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTcaMetrics(TcaMetrics object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Tca Threshold</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>Tca Threshold</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTcaThreshold(TcaThreshold object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Service Instance 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>Service Instance Configuration</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCdapServiceInstanceConfiguration(CdapServiceInstanceConfiguration object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dcae Policy 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>Dcae Policy Entity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDcaePolicyEntity(DcaePolicyEntity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Named Entity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Named Entity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNamedEntity(NamedEntity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //CommonSwitch
diff --git a/dcae-analytics-cdap-common-model/src/main/xcore/common.xcore b/dcae-analytics-cdap-common-model/src/main/xcore/common.xcore
new file mode 100644
index 0000000..c6cc0bb
--- /dev/null
+++ b/dcae-analytics-cdap-common-model/src/main/xcore/common.xcore
@@ -0,0 +1,168 @@
+
+/*-
+ * ============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-analytics-cdap-common-model/src/main/xcore-gen")
+package org.openecomp.dcae.analytics.cdap.common
+
+import org.openecomp.dcae.controller.service.cdap.CdapServiceInstanceConfiguration
+import org.openecomp.ncomp.core.NamedEntity
+import org.openecomp.dcae.controller.core.service.DcaePolicyEntity
+
+annotation "http://openecomp.org/cdap" as cdap
+annotation "http://openecomp.org" as ecomp
+annotation "http://openecomp.org/policy" as policy
+
+class TcaConfiguration extends CdapServiceInstanceConfiguration {
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:domain")
+ String domain
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberHostName")
+ String subscriberHostName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberHostPort")
+ String subscriberHostPort
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberTopicName")
+ String subscriberTopicName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberProtocol")
+ String subscriberProtocol
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberUserName")
+ String subscriberUserName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberUserPassword")
+ String subscriberUserPassword
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberContentType")
+ String subscriberContentType
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberConsumerId")
+ String subscriberConsumerId
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberConsumerGroup")
+ String subscriberConsumerGroup
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberTimeoutMS")
+ String subscriberTimeoutMS
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberMessageLimit")
+ String subscriberMessageLimit
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:subscriberPollingInterval")
+ String subscriberPollingInterval
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherHostName")
+ String publisherHostName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherHostPort")
+ String publisherHostPort
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherTopicName")
+ String publisherTopicName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherProtocol")
+ String publisherProtocol
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherUserName")
+ String publisherUserName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherUserPassword")
+ String publisherUserPassword
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherContentType")
+ String publisherContentType
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherMaxBatchSize")
+ String publisherMaxBatchSize
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherMaxRecoveryQueueSize")
+ String publisherMaxRecoveryQueueSize
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:publisherPollingInterval")
+ String publisherPollingInterval
+
+ contains TcaMetrics[] metricsPerFunctionalRole
+}
+
+@policy(policyTemplate="dcae-microservice",
+ dcaeService="tca")
+@ecomp(^type="configuration")
+class TcaMetrics extends NamedEntity, DcaePolicyEntity {
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.functionalRole")
+ String functionalRole
+
+ @ecomp(^type="configuration")
+ contains TcaThreshold[] thresholds
+}
+
+@ecomp(^type="configuration")
+class TcaThreshold extends NamedEntity {
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.closedLoopControlName")
+ String closedLoopControlName
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.version")
+ String version
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.fieldPath")
+ String fieldPath
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.thresholdValue")
+ Integer thresholdValue
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.direction")
+ String direction
+
+ @ecomp(^type="configuration")
+ @cdap(destination="namespace-prefs:cdap-tca:${path}.policy.severity")
+ String severity
+}
+