Delete unused modules
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/.classpath b/services/org.eclipse.sensinact.studio.model.resource.edit/.classpath
deleted file mode 100644
index 22f3064..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/.project b/services/org.eclipse.sensinact.studio.model.resource.edit/.project
deleted file mode 100644
index 7c49edd..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.sensinact.studio.model.resource.edit</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/META-INF/MANIFEST.MF b/services/org.eclipse.sensinact.studio.model.resource.edit/META-INF/MANIFEST.MF
deleted file mode 100644
index f29fa40..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,16 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.sensinact.studio.model.resource.edit;singleton:=true
-Automatic-Module-Name: org.eclipse.sensinact.studio.model.resource.edit
-Bundle-Version: 1.0.0.qualifier
-Bundle-ClassPath: .
-Bundle-Activator: org.eclipse.sensinact.studio.resource.provider.ResourceEditPlugin$Implementation
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Export-Package: org.eclipse.sensinact.studio.resource.provider
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.sensinact.studio.model.resource;visibility:=reexport,
- org.eclipse.emf.edit;visibility:=reexport
-Bundle-ActivationPolicy: lazy
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/about.html b/services/org.eclipse.sensinact.studio.model.resource.edit/about.html
deleted file mode 100644
index 3b39f88..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/about.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-
-</body></html>
\ No newline at end of file
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/build.properties b/services/org.eclipse.sensinact.studio.model.resource.edit/build.properties
deleted file mode 100644
index 0b2507e..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# Copyright (c) 2018 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-#
-
-bin.includes = .,\
- icons/,\
- META-INF/,\
- plugin.xml,\
- plugin.properties
-jars.compile.order = .
-source.. = src/
-output.. = bin/
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateAccessMethod_parameter_Parameter.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateAccessMethod_parameter_Parameter.gif
deleted file mode 100644
index bd45e3e..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateAccessMethod_parameter_Parameter.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateAttribute_metadata_Metadata.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateAttribute_metadata_Metadata.gif
deleted file mode 100644
index 097f1cb..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateAttribute_metadata_Metadata.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateDevice_service_Service.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateDevice_service_Service.gif
deleted file mode 100644
index fbd2adb..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateDevice_service_Service.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateGateway_device_Device.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateGateway_device_Device.gif
deleted file mode 100644
index 64b04a5..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateGateway_device_Device.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateResource_accessMethod_AccessMethod.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateResource_accessMethod_AccessMethod.gif
deleted file mode 100644
index 0cf27b2..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateResource_accessMethod_AccessMethod.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateResource_attribute_Attribute.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateResource_attribute_Attribute.gif
deleted file mode 100644
index 6baa8a5..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateResource_attribute_Attribute.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Action.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Action.gif
deleted file mode 100644
index 002f4e5..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Action.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Property.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Property.gif
deleted file mode 100644
index 4837c02..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Property.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Resource.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Resource.gif
deleted file mode 100644
index 2449727..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_Resource.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_SensorData.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_SensorData.gif
deleted file mode 100644
index 597f655..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_SensorData.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_StateVariable.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_StateVariable.gif
deleted file mode 100644
index 67c2619..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateService_resource_StateVariable.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateStudio_gateways_Gateway.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateStudio_gateways_Gateway.gif
deleted file mode 100644
index 0a7b807..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/ctool16/CreateStudio_gateways_Gateway.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/AccessMethod.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/AccessMethod.gif
deleted file mode 100644
index 89ad5da..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/AccessMethod.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Action.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Action.gif
deleted file mode 100644
index cb1755a..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Action.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Attribute.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Attribute.gif
deleted file mode 100644
index 7b7c428..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Attribute.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Device.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Device.gif
deleted file mode 100644
index 5a9bc75..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Device.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Gateway.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Gateway.gif
deleted file mode 100644
index afb82ea..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Gateway.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Metadata.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Metadata.gif
deleted file mode 100644
index 53500da..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Metadata.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/NamedElement.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/NamedElement.gif
deleted file mode 100644
index 14af8aa..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/NamedElement.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Parameter.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Parameter.gif
deleted file mode 100644
index a3908bc..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Parameter.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Property.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Property.gif
deleted file mode 100644
index 136e3b2..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Property.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Resource.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Resource.gif
deleted file mode 100644
index 338fb8d..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Resource.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/SensorData.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/SensorData.gif
deleted file mode 100644
index 5915591..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/SensorData.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Service.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Service.gif
deleted file mode 100644
index db7414e..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Service.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/StateVariable.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/StateVariable.gif
deleted file mode 100644
index e4b530e..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/StateVariable.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Studio.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Studio.gif
deleted file mode 100644
index 739ebbf..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/Studio.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/TypedElement.gif b/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/TypedElement.gif
deleted file mode 100644
index c8d381f..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/icons/full/obj16/TypedElement.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/plugin.properties b/services/org.eclipse.sensinact.studio.model.resource.edit/plugin.properties
deleted file mode 100644
index 6bc5698..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/plugin.properties
+++ /dev/null
@@ -1,68 +0,0 @@
-#
-# Copyright (c) 2018 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-#
-
-pluginName = Resource Edit Support
-providerName = www.example.org
-
-_UI_CreateChild_text = {0}
-_UI_CreateChild_text2 = {1} {0}
-_UI_CreateChild_text3 = {1}
-_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
-_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
-_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
-
-_UI_PropertyDescriptor_description = The {0} of the {1}
-
-_UI_Studio_type = Studio
-_UI_Device_type = Device
-_UI_NamedElement_type = Named Element
-_UI_TypedElement_type = Typed Element
-_UI_Service_type = Service
-_UI_Resource_type = Resource
-_UI_Property_type = Property
-_UI_SensorData_type = Sensor Data
-_UI_StateVariable_type = State Variable
-_UI_Action_type = Action
-_UI_Attribute_type = Attribute
-_UI_Metadata_type = Metadata
-_UI_AccessMethod_type = Access Method
-_UI_Parameter_type = Parameter
-_UI_Gateway_type = Gateway
-_UI_Unknown_type = Object
-
-_UI_Unknown_datatype= Value
-
-_UI_Studio_gateways_feature = Gateways
-_UI_Device_friendlyName_feature = Friendly Name
-_UI_Device_service_feature = Service
-_UI_NamedElement_name_feature = Name
-_UI_TypedElement_type_feature = Type
-_UI_TypedElement_value_feature = Value
-_UI_Service_friendlyName_feature = Friendly Name
-_UI_Service_resource_feature = Resource
-_UI_Resource_friendlyName_feature = Friendly Name
-_UI_Resource_attribute_feature = Attribute
-_UI_Resource_accessMethod_feature = Access Method
-_UI_StateVariable_modifier_feature = Modifier
-_UI_Action_state_feature = State
-_UI_Attribute_metadata_feature = Metadata
-_UI_AccessMethod_parameter_feature = Parameter
-_UI_AccessMethod_type_feature = Type
-_UI_Gateway_device_feature = Device
-_UI_Unknown_feature = Unspecified
-
-_UI_AccessMethodType_GET_literal = GET
-_UI_AccessMethodType_SET_literal = SET
-_UI_AccessMethodType_ACT_literal = ACT
-_UI_AccessMethodType_SUBSCRIBE_literal = SUBSCRIBE
-_UI_AccessMethodType_UNSUBSCRIBE_literal = UNSUBSCRIBE
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/plugin.xml b/services/org.eclipse.sensinact.studio.model.resource.edit/plugin.xml
deleted file mode 100644
index 2778e89..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/plugin.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright (c) 2018 CEA.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
-
- Contributors:
- CEA - initial API and implementation and/or initial documentation
-
--->
-<?eclipse version="3.0"?>
-
-<!--
--->
-
-<plugin>
-
- <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
- <!-- @generated resource -->
- <factory
- uri="http://SENSINACT_RESOURCE/0.1"
- class="org.eclipse.sensinact.studio.resource.provider.ResourceItemProviderAdapterFactory"
- supportedTypes=
- "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
- org.eclipse.emf.edit.provider.IStructuredItemContentProvider
- org.eclipse.emf.edit.provider.ITreeItemContentProvider
- org.eclipse.emf.edit.provider.IItemLabelProvider
- org.eclipse.emf.edit.provider.IItemPropertySource"/>
- </extension>
-
-</plugin>
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/AccessMethodItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/AccessMethodItemProvider.java
deleted file mode 100644
index 65006c1..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/AccessMethodItemProvider.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.AccessMethod;
-import org.eclipse.sensinact.studio.resource.AccessMethodType;
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.AccessMethod} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class AccessMethodItemProvider
- extends ItemProviderAdapter
- implements
- IEditingDomainItemProvider,
- IStructuredItemContentProvider,
- ITreeItemContentProvider,
- IItemLabelProvider,
- IItemPropertySource {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public AccessMethodItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addTypePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Type feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addTypePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_AccessMethod_type_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_AccessMethod_type_feature", "_UI_AccessMethod_type"),
- ResourcePackage.Literals.ACCESS_METHOD__TYPE,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.ACCESS_METHOD__PARAMETER);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns AccessMethod.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/AccessMethod"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- AccessMethodType labelValue = ((AccessMethod)object).getType();
- String label = labelValue == null ? null : labelValue.toString();
- return label == null || label.length() == 0 ?
- getString("_UI_AccessMethod_type") :
- getString("_UI_AccessMethod_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(AccessMethod.class)) {
- case ResourcePackage.ACCESS_METHOD__TYPE:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- case ResourcePackage.ACCESS_METHOD__PARAMETER:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.ACCESS_METHOD__PARAMETER,
- ResourceFactory.eINSTANCE.createParameter()));
- }
-
- /**
- * Return the resource locator for this item provider's resources.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public ResourceLocator getResourceLocator() {
- return ResourceEditPlugin.INSTANCE;
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ActionItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ActionItemProvider.java
deleted file mode 100644
index 743c854..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ActionItemProvider.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-
-import org.eclipse.sensinact.studio.resource.Action;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Action} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ActionItemProvider extends ResourceItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ActionItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addStatePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the State feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addStatePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_Action_state_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_Action_state_feature", "_UI_Action_type"),
- ResourcePackage.Literals.ACTION__STATE,
- true,
- false,
- true,
- null,
- null,
- null));
- }
-
- /**
- * This returns Action.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Action"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Action)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Action_type") :
- getString("_UI_Action_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/AttributeItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/AttributeItemProvider.java
deleted file mode 100644
index d0c1510..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/AttributeItemProvider.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.Attribute;
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Attribute} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class AttributeItemProvider extends TypedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public AttributeItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.ATTRIBUTE__METADATA);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns Attribute.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Attribute"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Attribute)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Attribute_type") :
- getString("_UI_Attribute_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(Attribute.class)) {
- case ResourcePackage.ATTRIBUTE__METADATA:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.ATTRIBUTE__METADATA,
- ResourceFactory.eINSTANCE.createMetadata()));
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/DeviceItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/DeviceItemProvider.java
deleted file mode 100644
index 69c4de0..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/DeviceItemProvider.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.Device;
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Device} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class DeviceItemProvider extends NamedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeviceItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addFriendlyNamePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Friendly Name feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addFriendlyNamePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_Device_friendlyName_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_Device_friendlyName_feature", "_UI_Device_type"),
- ResourcePackage.Literals.DEVICE__FRIENDLY_NAME,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.DEVICE__SERVICE);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns Device.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Device"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Device)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Device_type") :
- getString("_UI_Device_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(Device.class)) {
- case ResourcePackage.DEVICE__FRIENDLY_NAME:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- case ResourcePackage.DEVICE__SERVICE:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.DEVICE__SERVICE,
- ResourceFactory.eINSTANCE.createService()));
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/GatewayItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/GatewayItemProvider.java
deleted file mode 100644
index d94d185..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/GatewayItemProvider.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.Gateway;
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Gateway} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class GatewayItemProvider extends NamedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public GatewayItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.GATEWAY__DEVICE);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns Gateway.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Gateway"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Gateway)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Gateway_type") :
- getString("_UI_Gateway_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(Gateway.class)) {
- case ResourcePackage.GATEWAY__DEVICE:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.GATEWAY__DEVICE,
- ResourceFactory.eINSTANCE.createDevice()));
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/MetadataItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/MetadataItemProvider.java
deleted file mode 100644
index 2731c13..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/MetadataItemProvider.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-
-import org.eclipse.sensinact.studio.resource.Metadata;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Metadata} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class MetadataItemProvider extends TypedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public MetadataItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This returns Metadata.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Metadata"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Metadata)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Metadata_type") :
- getString("_UI_Metadata_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/NamedElementItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/NamedElementItemProvider.java
deleted file mode 100644
index f2a4b99..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/NamedElementItemProvider.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.NamedElement;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.NamedElement} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class NamedElementItemProvider
- extends ItemProviderAdapter
- implements
- IEditingDomainItemProvider,
- IStructuredItemContentProvider,
- ITreeItemContentProvider,
- IItemLabelProvider,
- IItemPropertySource {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public NamedElementItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addNamePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Name feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addNamePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_NamedElement_name_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_NamedElement_name_feature", "_UI_NamedElement_type"),
- ResourcePackage.Literals.NAMED_ELEMENT__NAME,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This returns NamedElement.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/NamedElement"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((NamedElement)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_NamedElement_type") :
- getString("_UI_NamedElement_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(NamedElement.class)) {
- case ResourcePackage.NAMED_ELEMENT__NAME:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
- /**
- * Return the resource locator for this item provider's resources.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public ResourceLocator getResourceLocator() {
- return ResourceEditPlugin.INSTANCE;
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ParameterItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ParameterItemProvider.java
deleted file mode 100644
index d656bf9..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ParameterItemProvider.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-
-import org.eclipse.sensinact.studio.resource.Parameter;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Parameter} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ParameterItemProvider extends TypedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ParameterItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This returns Parameter.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Parameter"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Parameter)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Parameter_type") :
- getString("_UI_Parameter_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/PropertyItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/PropertyItemProvider.java
deleted file mode 100644
index eb02a07..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/PropertyItemProvider.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-
-import org.eclipse.sensinact.studio.resource.Property;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Property} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class PropertyItemProvider extends ResourceItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public PropertyItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This returns Property.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Property"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Property)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Property_type") :
- getString("_UI_Property_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceEditPlugin.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceEditPlugin.java
deleted file mode 100644
index 1af1ede..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceEditPlugin.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-import org.eclipse.emf.common.EMFPlugin;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-/**
- * This is the central singleton for the Resource edit plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public final class ResourceEditPlugin extends EMFPlugin {
- /**
- * Keep track of the singleton.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static final ResourceEditPlugin INSTANCE = new ResourceEditPlugin();
-
- /**
- * Keep track of the singleton.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private static Implementation plugin;
-
- /**
- * Create the instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceEditPlugin() {
- super
- (new ResourceLocator [] {
- });
- }
-
- /**
- * Returns the singleton instance of the Eclipse plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the singleton instance.
- * @generated
- */
- @Override
- public ResourceLocator getPluginResourceLocator() {
- return plugin;
- }
-
- /**
- * Returns the singleton instance of the Eclipse plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the singleton instance.
- * @generated
- */
- public static Implementation getPlugin() {
- return plugin;
- }
-
- /**
- * The actual implementation of the Eclipse <b>Plugin</b>.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static class Implementation extends EclipsePlugin {
- /**
- * Creates an instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Implementation() {
- super();
-
- // Remember the static instance.
- //
- plugin = this;
- }
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceItemProvider.java
deleted file mode 100644
index 154cd05..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceItemProvider.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.Resource;
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Resource} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ResourceItemProvider extends NamedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addFriendlyNamePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Friendly Name feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addFriendlyNamePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_Resource_friendlyName_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_Resource_friendlyName_feature", "_UI_Resource_type"),
- ResourcePackage.Literals.RESOURCE__FRIENDLY_NAME,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.RESOURCE__ATTRIBUTE);
- childrenFeatures.add(ResourcePackage.Literals.RESOURCE__ACCESS_METHOD);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns Resource.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Resource"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Resource)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Resource_type") :
- getString("_UI_Resource_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(Resource.class)) {
- case ResourcePackage.RESOURCE__FRIENDLY_NAME:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- case ResourcePackage.RESOURCE__ATTRIBUTE:
- case ResourcePackage.RESOURCE__ACCESS_METHOD:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.RESOURCE__ATTRIBUTE,
- ResourceFactory.eINSTANCE.createAttribute()));
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.RESOURCE__ACCESS_METHOD,
- ResourceFactory.eINSTANCE.createAccessMethod()));
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceItemProviderAdapterFactory.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceItemProviderAdapterFactory.java
deleted file mode 100644
index 6bcb8a3..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ResourceItemProviderAdapterFactory.java
+++ /dev/null
@@ -1,551 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-
-import org.eclipse.emf.edit.provider.ChangeNotifier;
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.IDisposable;
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-
-import org.eclipse.sensinact.studio.resource.util.ResourceAdapterFactory;
-
-/**
- * This is the factory that is used to provide the interfaces needed to support Viewers.
- * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
- * The adapters also support Eclipse property sheets.
- * Note that most of the adapters are shared among multiple instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ResourceItemProviderAdapterFactory extends ResourceAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
- /**
- * This keeps track of the root adapter factory that delegates to this adapter factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ComposedAdapterFactory parentAdapterFactory;
-
- /**
- * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IChangeNotifier changeNotifier = new ChangeNotifier();
-
- /**
- * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<Object> supportedTypes = new ArrayList<Object>();
-
- /**
- * This constructs an instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceItemProviderAdapterFactory() {
- supportedTypes.add(IEditingDomainItemProvider.class);
- supportedTypes.add(IStructuredItemContentProvider.class);
- supportedTypes.add(ITreeItemContentProvider.class);
- supportedTypes.add(IItemLabelProvider.class);
- supportedTypes.add(IItemPropertySource.class);
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Studio} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected StudioItemProvider studioItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Studio}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createStudioAdapter() {
- if (studioItemProvider == null) {
- studioItemProvider = new StudioItemProvider(this);
- }
-
- return studioItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Device} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected DeviceItemProvider deviceItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Device}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createDeviceAdapter() {
- if (deviceItemProvider == null) {
- deviceItemProvider = new DeviceItemProvider(this);
- }
-
- return deviceItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.NamedElement} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected NamedElementItemProvider namedElementItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.NamedElement}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createNamedElementAdapter() {
- if (namedElementItemProvider == null) {
- namedElementItemProvider = new NamedElementItemProvider(this);
- }
-
- return namedElementItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.TypedElement} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TypedElementItemProvider typedElementItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.TypedElement}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createTypedElementAdapter() {
- if (typedElementItemProvider == null) {
- typedElementItemProvider = new TypedElementItemProvider(this);
- }
-
- return typedElementItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Service} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ServiceItemProvider serviceItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Service}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createServiceAdapter() {
- if (serviceItemProvider == null) {
- serviceItemProvider = new ServiceItemProvider(this);
- }
-
- return serviceItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Resource} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ResourceItemProvider resourceItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Resource}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createResourceAdapter() {
- if (resourceItemProvider == null) {
- resourceItemProvider = new ResourceItemProvider(this);
- }
-
- return resourceItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Property} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected PropertyItemProvider propertyItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Property}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createPropertyAdapter() {
- if (propertyItemProvider == null) {
- propertyItemProvider = new PropertyItemProvider(this);
- }
-
- return propertyItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.SensorData} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected SensorDataItemProvider sensorDataItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.SensorData}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createSensorDataAdapter() {
- if (sensorDataItemProvider == null) {
- sensorDataItemProvider = new SensorDataItemProvider(this);
- }
-
- return sensorDataItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.StateVariable} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected StateVariableItemProvider stateVariableItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.StateVariable}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createStateVariableAdapter() {
- if (stateVariableItemProvider == null) {
- stateVariableItemProvider = new StateVariableItemProvider(this);
- }
-
- return stateVariableItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Action} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ActionItemProvider actionItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Action}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createActionAdapter() {
- if (actionItemProvider == null) {
- actionItemProvider = new ActionItemProvider(this);
- }
-
- return actionItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Attribute} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected AttributeItemProvider attributeItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Attribute}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createAttributeAdapter() {
- if (attributeItemProvider == null) {
- attributeItemProvider = new AttributeItemProvider(this);
- }
-
- return attributeItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Metadata} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected MetadataItemProvider metadataItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Metadata}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createMetadataAdapter() {
- if (metadataItemProvider == null) {
- metadataItemProvider = new MetadataItemProvider(this);
- }
-
- return metadataItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.AccessMethod} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected AccessMethodItemProvider accessMethodItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.AccessMethod}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createAccessMethodAdapter() {
- if (accessMethodItemProvider == null) {
- accessMethodItemProvider = new AccessMethodItemProvider(this);
- }
-
- return accessMethodItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Parameter} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ParameterItemProvider parameterItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Parameter}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createParameterAdapter() {
- if (parameterItemProvider == null) {
- parameterItemProvider = new ParameterItemProvider(this);
- }
-
- return parameterItemProvider;
- }
-
- /**
- * This keeps track of the one adapter used for all {@link org.eclipse.sensinact.studio.resource.Gateway} instances.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected GatewayItemProvider gatewayItemProvider;
-
- /**
- * This creates an adapter for a {@link org.eclipse.sensinact.studio.resource.Gateway}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter createGatewayAdapter() {
- if (gatewayItemProvider == null) {
- gatewayItemProvider = new GatewayItemProvider(this);
- }
-
- return gatewayItemProvider;
- }
-
- /**
- * This returns the root adapter factory that contains this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public ComposeableAdapterFactory getRootAdapterFactory() {
- return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
- }
-
- /**
- * This sets the composed adapter factory that contains this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
- this.parentAdapterFactory = parentAdapterFactory;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean isFactoryForType(Object type) {
- return supportedTypes.contains(type) || super.isFactoryForType(type);
- }
-
- /**
- * This implementation substitutes the factory itself as the key for the adapter.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Adapter adapt(Notifier notifier, Object type) {
- return super.adapt(notifier, this);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object adapt(Object object, Object type) {
- if (isFactoryForType(type)) {
- Object adapter = super.adapt(object, type);
- if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
- return adapter;
- }
- }
-
- return null;
- }
-
- /**
- * This adds a listener.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void addListener(INotifyChangedListener notifyChangedListener) {
- changeNotifier.addListener(notifyChangedListener);
- }
-
- /**
- * This removes a listener.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void removeListener(INotifyChangedListener notifyChangedListener) {
- changeNotifier.removeListener(notifyChangedListener);
- }
-
- /**
- * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void fireNotifyChanged(Notification notification) {
- changeNotifier.fireNotifyChanged(notification);
-
- if (parentAdapterFactory != null) {
- parentAdapterFactory.fireNotifyChanged(notification);
- }
- }
-
- /**
- * This disposes all of the item providers created by this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void dispose() {
- if (studioItemProvider != null) studioItemProvider.dispose();
- if (deviceItemProvider != null) deviceItemProvider.dispose();
- if (namedElementItemProvider != null) namedElementItemProvider.dispose();
- if (typedElementItemProvider != null) typedElementItemProvider.dispose();
- if (serviceItemProvider != null) serviceItemProvider.dispose();
- if (resourceItemProvider != null) resourceItemProvider.dispose();
- if (propertyItemProvider != null) propertyItemProvider.dispose();
- if (sensorDataItemProvider != null) sensorDataItemProvider.dispose();
- if (stateVariableItemProvider != null) stateVariableItemProvider.dispose();
- if (actionItemProvider != null) actionItemProvider.dispose();
- if (attributeItemProvider != null) attributeItemProvider.dispose();
- if (metadataItemProvider != null) metadataItemProvider.dispose();
- if (accessMethodItemProvider != null) accessMethodItemProvider.dispose();
- if (parameterItemProvider != null) parameterItemProvider.dispose();
- if (gatewayItemProvider != null) gatewayItemProvider.dispose();
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/SensorDataItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/SensorDataItemProvider.java
deleted file mode 100644
index 0e467fb..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/SensorDataItemProvider.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-
-import org.eclipse.sensinact.studio.resource.SensorData;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.SensorData} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class SensorDataItemProvider extends ResourceItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public SensorDataItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This returns SensorData.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/SensorData"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((SensorData)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_SensorData_type") :
- getString("_UI_SensorData_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ServiceItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ServiceItemProvider.java
deleted file mode 100644
index a9244d9..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/ServiceItemProvider.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-import org.eclipse.sensinact.studio.resource.Service;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Service} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ServiceItemProvider extends NamedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ServiceItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addFriendlyNamePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Friendly Name feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addFriendlyNamePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_Service_friendlyName_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_Service_friendlyName_feature", "_UI_Service_type"),
- ResourcePackage.Literals.SERVICE__FRIENDLY_NAME,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.SERVICE__RESOURCE);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns Service.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Service"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((Service)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_Service_type") :
- getString("_UI_Service_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(Service.class)) {
- case ResourcePackage.SERVICE__FRIENDLY_NAME:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- case ResourcePackage.SERVICE__RESOURCE:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.SERVICE__RESOURCE,
- ResourceFactory.eINSTANCE.createResource()));
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.SERVICE__RESOURCE,
- ResourceFactory.eINSTANCE.createProperty()));
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.SERVICE__RESOURCE,
- ResourceFactory.eINSTANCE.createSensorData()));
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.SERVICE__RESOURCE,
- ResourceFactory.eINSTANCE.createStateVariable()));
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.SERVICE__RESOURCE,
- ResourceFactory.eINSTANCE.createAction()));
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/StateVariableItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/StateVariableItemProvider.java
deleted file mode 100644
index d060a07..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/StateVariableItemProvider.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-import org.eclipse.sensinact.studio.resource.StateVariable;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.StateVariable} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class StateVariableItemProvider extends ResourceItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public StateVariableItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addModifierPropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Modifier feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addModifierPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_StateVariable_modifier_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_StateVariable_modifier_feature", "_UI_StateVariable_type"),
- ResourcePackage.Literals.STATE_VARIABLE__MODIFIER,
- true,
- false,
- true,
- null,
- null,
- null));
- }
-
- /**
- * This returns StateVariable.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/StateVariable"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((StateVariable)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_StateVariable_type") :
- getString("_UI_StateVariable_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/StudioItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/StudioItemProvider.java
deleted file mode 100644
index eb4dbd9..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/StudioItemProvider.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-import org.eclipse.emf.edit.provider.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-import org.eclipse.sensinact.studio.resource.Studio;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.Studio} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class StudioItemProvider
- extends ItemProviderAdapter
- implements
- IEditingDomainItemProvider,
- IStructuredItemContentProvider,
- ITreeItemContentProvider,
- IItemLabelProvider,
- IItemPropertySource {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public StudioItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
- * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
- * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
- if (childrenFeatures == null) {
- super.getChildrenFeatures(object);
- childrenFeatures.add(ResourcePackage.Literals.STUDIO__GATEWAYS);
- }
- return childrenFeatures;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EStructuralFeature getChildFeature(Object object, Object child) {
- // Check the type of the specified child object and return the proper feature to use for
- // adding (see {@link AddCommand}) it as a child.
-
- return super.getChildFeature(object, child);
- }
-
- /**
- * This returns Studio.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Studio"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- return getString("_UI_Studio_type");
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(Studio.class)) {
- case ResourcePackage.STUDIO__GATEWAYS:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
-
- newChildDescriptors.add
- (createChildParameter
- (ResourcePackage.Literals.STUDIO__GATEWAYS,
- ResourceFactory.eINSTANCE.createGateway()));
- }
-
- /**
- * Return the resource locator for this item provider's resources.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public ResourceLocator getResourceLocator() {
- return ResourceEditPlugin.INSTANCE;
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/TypedElementItemProvider.java b/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/TypedElementItemProvider.java
deleted file mode 100644
index 2b1c1ef..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.edit/src/org/eclipse/sensinact/studio/resource/provider/TypedElementItemProvider.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-import org.eclipse.sensinact.studio.resource.TypedElement;
-
-/**
- * This is the item provider adapter for a {@link org.eclipse.sensinact.studio.resource.TypedElement} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class TypedElementItemProvider extends NamedElementItemProvider {
- /**
- * This constructs an instance from a factory and a notifier.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public TypedElementItemProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * This returns the property descriptors for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
- if (itemPropertyDescriptors == null) {
- super.getPropertyDescriptors(object);
-
- addTypePropertyDescriptor(object);
- addValuePropertyDescriptor(object);
- }
- return itemPropertyDescriptors;
- }
-
- /**
- * This adds a property descriptor for the Type feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addTypePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_TypedElement_type_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_TypedElement_type_feature", "_UI_TypedElement_type"),
- ResourcePackage.Literals.TYPED_ELEMENT__TYPE,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This adds a property descriptor for the Value feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void addValuePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add
- (createItemPropertyDescriptor
- (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
- getResourceLocator(),
- getString("_UI_TypedElement_value_feature"),
- getString("_UI_PropertyDescriptor_description", "_UI_TypedElement_value_feature", "_UI_TypedElement_type"),
- ResourcePackage.Literals.TYPED_ELEMENT__VALUE,
- true,
- false,
- false,
- ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
- null,
- null));
- }
-
- /**
- * This returns TypedElement.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/TypedElement"));
- }
-
- /**
- * This returns the label text for the adapted class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public String getText(Object object) {
- String label = ((TypedElement)object).getName();
- return label == null || label.length() == 0 ?
- getString("_UI_TypedElement_type") :
- getString("_UI_TypedElement_type") + " " + label;
- }
-
-
- /**
- * This handles model notifications by calling {@link #updateChildren} to update any cached
- * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void notifyChanged(Notification notification) {
- updateChildren(notification);
-
- switch (notification.getFeatureID(TypedElement.class)) {
- case ResourcePackage.TYPED_ELEMENT__TYPE:
- case ResourcePackage.TYPED_ELEMENT__VALUE:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- }
- super.notifyChanged(notification);
- }
-
- /**
- * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
- * that can be created under this object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
- super.collectNewChildDescriptors(newChildDescriptors, object);
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/.classpath b/services/org.eclipse.sensinact.studio.model.resource.editor/.classpath
deleted file mode 100644
index 22f3064..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/.project b/services/org.eclipse.sensinact.studio.model.resource.editor/.project
deleted file mode 100644
index 63320b4..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.sensinact.studio.model.resource.editor</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/META-INF/MANIFEST.MF b/services/org.eclipse.sensinact.studio.model.resource.editor/META-INF/MANIFEST.MF
deleted file mode 100644
index 73500ab..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.sensinact.studio.model.resource.editor;singleton:=true
-Automatic-Module-Name: org.eclipse.sensinact.studio.model.resource.editor
-Bundle-Version: 1.0.0.qualifier
-Bundle-ClassPath: .
-Bundle-Activator: org.eclipse.sensinact.studio.resource.presentation.ResourceEditorPlugin$Implementation
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Export-Package: org.eclipse.sensinact.studio.resource.presentation
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources;visibility:=reexport,
- org.eclipse.sensinact.studio.model.resource.edit;visibility:=reexport,
- org.eclipse.emf.ecore.xmi;visibility:=reexport,
- org.eclipse.emf.edit.ui;visibility:=reexport,
- org.eclipse.ui.ide;visibility:=reexport
-Bundle-ActivationPolicy: lazy
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/about.html b/services/org.eclipse.sensinact.studio.model.resource.editor/about.html
deleted file mode 100644
index 3b39f88..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/about.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-
-</body></html>
\ No newline at end of file
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/build.properties b/services/org.eclipse.sensinact.studio.model.resource.editor/build.properties
deleted file mode 100644
index 1c56291..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# Copyright (c) 2018 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-#
-
-bin.includes = .,\
- icons/,\
- META-INF/,\
- plugin.xml,\
- plugin.properties
-jars.compile.order = .
-source.. = src/
-output.. = bin
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/icons/full/obj16/ResourceModelFile.gif b/services/org.eclipse.sensinact.studio.model.resource.editor/icons/full/obj16/ResourceModelFile.gif
deleted file mode 100644
index 40ce498..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/icons/full/obj16/ResourceModelFile.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/icons/full/wizban/NewResource.gif b/services/org.eclipse.sensinact.studio.model.resource.editor/icons/full/wizban/NewResource.gif
deleted file mode 100644
index 5f38f49..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/icons/full/wizban/NewResource.gif
+++ /dev/null
Binary files differ
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/plugin.properties b/services/org.eclipse.sensinact.studio.model.resource.editor/plugin.properties
deleted file mode 100644
index 122e66f..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/plugin.properties
+++ /dev/null
@@ -1,64 +0,0 @@
-#
-# Copyright (c) 2018 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-#
-
-pluginName = Resource Editor
-providerName = www.example.org
-
-_UI_ResourceEditor_menu = &Resource Editor
-
-_UI_CreateChild_menu_item = &New Child
-_UI_CreateSibling_menu_item = N&ew Sibling
-
-_UI_ShowPropertiesView_menu_item = Show &Properties View
-_UI_RefreshViewer_menu_item = &Refresh
-
-_UI_SelectionPage_label = Selection
-_UI_ParentPage_label = Parent
-_UI_ListPage_label = List
-_UI_TreePage_label = Tree
-_UI_TablePage_label = Table
-_UI_TreeWithColumnsPage_label = Tree with Columns
-_UI_ObjectColumn_label = Object
-_UI_SelfColumn_label = Self
-
-_UI_NoObjectSelected = Selected Nothing
-_UI_SingleObjectSelected = Selected Object: {0}
-_UI_MultiObjectSelected = Selected {0} Objects
-
-_UI_OpenEditorError_label = Open Editor
-
-_UI_Wizard_category = Example EMF Model Creation Wizards
-
-_UI_CreateModelError_message = Problems encountered in file "{0}"
-
-_UI_ResourceModelWizard_label = Resource Model
-_UI_ResourceModelWizard_description = Create a new Resource model
-
-_UI_ResourceEditor_label = Resource Model Editor
-
-_UI_ResourceEditorFilenameDefaultBase = My
-_UI_ResourceEditorFilenameExtensions = resource
-
-_UI_Wizard_label = New
-
-_WARN_FilenameExtension = The file name must end in ''.{0}''
-_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
-
-_UI_ModelObject = &Model Object
-_UI_XMLEncoding = &XML Encoding
-_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
-_UI_Wizard_initial_object_description = Select a model object to create
-
-_UI_FileConflict_label = File Conflict
-_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
-
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/plugin.xml b/services/org.eclipse.sensinact.studio.model.resource.editor/plugin.xml
deleted file mode 100644
index c06b32a..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/plugin.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright (c) 2018 CEA.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
-
- Contributors:
- CEA - initial API and implementation and/or initial documentation
-
--->
-<?eclipse version="3.0"?>
-
-<!--
--->
-
-<plugin>
-
- <extension point="org.eclipse.ui.newWizards">
- <!-- @generated resource -->
- <category
- id="org.eclipse.emf.ecore.Wizard.category.ID"
- name="%_UI_Wizard_category"/>
- <wizard
- id="org.eclipse.sensinact.studio.resource.presentation.ResourceModelWizardID"
- name="%_UI_ResourceModelWizard_label"
- class="org.eclipse.sensinact.studio.resource.presentation.ResourceModelWizard"
- category="org.eclipse.emf.ecore.Wizard.category.ID"
- icon="icons/full/obj16/ResourceModelFile.gif">
- <description>%_UI_ResourceModelWizard_description</description>
- <selection class="org.eclipse.core.resources.IResource"/>
- </wizard>
- </extension>
-
- <extension point="org.eclipse.ui.editors">
- <!-- @generated resource -->
- <editor
- id="org.eclipse.sensinact.studio.resource.presentation.ResourceEditorID"
- name="%_UI_ResourceEditor_label"
- icon="icons/full/obj16/ResourceModelFile.gif"
- extensions="resource"
- class="org.eclipse.sensinact.studio.resource.presentation.ResourceEditor"
- contributorClass="org.eclipse.sensinact.studio.resource.presentation.ResourceActionBarContributor">
- </editor>
- </extension>
-
-</plugin>
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceActionBarContributor.java b/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceActionBarContributor.java
deleted file mode 100644
index 2c2f5a1..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceActionBarContributor.java
+++ /dev/null
@@ -1,434 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.presentation;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.emf.common.ui.viewer.IViewerProvider;
-
-import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.emf.edit.domain.IEditingDomainProvider;
-
-import org.eclipse.emf.edit.ui.action.ControlAction;
-import org.eclipse.emf.edit.ui.action.CreateChildAction;
-import org.eclipse.emf.edit.ui.action.CreateSiblingAction;
-import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
-import org.eclipse.emf.edit.ui.action.LoadResourceAction;
-import org.eclipse.emf.edit.ui.action.ValidateAction;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IContributionItem;
-import org.eclipse.jface.action.IContributionManager;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.action.SubContributionItem;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.Viewer;
-
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.PartInitException;
-
-/**
- * This is the action bar contributor for the Resource model editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ResourceActionBarContributor
- extends EditingDomainActionBarContributor
- implements ISelectionChangedListener {
- /**
- * This keeps track of the active editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IEditorPart activeEditorPart;
-
- /**
- * This keeps track of the current selection provider.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ISelectionProvider selectionProvider;
-
- /**
- * This action opens the Properties view.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IAction showPropertiesViewAction =
- new Action(ResourceEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) {
- @Override
- public void run() {
- try {
- getPage().showView("org.eclipse.ui.views.PropertySheet");
- }
- catch (PartInitException exception) {
- ResourceEditorPlugin.INSTANCE.log(exception);
- }
- }
- };
-
- /**
- * This action refreshes the viewer of the current editor if the editor
- * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IAction refreshViewerAction =
- new Action(ResourceEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) {
- @Override
- public boolean isEnabled() {
- return activeEditorPart instanceof IViewerProvider;
- }
-
- @Override
- public void run() {
- if (activeEditorPart instanceof IViewerProvider) {
- Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
- if (viewer != null) {
- viewer.refresh();
- }
- }
- }
- };
-
- /**
- * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
- * generated for the current selection by the item provider.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<IAction> createChildActions;
-
- /**
- * This is the menu manager into which menu contribution items should be added for CreateChild actions.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IMenuManager createChildMenuManager;
-
- /**
- * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
- * generated for the current selection by the item provider.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<IAction> createSiblingActions;
-
- /**
- * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IMenuManager createSiblingMenuManager;
-
- /**
- * This creates an instance of the contributor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceActionBarContributor() {
- super(ADDITIONS_LAST_STYLE);
- loadResourceAction = new LoadResourceAction();
- validateAction = new ValidateAction();
- controlAction = new ControlAction();
- }
-
- /**
- * This adds Separators for editor additions to the tool bar.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void contributeToToolBar(IToolBarManager toolBarManager) {
- toolBarManager.add(new Separator("resource-settings"));
- toolBarManager.add(new Separator("resource-additions"));
- }
-
- /**
- * This adds to the menu bar a menu and some separators for editor additions,
- * as well as the sub-menus for object creation items.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void contributeToMenu(IMenuManager menuManager) {
- super.contributeToMenu(menuManager);
-
- IMenuManager submenuManager = new MenuManager(ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceEditor_menu"), "org.eclipse.sensinact.studio.resourceMenuID");
- menuManager.insertAfter("additions", submenuManager);
- submenuManager.add(new Separator("settings"));
- submenuManager.add(new Separator("actions"));
- submenuManager.add(new Separator("additions"));
- submenuManager.add(new Separator("additions-end"));
-
- // Prepare for CreateChild item addition or removal.
- //
- createChildMenuManager = new MenuManager(ResourceEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
- submenuManager.insertBefore("additions", createChildMenuManager);
-
- // Prepare for CreateSibling item addition or removal.
- //
- createSiblingMenuManager = new MenuManager(ResourceEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
- submenuManager.insertBefore("additions", createSiblingMenuManager);
-
- // Force an update because Eclipse hides empty menus now.
- //
- submenuManager.addMenuListener
- (new IMenuListener() {
- public void menuAboutToShow(IMenuManager menuManager) {
- menuManager.updateAll(true);
- }
- });
-
- addGlobalActions(submenuManager);
- }
-
- /**
- * When the active editor changes, this remembers the change and registers with it as a selection provider.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setActiveEditor(IEditorPart part) {
- super.setActiveEditor(part);
- activeEditorPart = part;
-
- // Switch to the new selection provider.
- //
- if (selectionProvider != null) {
- selectionProvider.removeSelectionChangedListener(this);
- }
- if (part == null) {
- selectionProvider = null;
- }
- else {
- selectionProvider = part.getSite().getSelectionProvider();
- selectionProvider.addSelectionChangedListener(this);
-
- // Fake a selection changed event to update the menus.
- //
- if (selectionProvider.getSelection() != null) {
- selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
- }
- }
- }
-
- /**
- * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
- * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
- * that can be added to the selected object and updating the menus accordingly.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void selectionChanged(SelectionChangedEvent event) {
- // Remove any menu items for old selection.
- //
- if (createChildMenuManager != null) {
- depopulateManager(createChildMenuManager, createChildActions);
- }
- if (createSiblingMenuManager != null) {
- depopulateManager(createSiblingMenuManager, createSiblingActions);
- }
-
- // Query the new selection for appropriate new child/sibling descriptors
- //
- Collection<?> newChildDescriptors = null;
- Collection<?> newSiblingDescriptors = null;
-
- ISelection selection = event.getSelection();
- if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
- Object object = ((IStructuredSelection)selection).getFirstElement();
-
- EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
-
- newChildDescriptors = domain.getNewChildDescriptors(object, null);
- newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
- }
-
- // Generate actions for selection; populate and redraw the menus.
- //
- createChildActions = generateCreateChildActions(newChildDescriptors, selection);
- createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
-
- if (createChildMenuManager != null) {
- populateManager(createChildMenuManager, createChildActions, null);
- createChildMenuManager.update(true);
- }
- if (createSiblingMenuManager != null) {
- populateManager(createSiblingMenuManager, createSiblingActions, null);
- createSiblingMenuManager.update(true);
- }
- }
-
- /**
- * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
- * and returns the collection of these actions.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) {
- Collection<IAction> actions = new ArrayList<IAction>();
- if (descriptors != null) {
- for (Object descriptor : descriptors) {
- actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
- }
- }
- return actions;
- }
-
- /**
- * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
- * and returns the collection of these actions.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) {
- Collection<IAction> actions = new ArrayList<IAction>();
- if (descriptors != null) {
- for (Object descriptor : descriptors) {
- actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
- }
- }
- return actions;
- }
-
- /**
- * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
- * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
- * by inserting them before the specified contribution item <code>contributionID</code>.
- * If <code>contributionID</code> is <code>null</code>, they are simply added.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) {
- if (actions != null) {
- for (IAction action : actions) {
- if (contributionID != null) {
- manager.insertBefore(contributionID, action);
- }
- else {
- manager.add(action);
- }
- }
- }
- }
-
- /**
- * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
- * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) {
- if (actions != null) {
- IContributionItem[] items = manager.getItems();
- for (int i = 0; i < items.length; i++) {
- // Look into SubContributionItems
- //
- IContributionItem contributionItem = items[i];
- while (contributionItem instanceof SubContributionItem) {
- contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
- }
-
- // Delete the ActionContributionItems with matching action.
- //
- if (contributionItem instanceof ActionContributionItem) {
- IAction action = ((ActionContributionItem)contributionItem).getAction();
- if (actions.contains(action)) {
- manager.remove(contributionItem);
- }
- }
- }
- }
- }
-
- /**
- * This populates the pop-up menu before it appears.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void menuAboutToShow(IMenuManager menuManager) {
- super.menuAboutToShow(menuManager);
- MenuManager submenuManager = null;
-
- submenuManager = new MenuManager(ResourceEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
- populateManager(submenuManager, createChildActions, null);
- menuManager.insertBefore("edit", submenuManager);
-
- submenuManager = new MenuManager(ResourceEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
- populateManager(submenuManager, createSiblingActions, null);
- menuManager.insertBefore("edit", submenuManager);
- }
-
- /**
- * This inserts global actions before the "additions-end" separator.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void addGlobalActions(IMenuManager menuManager) {
- menuManager.insertAfter("additions-end", new Separator("ui-actions"));
- menuManager.insertAfter("ui-actions", showPropertiesViewAction);
-
- refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());
- menuManager.insertAfter("ui-actions", refreshViewerAction);
-
- super.addGlobalActions(menuManager);
- }
-
- /**
- * This ensures that a delete action will clean up all references to deleted objects.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected boolean removeAllReferencesOnDelete() {
- return true;
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceEditor.java b/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceEditor.java
deleted file mode 100644
index e200869..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceEditor.java
+++ /dev/null
@@ -1,1834 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.presentation;
-
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.EventObject;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.dialogs.ProgressMonitorDialog;
-
-import org.eclipse.jface.util.LocalSelectionTransfer;
-
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ListViewer;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-
-import org.eclipse.swt.SWT;
-
-import org.eclipse.swt.custom.CTabFolder;
-
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.FileTransfer;
-import org.eclipse.swt.dnd.Transfer;
-
-import org.eclipse.swt.events.ControlAdapter;
-import org.eclipse.swt.events.ControlEvent;
-
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.FillLayout;
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeColumn;
-
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PartInitException;
-
-import org.eclipse.ui.dialogs.SaveAsDialog;
-
-import org.eclipse.ui.ide.IGotoMarker;
-
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.part.MultiPageEditorPart;
-
-import org.eclipse.ui.views.contentoutline.ContentOutline;
-import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
-import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
-
-import org.eclipse.ui.views.properties.IPropertySheetPage;
-import org.eclipse.ui.views.properties.PropertySheet;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.emf.common.command.CommandStack;
-import org.eclipse.emf.common.command.CommandStackListener;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.common.ui.MarkerHelper;
-import org.eclipse.emf.common.ui.ViewerPane;
-
-import org.eclipse.emf.common.ui.editor.ProblemEditorPart;
-
-import org.eclipse.emf.common.ui.viewer.IViewerProvider;
-
-import org.eclipse.emf.common.util.BasicDiagnostic;
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.common.util.URI;
-
-
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-import org.eclipse.emf.ecore.util.EContentAdapter;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-
-import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
-import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.emf.edit.domain.IEditingDomainProvider;
-
-import org.eclipse.emf.edit.provider.AdapterFactoryItemDelegator;
-import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
-import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory;
-
-import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
-
-import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
-
-import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor;
-
-import org.eclipse.emf.edit.ui.dnd.EditingDomainViewerDropAdapter;
-import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
-import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter;
-
-import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
-import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
-import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider;
-
-import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper;
-import org.eclipse.emf.edit.ui.util.EditUIUtil;
-
-import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
-import org.eclipse.ui.actions.WorkspaceModifyOperation;
-
-
-/**
- * This is an example of a Resource model editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ResourceEditor
- extends MultiPageEditorPart
- implements IEditingDomainProvider, ISelectionProvider, IMenuListener, IViewerProvider, IGotoMarker {
- /**
- * This keeps track of the editing domain that is used to track all changes to the model.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected AdapterFactoryEditingDomain editingDomain;
-
- /**
- * This is the one adapter factory used for providing views of the model.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ComposedAdapterFactory adapterFactory;
-
- /**
- * This is the content outline page.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IContentOutlinePage contentOutlinePage;
-
- /**
- * This is a kludge...
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IStatusLineManager contentOutlineStatusLineManager;
-
- /**
- * This is the content outline page's viewer.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TreeViewer contentOutlineViewer;
-
- /**
- * This is the property sheet page.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
-
- /**
- * This is the viewer that shadows the selection in the content outline.
- * The parent relation must be correctly defined for this to work.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TreeViewer selectionViewer;
-
- /**
- * This inverts the roll of parent and child in the content provider and show parents as a tree.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TreeViewer parentViewer;
-
- /**
- * This shows how a tree view works.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TreeViewer treeViewer;
-
- /**
- * This shows how a list view works.
- * A list viewer doesn't support icons.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ListViewer listViewer;
-
- /**
- * This shows how a table view works.
- * A table can be used as a list with icons.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TableViewer tableViewer;
-
- /**
- * This shows how a tree view with columns works.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected TreeViewer treeViewerWithColumns;
-
- /**
- * This keeps track of the active viewer pane, in the book.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ViewerPane currentViewerPane;
-
- /**
- * This keeps track of the active content viewer, which may be either one of the viewers in the pages or the content outline viewer.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Viewer currentViewer;
-
- /**
- * This listens to which ever viewer is active.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ISelectionChangedListener selectionChangedListener;
-
- /**
- * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
-
- /**
- * This keeps track of the selection of the editor as a whole.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ISelection editorSelection = StructuredSelection.EMPTY;
-
- /**
- * The MarkerHelper is responsible for creating workspace resource markers presented
- * in Eclipse's Problems View.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected MarkerHelper markerHelper = new EditUIMarkerHelper();
-
- /**
- * This listens for when the outline becomes active
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IPartListener partListener =
- new IPartListener() {
- public void partActivated(IWorkbenchPart p) {
- if (p instanceof ContentOutline) {
- if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
- getActionBarContributor().setActiveEditor(ResourceEditor.this);
-
- setCurrentViewer(contentOutlineViewer);
- }
- }
- else if (p instanceof PropertySheet) {
- if (propertySheetPages.contains(((PropertySheet)p).getCurrentPage())) {
- getActionBarContributor().setActiveEditor(ResourceEditor.this);
- handleActivate();
- }
- }
- else if (p == ResourceEditor.this) {
- handleActivate();
- }
- }
- public void partBroughtToTop(IWorkbenchPart p) {
- // Ignore.
- }
- public void partClosed(IWorkbenchPart p) {
- // Ignore.
- }
- public void partDeactivated(IWorkbenchPart p) {
- // Ignore.
- }
- public void partOpened(IWorkbenchPart p) {
- // Ignore.
- }
- };
-
- /**
- * Resources that have been removed since last activation.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<Resource> removedResources = new ArrayList<Resource>();
-
- /**
- * Resources that have been changed since last activation.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<Resource> changedResources = new ArrayList<Resource>();
-
- /**
- * Resources that have been saved.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<Resource> savedResources = new ArrayList<Resource>();
-
- /**
- * Map to store the diagnostic associated with a resource.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
-
- /**
- * Controls whether the problem indication should be updated.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected boolean updateProblemIndication = true;
-
- /**
- * Adapter used to update the problem indication when resources are demanded loaded.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected EContentAdapter problemIndicationAdapter =
- new EContentAdapter() {
- protected boolean dispatching;
-
- @Override
- public void notifyChanged(Notification notification) {
- if (notification.getNotifier() instanceof Resource) {
- switch (notification.getFeatureID(Resource.class)) {
- case Resource.RESOURCE__IS_LOADED:
- case Resource.RESOURCE__ERRORS:
- case Resource.RESOURCE__WARNINGS: {
- Resource resource = (Resource)notification.getNotifier();
- Diagnostic diagnostic = analyzeResourceProblems(resource, null);
- if (diagnostic.getSeverity() != Diagnostic.OK) {
- resourceToDiagnosticMap.put(resource, diagnostic);
- }
- else {
- resourceToDiagnosticMap.remove(resource);
- }
- dispatchUpdateProblemIndication();
- break;
- }
- }
- }
- else {
- super.notifyChanged(notification);
- }
- }
-
- protected void dispatchUpdateProblemIndication() {
- if (updateProblemIndication && !dispatching) {
- dispatching = true;
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- dispatching = false;
- updateProblemIndication();
- }
- });
- }
- }
-
- @Override
- protected void setTarget(Resource target) {
- basicSetTarget(target);
- }
-
- @Override
- protected void unsetTarget(Resource target) {
- basicUnsetTarget(target);
- resourceToDiagnosticMap.remove(target);
- dispatchUpdateProblemIndication();
- }
- };
-
- /**
- * This listens for workspace changes.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IResourceChangeListener resourceChangeListener =
- new IResourceChangeListener() {
- public void resourceChanged(IResourceChangeEvent event) {
- IResourceDelta delta = event.getDelta();
- try {
- class ResourceDeltaVisitor implements IResourceDeltaVisitor {
- protected ResourceSet resourceSet = editingDomain.getResourceSet();
- protected Collection<Resource> changedResources = new ArrayList<Resource>();
- protected Collection<Resource> removedResources = new ArrayList<Resource>();
-
- public boolean visit(IResourceDelta delta) {
- if (delta.getResource().getType() == IResource.FILE) {
- if (delta.getKind() == IResourceDelta.REMOVED ||
- delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) {
- Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false);
- if (resource != null) {
- if (delta.getKind() == IResourceDelta.REMOVED) {
- removedResources.add(resource);
- }
- else if (!savedResources.remove(resource)) {
- changedResources.add(resource);
- }
- }
- }
- return false;
- }
-
- return true;
- }
-
- public Collection<Resource> getChangedResources() {
- return changedResources;
- }
-
- public Collection<Resource> getRemovedResources() {
- return removedResources;
- }
- }
-
- final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
- delta.accept(visitor);
-
- if (!visitor.getRemovedResources().isEmpty()) {
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- removedResources.addAll(visitor.getRemovedResources());
- if (!isDirty()) {
- getSite().getPage().closeEditor(ResourceEditor.this, false);
- }
- }
- });
- }
-
- if (!visitor.getChangedResources().isEmpty()) {
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- changedResources.addAll(visitor.getChangedResources());
- if (getSite().getPage().getActiveEditor() == ResourceEditor.this) {
- handleActivate();
- }
- }
- });
- }
- }
- catch (CoreException exception) {
- ResourceEditorPlugin.INSTANCE.log(exception);
- }
- }
- };
-
- /**
- * Handles activation of the editor or it's associated views.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void handleActivate() {
- // Recompute the read only state.
- //
- if (editingDomain.getResourceToReadOnlyMap() != null) {
- editingDomain.getResourceToReadOnlyMap().clear();
-
- // Refresh any actions that may become enabled or disabled.
- //
- setSelection(getSelection());
- }
-
- if (!removedResources.isEmpty()) {
- if (handleDirtyConflict()) {
- getSite().getPage().closeEditor(ResourceEditor.this, false);
- }
- else {
- removedResources.clear();
- changedResources.clear();
- savedResources.clear();
- }
- }
- else if (!changedResources.isEmpty()) {
- changedResources.removeAll(savedResources);
- handleChangedResources();
- changedResources.clear();
- savedResources.clear();
- }
- }
-
- /**
- * Handles what to do with changed resources on activation.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void handleChangedResources() {
- if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
- if (isDirty()) {
- changedResources.addAll(editingDomain.getResourceSet().getResources());
- }
- editingDomain.getCommandStack().flush();
-
- updateProblemIndication = false;
- for (Resource resource : changedResources) {
- if (resource.isLoaded()) {
- resource.unload();
- try {
- resource.load(Collections.EMPTY_MAP);
- }
- catch (IOException exception) {
- if (!resourceToDiagnosticMap.containsKey(resource)) {
- resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
- }
- }
- }
- }
-
- if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
- setSelection(StructuredSelection.EMPTY);
- }
-
- updateProblemIndication = true;
- updateProblemIndication();
- }
- }
-
- /**
- * Updates the problems indication with the information described in the specified diagnostic.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void updateProblemIndication() {
- if (updateProblemIndication) {
- BasicDiagnostic diagnostic =
- new BasicDiagnostic
- (Diagnostic.OK,
- "org.eclipse.sensinact.studio.model.resource.editor",
- 0,
- null,
- new Object [] { editingDomain.getResourceSet() });
- for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
- if (childDiagnostic.getSeverity() != Diagnostic.OK) {
- diagnostic.add(childDiagnostic);
- }
- }
-
- int lastEditorPage = getPageCount() - 1;
- if (lastEditorPage >= 0 && getEditor(lastEditorPage) instanceof ProblemEditorPart) {
- ((ProblemEditorPart)getEditor(lastEditorPage)).setDiagnostic(diagnostic);
- if (diagnostic.getSeverity() != Diagnostic.OK) {
- setActivePage(lastEditorPage);
- }
- }
- else if (diagnostic.getSeverity() != Diagnostic.OK) {
- ProblemEditorPart problemEditorPart = new ProblemEditorPart();
- problemEditorPart.setDiagnostic(diagnostic);
- problemEditorPart.setMarkerHelper(markerHelper);
- try {
- addPage(++lastEditorPage, problemEditorPart, getEditorInput());
- setPageText(lastEditorPage, problemEditorPart.getPartName());
- setActivePage(lastEditorPage);
- showTabs();
- }
- catch (PartInitException exception) {
- ResourceEditorPlugin.INSTANCE.log(exception);
- }
- }
-
- if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
- try {
- markerHelper.updateMarkers(diagnostic);
- }
- catch (CoreException exception) {
- ResourceEditorPlugin.INSTANCE.log(exception);
- }
- }
- }
- }
-
- /**
- * Shows a dialog that asks if conflicting changes should be discarded.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected boolean handleDirtyConflict() {
- return
- MessageDialog.openQuestion
- (getSite().getShell(),
- getString("_UI_FileConflict_label"),
- getString("_WARN_FileConflict"));
- }
-
- /**
- * This creates a model editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceEditor() {
- super();
- initializeEditingDomain();
- }
-
- /**
- * This sets up the editing domain for the model editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void initializeEditingDomain() {
- // Create an adapter factory that yields item providers.
- //
- adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
-
- adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
- adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
- adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
-
- // Create the command stack that will notify this editor as commands are executed.
- //
- BasicCommandStack commandStack = new BasicCommandStack();
-
- // Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus.
- //
- commandStack.addCommandStackListener
- (new CommandStackListener() {
- public void commandStackChanged(final EventObject event) {
- getContainer().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- firePropertyChange(IEditorPart.PROP_DIRTY);
-
- // Try to select the affected objects.
- //
- Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand();
- if (mostRecentCommand != null) {
- setSelectionToViewer(mostRecentCommand.getAffectedObjects());
- }
- for (Iterator<PropertySheetPage> i = propertySheetPages.iterator(); i.hasNext(); ) {
- PropertySheetPage propertySheetPage = i.next();
- if (propertySheetPage.getControl().isDisposed()) {
- i.remove();
- }
- else {
- propertySheetPage.refresh();
- }
- }
- }
- });
- }
- });
-
- // Create the editing domain with a special command stack.
- //
- editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
- }
-
- /**
- * This is here for the listener to be able to call it.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void firePropertyChange(int action) {
- super.firePropertyChange(action);
- }
-
- /**
- * This sets the selection into whichever viewer is active.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setSelectionToViewer(Collection<?> collection) {
- final Collection<?> theSelection = collection;
- // Make sure it's okay.
- //
- if (theSelection != null && !theSelection.isEmpty()) {
- Runnable runnable =
- new Runnable() {
- public void run() {
- // Try to select the items in the current content viewer of the editor.
- //
- if (currentViewer != null) {
- currentViewer.setSelection(new StructuredSelection(theSelection.toArray()), true);
- }
- }
- };
- getSite().getShell().getDisplay().asyncExec(runnable);
- }
- }
-
- /**
- * This returns the editing domain as required by the {@link IEditingDomainProvider} interface.
- * This is important for implementing the static methods of {@link AdapterFactoryEditingDomain}
- * and for supporting {@link org.eclipse.emf.edit.ui.action.CommandAction}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public EditingDomain getEditingDomain() {
- return editingDomain;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public class ReverseAdapterFactoryContentProvider extends AdapterFactoryContentProvider {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ReverseAdapterFactoryContentProvider(AdapterFactory adapterFactory) {
- super(adapterFactory);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object [] getElements(Object object) {
- Object parent = super.getParent(object);
- return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object [] getChildren(Object object) {
- Object parent = super.getParent(object);
- return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean hasChildren(Object object) {
- Object parent = super.getParent(object);
- return parent != null;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Object getParent(Object object) {
- return null;
- }
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setCurrentViewerPane(ViewerPane viewerPane) {
- if (currentViewerPane != viewerPane) {
- if (currentViewerPane != null) {
- currentViewerPane.showFocus(false);
- }
- currentViewerPane = viewerPane;
- }
- setCurrentViewer(currentViewerPane.getViewer());
- }
-
- /**
- * This makes sure that one content viewer, either for the current page or the outline view, if it has focus,
- * is the current one.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setCurrentViewer(Viewer viewer) {
- // If it is changing...
- //
- if (currentViewer != viewer) {
- if (selectionChangedListener == null) {
- // Create the listener on demand.
- //
- selectionChangedListener =
- new ISelectionChangedListener() {
- // This just notifies those things that are affected by the section.
- //
- public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
- setSelection(selectionChangedEvent.getSelection());
- }
- };
- }
-
- // Stop listening to the old one.
- //
- if (currentViewer != null) {
- currentViewer.removeSelectionChangedListener(selectionChangedListener);
- }
-
- // Start listening to the new one.
- //
- if (viewer != null) {
- viewer.addSelectionChangedListener(selectionChangedListener);
- }
-
- // Remember it.
- //
- currentViewer = viewer;
-
- // Set the editors selection based on the current viewer's selection.
- //
- setSelection(currentViewer == null ? StructuredSelection.EMPTY : currentViewer.getSelection());
- }
- }
-
- /**
- * This returns the viewer as required by the {@link IViewerProvider} interface.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public Viewer getViewer() {
- return currentViewer;
- }
-
- /**
- * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void createContextMenuFor(StructuredViewer viewer) {
- MenuManager contextMenu = new MenuManager("#PopUp");
- contextMenu.add(new Separator("additions"));
- contextMenu.setRemoveAllWhenShown(true);
- contextMenu.addMenuListener(this);
- Menu menu= contextMenu.createContextMenu(viewer.getControl());
- viewer.getControl().setMenu(menu);
- getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
-
- int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
- Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance(), LocalSelectionTransfer.getTransfer(), FileTransfer.getInstance() };
- viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
- viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
- }
-
- /**
- * This is the method called to load a resource into the editing domain's resource set based on the editor's input.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void createModel() {
- URI resourceURI = EditUIUtil.getURI(getEditorInput(), editingDomain.getResourceSet().getURIConverter());
- Exception exception = null;
- Resource resource = null;
- try {
- // Load the resource through the editing domain.
- //
- resource = editingDomain.getResourceSet().getResource(resourceURI, true);
- }
- catch (Exception e) {
- exception = e;
- resource = editingDomain.getResourceSet().getResource(resourceURI, false);
- }
-
- Diagnostic diagnostic = analyzeResourceProblems(resource, exception);
- if (diagnostic.getSeverity() != Diagnostic.OK) {
- resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
- }
- editingDomain.getResourceSet().eAdapters().add(problemIndicationAdapter);
- }
-
- /**
- * Returns a diagnostic describing the errors and warnings listed in the resource
- * and the specified exception (if any).
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) {
- boolean hasErrors = !resource.getErrors().isEmpty();
- if (hasErrors || !resource.getWarnings().isEmpty()) {
- BasicDiagnostic basicDiagnostic =
- new BasicDiagnostic
- (hasErrors ? Diagnostic.ERROR : Diagnostic.WARNING,
- "org.eclipse.sensinact.studio.model.resource.editor",
- 0,
- getString("_UI_CreateModelError_message", resource.getURI()),
- new Object [] { exception == null ? (Object)resource : exception });
- basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
- return basicDiagnostic;
- }
- else if (exception != null) {
- return
- new BasicDiagnostic
- (Diagnostic.ERROR,
- "org.eclipse.sensinact.studio.model.resource.editor",
- 0,
- getString("_UI_CreateModelError_message", resource.getURI()),
- new Object[] { exception });
- }
- else {
- return Diagnostic.OK_INSTANCE;
- }
- }
-
- /**
- * This is the method used by the framework to install your own controls.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void createPages() {
- // Creates the model from the editor input
- //
- createModel();
-
- // Only creates the other pages if there is something that can be edited
- //
- if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
- // Create a page for the selection tree view.
- //
- {
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), ResourceEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- Tree tree = new Tree(composite, SWT.MULTI);
- TreeViewer newTreeViewer = new TreeViewer(tree);
- return newTreeViewer;
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
- viewerPane.createControl(getContainer());
-
- selectionViewer = (TreeViewer)viewerPane.getViewer();
- selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
- selectionViewer.setUseHashlookup(true);
-
- selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
- selectionViewer.setInput(editingDomain.getResourceSet());
- selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
- viewerPane.setTitle(editingDomain.getResourceSet());
-
- new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
-
- createContextMenuFor(selectionViewer);
- int pageIndex = addPage(viewerPane.getControl());
- setPageText(pageIndex, getString("_UI_SelectionPage_label"));
- }
-
- // Create a page for the parent tree view.
- //
- {
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), ResourceEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- Tree tree = new Tree(composite, SWT.MULTI);
- TreeViewer newTreeViewer = new TreeViewer(tree);
- return newTreeViewer;
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
- viewerPane.createControl(getContainer());
-
- parentViewer = (TreeViewer)viewerPane.getViewer();
- parentViewer.setAutoExpandLevel(30);
- parentViewer.setContentProvider(new ReverseAdapterFactoryContentProvider(adapterFactory));
- parentViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
-
- createContextMenuFor(parentViewer);
- int pageIndex = addPage(viewerPane.getControl());
- setPageText(pageIndex, getString("_UI_ParentPage_label"));
- }
-
- // This is the page for the list viewer
- //
- {
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), ResourceEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new ListViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
- viewerPane.createControl(getContainer());
- listViewer = (ListViewer)viewerPane.getViewer();
- listViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
- listViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
-
- createContextMenuFor(listViewer);
- int pageIndex = addPage(viewerPane.getControl());
- setPageText(pageIndex, getString("_UI_ListPage_label"));
- }
-
- // This is the page for the tree viewer
- //
- {
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), ResourceEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new TreeViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
- viewerPane.createControl(getContainer());
- treeViewer = (TreeViewer)viewerPane.getViewer();
- treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
- treeViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
-
- new AdapterFactoryTreeEditor(treeViewer.getTree(), adapterFactory);
-
- createContextMenuFor(treeViewer);
- int pageIndex = addPage(viewerPane.getControl());
- setPageText(pageIndex, getString("_UI_TreePage_label"));
- }
-
- // This is the page for the table viewer.
- //
- {
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), ResourceEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new TableViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
- viewerPane.createControl(getContainer());
- tableViewer = (TableViewer)viewerPane.getViewer();
-
- Table table = tableViewer.getTable();
- TableLayout layout = new TableLayout();
- table.setLayout(layout);
- table.setHeaderVisible(true);
- table.setLinesVisible(true);
-
- TableColumn objectColumn = new TableColumn(table, SWT.NONE);
- layout.addColumnData(new ColumnWeightData(3, 100, true));
- objectColumn.setText(getString("_UI_ObjectColumn_label"));
- objectColumn.setResizable(true);
-
- TableColumn selfColumn = new TableColumn(table, SWT.NONE);
- layout.addColumnData(new ColumnWeightData(2, 100, true));
- selfColumn.setText(getString("_UI_SelfColumn_label"));
- selfColumn.setResizable(true);
-
- tableViewer.setColumnProperties(new String [] {"a", "b"});
- tableViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
- tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
-
- createContextMenuFor(tableViewer);
- int pageIndex = addPage(viewerPane.getControl());
- setPageText(pageIndex, getString("_UI_TablePage_label"));
- }
-
- // This is the page for the table tree viewer.
- //
- {
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), ResourceEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new TreeViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
- viewerPane.createControl(getContainer());
-
- treeViewerWithColumns = (TreeViewer)viewerPane.getViewer();
-
- Tree tree = treeViewerWithColumns.getTree();
- tree.setLayoutData(new FillLayout());
- tree.setHeaderVisible(true);
- tree.setLinesVisible(true);
-
- TreeColumn objectColumn = new TreeColumn(tree, SWT.NONE);
- objectColumn.setText(getString("_UI_ObjectColumn_label"));
- objectColumn.setResizable(true);
- objectColumn.setWidth(250);
-
- TreeColumn selfColumn = new TreeColumn(tree, SWT.NONE);
- selfColumn.setText(getString("_UI_SelfColumn_label"));
- selfColumn.setResizable(true);
- selfColumn.setWidth(200);
-
- treeViewerWithColumns.setColumnProperties(new String [] {"a", "b"});
- treeViewerWithColumns.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
- treeViewerWithColumns.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
-
- createContextMenuFor(treeViewerWithColumns);
- int pageIndex = addPage(viewerPane.getControl());
- setPageText(pageIndex, getString("_UI_TreeWithColumnsPage_label"));
- }
-
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- setActivePage(0);
- }
- });
- }
-
- // Ensures that this editor will only display the page's tab
- // area if there are more than one page
- //
- getContainer().addControlListener
- (new ControlAdapter() {
- boolean guard = false;
- @Override
- public void controlResized(ControlEvent event) {
- if (!guard) {
- guard = true;
- hideTabs();
- guard = false;
- }
- }
- });
-
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- updateProblemIndication();
- }
- });
- }
-
- /**
- * If there is just one page in the multi-page editor part,
- * this hides the single tab at the bottom.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void hideTabs() {
- if (getPageCount() <= 1) {
- setPageText(0, "");
- if (getContainer() instanceof CTabFolder) {
- ((CTabFolder)getContainer()).setTabHeight(1);
- Point point = getContainer().getSize();
- getContainer().setSize(point.x, point.y + 6);
- }
- }
- }
-
- /**
- * If there is more than one page in the multi-page editor part,
- * this shows the tabs at the bottom.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void showTabs() {
- if (getPageCount() > 1) {
- setPageText(0, getString("_UI_SelectionPage_label"));
- if (getContainer() instanceof CTabFolder) {
- ((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT);
- Point point = getContainer().getSize();
- getContainer().setSize(point.x, point.y - 6);
- }
- }
- }
-
- /**
- * This is used to track the active viewer.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected void pageChange(int pageIndex) {
- super.pageChange(pageIndex);
-
- if (contentOutlinePage != null) {
- handleContentOutlineSelection(contentOutlinePage.getSelection());
- }
- }
-
- /**
- * This is how the framework determines which interfaces we implement.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @SuppressWarnings("rawtypes")
- @Override
- public Object getAdapter(Class key) {
- if (key.equals(IContentOutlinePage.class)) {
- return showOutlineView() ? getContentOutlinePage() : null;
- }
- else if (key.equals(IPropertySheetPage.class)) {
- return getPropertySheetPage();
- }
- else if (key.equals(IGotoMarker.class)) {
- return this;
- }
- else {
- return super.getAdapter(key);
- }
- }
-
- /**
- * This accesses a cached version of the content outliner.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public IContentOutlinePage getContentOutlinePage() {
- if (contentOutlinePage == null) {
- // The content outline is just a tree.
- //
- class MyContentOutlinePage extends ContentOutlinePage {
- @Override
- public void createControl(Composite parent) {
- super.createControl(parent);
- contentOutlineViewer = getTreeViewer();
- contentOutlineViewer.addSelectionChangedListener(this);
-
- // Set up the tree viewer.
- //
- contentOutlineViewer.setUseHashlookup(true);
- contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
- contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
- contentOutlineViewer.setInput(editingDomain.getResourceSet());
-
- // Make sure our popups work.
- //
- createContextMenuFor(contentOutlineViewer);
-
- if (!editingDomain.getResourceSet().getResources().isEmpty()) {
- // Select the root object in the view.
- //
- contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
- }
- }
-
- @Override
- public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {
- super.makeContributions(menuManager, toolBarManager, statusLineManager);
- contentOutlineStatusLineManager = statusLineManager;
- }
-
- @Override
- public void setActionBars(IActionBars actionBars) {
- super.setActionBars(actionBars);
- getActionBarContributor().shareGlobalActions(this, actionBars);
- }
- }
-
- contentOutlinePage = new MyContentOutlinePage();
-
- // Listen to selection so that we can handle it is a special way.
- //
- contentOutlinePage.addSelectionChangedListener
- (new ISelectionChangedListener() {
- // This ensures that we handle selections correctly.
- //
- public void selectionChanged(SelectionChangedEvent event) {
- handleContentOutlineSelection(event.getSelection());
- }
- });
- }
-
- return contentOutlinePage;
- }
-
- /**
- * This accesses a cached version of the property sheet.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public IPropertySheetPage getPropertySheetPage() {
- PropertySheetPage propertySheetPage =
- new ExtendedPropertySheetPage(editingDomain) {
- @Override
- public void setSelectionToViewer(List<?> selection) {
- ResourceEditor.this.setSelectionToViewer(selection);
- ResourceEditor.this.setFocus();
- }
-
- @Override
- public void setActionBars(IActionBars actionBars) {
- super.setActionBars(actionBars);
- getActionBarContributor().shareGlobalActions(this, actionBars);
- }
- };
- propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
- propertySheetPages.add(propertySheetPage);
-
- return propertySheetPage;
- }
-
- /**
- * This deals with how we want selection in the outliner to affect the other views.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void handleContentOutlineSelection(ISelection selection) {
- if (currentViewerPane != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
- Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
- if (selectedElements.hasNext()) {
- // Get the first selected element.
- //
- Object selectedElement = selectedElements.next();
-
- // If it's the selection viewer, then we want it to select the same selection as this selection.
- //
- if (currentViewerPane.getViewer() == selectionViewer) {
- ArrayList<Object> selectionList = new ArrayList<Object>();
- selectionList.add(selectedElement);
- while (selectedElements.hasNext()) {
- selectionList.add(selectedElements.next());
- }
-
- // Set the selection to the widget.
- //
- selectionViewer.setSelection(new StructuredSelection(selectionList));
- }
- else {
- // Set the input to the widget.
- //
- if (currentViewerPane.getViewer().getInput() != selectedElement) {
- currentViewerPane.getViewer().setInput(selectedElement);
- currentViewerPane.setTitle(selectedElement);
- }
- }
- }
- }
- }
-
- /**
- * This is for implementing {@link IEditorPart} and simply tests the command stack.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean isDirty() {
- return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
- }
-
- /**
- * This is for implementing {@link IEditorPart} and simply saves the model file.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void doSave(IProgressMonitor progressMonitor) {
- // Save only resources that have actually changed.
- //
- final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
- saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED, Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
- saveOptions.put(Resource.OPTION_LINE_DELIMITER, Resource.OPTION_LINE_DELIMITER_UNSPECIFIED);
-
- // Do the work within an operation because this is a long running activity that modifies the workbench.
- //
- WorkspaceModifyOperation operation =
- new WorkspaceModifyOperation() {
- // This is the method that gets invoked when the operation runs.
- //
- @Override
- public void execute(IProgressMonitor monitor) {
- // Save the resources to the file system.
- //
- boolean first = true;
- List<Resource> resources = editingDomain.getResourceSet().getResources();
- for (int i = 0; i < resources.size(); ++i) {
- Resource resource = resources.get(i);
- if ((first || !resource.getContents().isEmpty() || isPersisted(resource)) && !editingDomain.isReadOnly(resource)) {
- try {
- long timeStamp = resource.getTimeStamp();
- resource.save(saveOptions);
- if (resource.getTimeStamp() != timeStamp) {
- savedResources.add(resource);
- }
- }
- catch (Exception exception) {
- resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
- }
- first = false;
- }
- }
- }
- };
-
- updateProblemIndication = false;
- try {
- // This runs the options, and shows progress.
- //
- new ProgressMonitorDialog(getSite().getShell()).run(true, false, operation);
-
- // Refresh the necessary state.
- //
- ((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone();
- firePropertyChange(IEditorPart.PROP_DIRTY);
- }
- catch (Exception exception) {
- // Something went wrong that shouldn't.
- //
- ResourceEditorPlugin.INSTANCE.log(exception);
- }
- updateProblemIndication = true;
- updateProblemIndication();
- }
-
- /**
- * This returns whether something has been persisted to the URI of the specified resource.
- * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected boolean isPersisted(Resource resource) {
- boolean result = false;
- try {
- InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI());
- if (stream != null) {
- result = true;
- stream.close();
- }
- }
- catch (IOException e) {
- // Ignore
- }
- return result;
- }
-
- /**
- * This always returns true because it is not currently supported.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean isSaveAsAllowed() {
- return true;
- }
-
- /**
- * This also changes the editor's input.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void doSaveAs() {
- SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
- saveAsDialog.open();
- IPath path = saveAsDialog.getResult();
- if (path != null) {
- IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
- if (file != null) {
- doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
- }
- }
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected void doSaveAs(URI uri, IEditorInput editorInput) {
- (editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
- setInputWithNotify(editorInput);
- setPartName(editorInput.getName());
- IProgressMonitor progressMonitor =
- getActionBars().getStatusLineManager() != null ?
- getActionBars().getStatusLineManager().getProgressMonitor() :
- new NullProgressMonitor();
- doSave(progressMonitor);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void gotoMarker(IMarker marker) {
- List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
- if (!targetObjects.isEmpty()) {
- setSelectionToViewer(targetObjects);
- }
- }
-
- /**
- * This is called during startup.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void init(IEditorSite site, IEditorInput editorInput) {
- setSite(site);
- setInputWithNotify(editorInput);
- setPartName(editorInput.getName());
- site.setSelectionProvider(this);
- site.getPage().addPartListener(partListener);
- ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setFocus() {
- if (currentViewerPane != null) {
- currentViewerPane.setFocus();
- }
- else {
- getControl(getActivePage()).setFocus();
- }
- }
-
- /**
- * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void addSelectionChangedListener(ISelectionChangedListener listener) {
- selectionChangedListeners.add(listener);
- }
-
- /**
- * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void removeSelectionChangedListener(ISelectionChangedListener listener) {
- selectionChangedListeners.remove(listener);
- }
-
- /**
- * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public ISelection getSelection() {
- return editorSelection;
- }
-
- /**
- * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection.
- * Calling this result will notify the listeners.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setSelection(ISelection selection) {
- editorSelection = selection;
-
- for (ISelectionChangedListener listener : selectionChangedListeners) {
- listener.selectionChanged(new SelectionChangedEvent(this, selection));
- }
- setStatusLineManager(selection);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setStatusLineManager(ISelection selection) {
- IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ?
- contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
-
- if (statusLineManager != null) {
- if (selection instanceof IStructuredSelection) {
- Collection<?> collection = ((IStructuredSelection)selection).toList();
- switch (collection.size()) {
- case 0: {
- statusLineManager.setMessage(getString("_UI_NoObjectSelected"));
- break;
- }
- case 1: {
- String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next());
- statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text));
- break;
- }
- default: {
- statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size())));
- break;
- }
- }
- }
- else {
- statusLineManager.setMessage("");
- }
- }
- }
-
- /**
- * This looks up a string in the plugin's plugin.properties file.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private static String getString(String key) {
- return ResourceEditorPlugin.INSTANCE.getString(key);
- }
-
- /**
- * This looks up a string in plugin.properties, making a substitution.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private static String getString(String key, Object s1) {
- return ResourceEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
- }
-
- /**
- * This implements {@link org.eclipse.jface.action.IMenuListener} to help fill the context menus with contributions from the Edit menu.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void menuAboutToShow(IMenuManager menuManager) {
- ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EditingDomainActionBarContributor getActionBarContributor() {
- return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public IActionBars getActionBars() {
- return getActionBarContributor().getActionBars();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public AdapterFactory getAdapterFactory() {
- return adapterFactory;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void dispose() {
- updateProblemIndication = false;
-
- ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener);
-
- getSite().getPage().removePartListener(partListener);
-
- adapterFactory.dispose();
-
- if (getActionBarContributor().getActiveEditor() == this) {
- getActionBarContributor().setActiveEditor(null);
- }
-
- for (PropertySheetPage propertySheetPage : propertySheetPages) {
- propertySheetPage.dispose();
- }
-
- if (contentOutlinePage != null) {
- contentOutlinePage.dispose();
- }
-
- super.dispose();
- }
-
- /**
- * Returns whether the outline view should be presented to the user.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected boolean showOutlineView() {
- return true;
- }
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceEditorPlugin.java b/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceEditorPlugin.java
deleted file mode 100644
index 424ee20..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceEditorPlugin.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.presentation;
-
-import org.eclipse.emf.common.EMFPlugin;
-
-import org.eclipse.emf.common.ui.EclipseUIPlugin;
-
-import org.eclipse.emf.common.util.ResourceLocator;
-
-/**
- * This is the central singleton for the Resource editor plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public final class ResourceEditorPlugin extends EMFPlugin {
- /**
- * Keep track of the singleton.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static final ResourceEditorPlugin INSTANCE = new ResourceEditorPlugin();
-
- /**
- * Keep track of the singleton.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private static Implementation plugin;
-
- /**
- * Create the instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceEditorPlugin() {
- super
- (new ResourceLocator [] {
- });
- }
-
- /**
- * Returns the singleton instance of the Eclipse plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the singleton instance.
- * @generated
- */
- @Override
- public ResourceLocator getPluginResourceLocator() {
- return plugin;
- }
-
- /**
- * Returns the singleton instance of the Eclipse plugin.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the singleton instance.
- * @generated
- */
- public static Implementation getPlugin() {
- return plugin;
- }
-
- /**
- * The actual implementation of the Eclipse <b>Plugin</b>.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static class Implementation extends EclipseUIPlugin {
- /**
- * Creates an instance.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Implementation() {
- super();
-
- // Remember the static instance.
- //
- plugin = this;
- }
- }
-
-}
diff --git a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceModelWizard.java b/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceModelWizard.java
deleted file mode 100644
index 1d82ce8..0000000
--- a/services/org.eclipse.sensinact.studio.model.resource.editor/src/org/eclipse/sensinact/studio/resource/presentation/ResourceModelWizard.java
+++ /dev/null
@@ -1,639 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/**
- */
-package org.eclipse.sensinact.studio.resource.presentation;
-
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.MissingResourceException;
-import java.util.StringTokenizer;
-
-import org.eclipse.emf.common.CommonPlugin;
-
-import org.eclipse.emf.common.util.URI;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EClassifier;
-
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.emf.ecore.xmi.XMLResource;
-
-import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-
-import org.eclipse.jface.dialogs.MessageDialog;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.jface.wizard.WizardPage;
-
-import org.eclipse.swt.SWT;
-
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.ModifyEvent;
-
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-
-import org.eclipse.ui.actions.WorkspaceModifyOperation;
-
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.part.ISetSelectionTarget;
-
-import org.eclipse.sensinact.studio.resource.ResourceFactory;
-import org.eclipse.sensinact.studio.resource.ResourcePackage;
-import org.eclipse.sensinact.studio.resource.provider.ResourceEditPlugin;
-
-
-import org.eclipse.core.runtime.Path;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-
-
-/**
- * This is a simple wizard for creating a new model file.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ResourceModelWizard extends Wizard implements INewWizard {
- /**
- * The supported extensions for created files.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static final List<String> FILE_EXTENSIONS =
- Collections.unmodifiableList(Arrays.asList(ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceEditorFilenameExtensions").split("\\s*,\\s*")));
-
- /**
- * A formatted list of supported file extensions, suitable for display.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static final String FORMATTED_FILE_EXTENSIONS =
- ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", ");
-
- /**
- * This caches an instance of the model package.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ResourcePackage resourcePackage = ResourcePackage.eINSTANCE;
-
- /**
- * This caches an instance of the model factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ResourceFactory resourceFactory = resourcePackage.getResourceFactory();
-
- /**
- * This is the file creation page.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ResourceModelWizardNewFileCreationPage newFileCreationPage;
-
- /**
- * This is the initial object creation page.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ResourceModelWizardInitialObjectCreationPage initialObjectCreationPage;
-
- /**
- * Remember the selection during initialization for populating the default container.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IStructuredSelection selection;
-
- /**
- * Remember the workbench during initialization.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected IWorkbench workbench;
-
- /**
- * Caches the names of the types that can be created as the root object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected List<String> initialObjectNames;
-
- /**
- * This just records the information.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void init(IWorkbench workbench, IStructuredSelection selection) {
- this.workbench = workbench;
- this.selection = selection;
- setWindowTitle(ResourceEditorPlugin.INSTANCE.getString("_UI_Wizard_label"));
- setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(ResourceEditorPlugin.INSTANCE.getImage("full/wizban/NewResource")));
- }
-
- /**
- * Returns the names of the types that can be created as the root object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<String> getInitialObjectNames() {
- if (initialObjectNames == null) {
- initialObjectNames = new ArrayList<String>();
- for (EClassifier eClassifier : resourcePackage.getEClassifiers()) {
- if (eClassifier instanceof EClass) {
- EClass eClass = (EClass)eClassifier;
- if (!eClass.isAbstract()) {
- initialObjectNames.add(eClass.getName());
- }
- }
- }
- Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator());
- }
- return initialObjectNames;
- }
-
- /**
- * Create a new model.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected EObject createInitialModel() {
- EClass eClass = (EClass)resourcePackage.getEClassifier(initialObjectCreationPage.getInitialObjectName());
- EObject rootObject = resourceFactory.create(eClass);
- return rootObject;
- }
-
- /**
- * Do the work after everything is specified.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public boolean performFinish() {
- try {
- // Remember the file.
- //
- final IFile modelFile = getModelFile();
-
- // Do the work within an operation.
- //
- WorkspaceModifyOperation operation =
- new WorkspaceModifyOperation() {
- @Override
- protected void execute(IProgressMonitor progressMonitor) {
- try {
- // Create a resource set
- //
- ResourceSet resourceSet = new ResourceSetImpl();
-
- // Get the URI of the model file.
- //
- URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
-
- // Create a resource for this file.
- //
- Resource resource = resourceSet.createResource(fileURI);
-
- // Add the initial model object to the contents.
- //
- EObject rootObject = createInitialModel();
- if (rootObject != null) {
- resource.getContents().add(rootObject);
- }
-
- // Save the contents of the resource to the file system.
- //
- Map<Object, Object> options = new HashMap<Object, Object>();
- options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding());
- resource.save(options);
- }
- catch (Exception exception) {
- ResourceEditorPlugin.INSTANCE.log(exception);
- }
- finally {
- progressMonitor.done();
- }
- }
- };
-
- getContainer().run(false, false, operation);
-
- // Select the new file resource in the current view.
- //
- IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
- IWorkbenchPage page = workbenchWindow.getActivePage();
- final IWorkbenchPart activePart = page.getActivePart();
- if (activePart instanceof ISetSelectionTarget) {
- final ISelection targetSelection = new StructuredSelection(modelFile);
- getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
- }
- });
- }
-
- // Open an editor on the new file.
- //
- try {
- page.openEditor
- (new FileEditorInput(modelFile),
- workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());
- }
- catch (PartInitException exception) {
- MessageDialog.openError(workbenchWindow.getShell(), ResourceEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage());
- return false;
- }
-
- return true;
- }
- catch (Exception exception) {
- ResourceEditorPlugin.INSTANCE.log(exception);
- return false;
- }
- }
-
- /**
- * This is the one page of the wizard.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public class ResourceModelWizardNewFileCreationPage extends WizardNewFileCreationPage {
- /**
- * Pass in the selection.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) {
- super(pageId, selection);
- }
-
- /**
- * The framework calls this to see if the file is correct.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected boolean validatePage() {
- if (super.validatePage()) {
- String extension = new Path(getFileName()).getFileExtension();
- if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
- String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension";
- setErrorMessage(ResourceEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
- return false;
- }
- return true;
- }
- return false;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public IFile getModelFile() {
- return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
- }
- }
-
- /**
- * This is the page where the type of object to create is selected.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public class ResourceModelWizardInitialObjectCreationPage extends WizardPage {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Combo initialObjectField;
-
- /**
- * @generated
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- */
- protected List<String> encodings;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Combo encodingField;
-
- /**
- * Pass in the selection.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ResourceModelWizardInitialObjectCreationPage(String pageId) {
- super(pageId);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void createControl(Composite parent) {
- Composite composite = new Composite(parent, SWT.NONE); {
- GridLayout layout = new GridLayout();
- layout.numColumns = 1;
- layout.verticalSpacing = 12;
- composite.setLayout(layout);
-
- GridData data = new GridData();
- data.verticalAlignment = GridData.FILL;
- data.grabExcessVerticalSpace = true;
- data.horizontalAlignment = GridData.FILL;
- composite.setLayoutData(data);
- }
-
- Label containerLabel = new Label(composite, SWT.LEFT);
- {
- containerLabel.setText(ResourceEditorPlugin.INSTANCE.getString("_UI_ModelObject"));
-
- GridData data = new GridData();
- data.horizontalAlignment = GridData.FILL;
- containerLabel.setLayoutData(data);
- }
-
- initialObjectField = new Combo(composite, SWT.BORDER);
- {
- GridData data = new GridData();
- data.horizontalAlignment = GridData.FILL;
- data.grabExcessHorizontalSpace = true;
- initialObjectField.setLayoutData(data);
- }
-
- for (String objectName : getInitialObjectNames()) {
- initialObjectField.add(getLabel(objectName));
- }
-
- if (initialObjectField.getItemCount() == 1) {
- initialObjectField.select(0);
- }
- initialObjectField.addModifyListener(validator);
-
- Label encodingLabel = new Label(composite, SWT.LEFT);
- {
- encodingLabel.setText(ResourceEditorPlugin.INSTANCE.getString("_UI_XMLEncoding"));
-
- GridData data = new GridData();
- data.horizontalAlignment = GridData.FILL;
- encodingLabel.setLayoutData(data);
- }
- encodingField = new Combo(composite, SWT.BORDER);
- {
- GridData data = new GridData();
- data.horizontalAlignment = GridData.FILL;
- data.grabExcessHorizontalSpace = true;
- encodingField.setLayoutData(data);
- }
-
- for (String encoding : getEncodings()) {
- encodingField.add(encoding);
- }
-
- encodingField.select(0);
- encodingField.addModifyListener(validator);
-
- setPageComplete(validatePage());
- setControl(composite);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected ModifyListener validator =
- new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- setPageComplete(validatePage());
- }
- };
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected boolean validatePage() {
- return getInitialObjectName() != null && getEncodings().contains(encodingField.getText());
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setVisible(boolean visible) {
- super.setVisible(visible);
- if (visible) {
- if (initialObjectField.getItemCount() == 1) {
- initialObjectField.clearSelection();
- encodingField.setFocus();
- }
- else {
- encodingField.clearSelection();
- initialObjectField.setFocus();
- }
- }
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public String getInitialObjectName() {
- String label = initialObjectField.getText();
-
- for (String name : getInitialObjectNames()) {
- if (getLabel(name).equals(label)) {
- return name;
- }
- }
- return null;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public String getEncoding() {
- return encodingField.getText();
- }
-
- /**
- * Returns the label for the specified type name.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected String getLabel(String typeName) {
- try {
- return ResourceEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type");
- }
- catch(MissingResourceException mre) {
- ResourceEditorPlugin.INSTANCE.log(mre);
- }
- return typeName;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected Collection<String> getEncodings() {
- if (encodings == null) {
- encodings = new ArrayList<String>();
- for (StringTokenizer stringTokenizer = new StringTokenizer(ResourceEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) {
- encodings.add(stringTokenizer.nextToken());
- }
- }
- return encodings;
- }
- }
-
- /**
- * The framework calls this to create the contents of the wizard.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void addPages() {
- // Create a page, set the title, and the initial model file name.
- //
- newFileCreationPage = new ResourceModelWizardNewFileCreationPage("Whatever", selection);
- newFileCreationPage.setTitle(ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceModelWizard_label"));
- newFileCreationPage.setDescription(ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceModelWizard_description"));
- newFileCreationPage.setFileName(ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0));
- addPage(newFileCreationPage);
-
- // Try and get the resource selection to determine a current directory for the file dialog.
- //
- if (selection != null && !selection.isEmpty()) {
- // Get the resource...
- //
- Object selectedElement = selection.iterator().next();
- if (selectedElement instanceof IResource) {
- // Get the resource parent, if its a file.
- //
- IResource selectedResource = (IResource)selectedElement;
- if (selectedResource.getType() == IResource.FILE) {
- selectedResource = selectedResource.getParent();
- }
-
- // This gives us a directory...
- //
- if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
- // Set this for the container.
- //
- newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
-
- // Make up a unique new name here.
- //
- String defaultModelBaseFilename = ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceEditorFilenameDefaultBase");
- String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
- String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension;
- for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
- modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension;
- }
- newFileCreationPage.setFileName(modelFilename);
- }
- }
- }
- initialObjectCreationPage = new ResourceModelWizardInitialObjectCreationPage("Whatever2");
- initialObjectCreationPage.setTitle(ResourceEditorPlugin.INSTANCE.getString("_UI_ResourceModelWizard_label"));
- initialObjectCreationPage.setDescription(ResourceEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description"));
- addPage(initialObjectCreationPage);
- }
-
- /**
- * Get the file from the page.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public IFile getModelFile() {
- return newFileCreationPage.getModelFile();
- }
-
-}
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/.classpath b/ui/org.eclipse.sensinact.studio.view.piax/.classpath
deleted file mode 100644
index 098194c..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/.project b/ui/org.eclipse.sensinact.studio.view.piax/.project
deleted file mode 100644
index d9b126a..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.sensinact.studio.view.piax</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/META-INF/MANIFEST.MF b/ui/org.eclipse.sensinact.studio.view.piax/META-INF/MANIFEST.MF
deleted file mode 100644
index 01ca64e..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Piax
-Bundle-SymbolicName: org.eclipse.sensinact.studio.view.piax;singleton:=true
-Bundle-Version: 1.0.0.qualifier
-Bundle-Activator: org.eclipse.sensinact.studio.view.piax.Activator
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.apache.log4j,
- org.eclipse.sensinact.studio.model.resource,
- org.json,
- org.eclipse.sensinact.studio.model.manager,
- org.eclipse.sensinact.studio.http.messages,
- org.eclipse.sensinact.studio.http.services,
- org.eclipse.sensinact.studio.ui.common,
- org.eclipse.sensinact.studio.preferences
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/about.html b/ui/org.eclipse.sensinact.studio.view.piax/about.html
deleted file mode 100644
index 3b39f88..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/about.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-
-</body></html>
\ No newline at end of file
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/build.properties b/ui/org.eclipse.sensinact.studio.view.piax/build.properties
deleted file mode 100644
index 2fb53f8..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Copyright (c) 2018 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-source.. = src/
-output.. = bin/
-bin.includes = plugin.xml,\
- META-INF/,\
- .
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/plugin.xml b/ui/org.eclipse.sensinact.studio.view.piax/plugin.xml
deleted file mode 100644
index 4943481..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/plugin.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright (c) 2018 CEA.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
-
- Contributors:
- CEA - initial API and implementation and/or initial documentation
-
--->
-<?eclipse version="3.4"?>
-<plugin>
- <extension
- point="org.eclipse.ui.views">
- <e4view
- category="org.eclipse.sensinact.studio.views.category"
- class="org.eclipse.sensinact.studio.view.piax.PiaxView"
- id="org.eclipse.sensinact.studio.view.piax.view"
- name="Piax configuration"
- restorable="true">
- </e4view>
- </extension>
-
-</plugin>
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/Activator.java b/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/Activator.java
deleted file mode 100644
index 12265b0..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/Activator.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-package org.eclipse.sensinact.studio.view.piax;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class Activator extends AbstractUIPlugin {
-
- // The plug-in ID
- public static final String PLUGIN_ID = "org.eclipse.sensinact.studio.view.piax"; //$NON-NLS-1$
-
- // The shared instance
- private static Activator plugin;
-
- /**
- * The constructor
- */
- public Activator() {
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext context) throws Exception {
- super.start(context);
- plugin = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext context) throws Exception {
- plugin = null;
- super.stop(context);
- }
-
- /**
- * Returns the shared instance
- *
- * @return the shared instance
- */
- public static Activator getDefault() {
- return plugin;
- }
-
- /**
- * Returns an image descriptor for the image file at the given
- * plug-in relative path
- *
- * @param path the path
- * @return the image descriptor
- */
- public static ImageDescriptor getImageDescriptor(String path) {
- return imageDescriptorFromPlugin(PLUGIN_ID, path);
- }
-}
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/PiaxButtonListener.java b/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/PiaxButtonListener.java
deleted file mode 100644
index 48f6ab6..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/PiaxButtonListener.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-package org.eclipse.sensinact.studio.view.piax;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.sensinact.studio.model.manager.listener.devicelocation.DeviceLocationManager;
-import org.eclipse.sensinact.studio.model.manager.modelupdater.ModelEditor;
-import org.eclipse.sensinact.studio.model.resource.utils.DeviceDescriptor;
-import org.eclipse.sensinact.studio.model.resource.utils.GPScoordinates;
-import org.eclipse.sensinact.studio.model.resource.utils.ResourceDescriptor;
-import org.eclipse.sensinact.studio.preferences.ConfigurationManager;
-import org.eclipse.sensinact.studio.preferences.GatewayHttpConfig;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-/**
- * @author Etienne Gandrille
- */
-class PiaxButtonListener implements MouseListener {
-
- private static final Logger logger = Logger.getLogger(PiaxButtonListener.class);
- private final PiaxView view;
-
- public PiaxButtonListener(PiaxView view) {
- this.view = view;
- }
-
- @Override
- public void mouseDoubleClick(MouseEvent e) {
- }
-
- @Override
- public void mouseDown(MouseEvent e) {
- }
-
- @Override
- public void mouseUp(MouseEvent e) {
- final Shell shell = Display.getDefault().getActiveShell();
-
- // TODO Attention: seule la première gateway est prise en compte !!!
- GatewayHttpConfig[] gateways = ConfigurationManager.getGateways();
- String gatewayID = gateways[0].getName();
-
- String deviceID = "piax";
- String serviceID = "discoveries";
- String resourceID = "sensor";
-
- ResourceDescriptor desc = new ResourceDescriptor(gatewayID, deviceID, serviceID, resourceID);
-
- try {
- if (!ModelEditor.getInstance().existsResource(desc)) {
- MessageDialog.openError(shell, "Unknown Piax", "Unavailable resource\n" + desc);
- return;
- }
- } catch (InterruptedException e1) {
- logger.error("", e1);
- return;
- }
-
- // Model Values
- String modelType = view.getModelType();
- Map<String, String> modelMatch = view.getModelMatch();
- Map<String, String> modelTerm = view.getModelTerm();
- List<RangeObject> modelRange = view.getModelRange();
- Map<String, String> modelOrderBy = view.getOrderBy();
- int modelSize = view.getSize();
- int modelFrom = view.getFrom();
- String expr = "";
-
- try {
- expr = buildJson(modelType, modelMatch, modelTerm, modelRange, modelOrderBy, modelSize, modelFrom);
- }catch (Exception e1){
- e1.printStackTrace();
- }
-
- Map<String, String> map = new HashMap<String, String>();
- map.put("params", expr);
-
- /* UPDATE THIS !
- try {
- Segments segments = new Segments.Builder().gateway(gatewayID).device(deviceID).service(serviceID).resource(resourceID).method(AccessMethodType.GET).build();
-
-
- ObjectMessage result = (ObjectMessage) GatewayHttpClient.sendGetRequest(segments, map);
- JSONArray array = result.getObject().getJSONArray("result");
- for (int i = 0; i < array.length(); i++)
- processPiaxObject(array.getJSONObject(i));
-
- } catch (IOException e1) {
- MessageDialog.openError(shell, "Piax connection", "Error while getting PIAX info");
- logger.error("Error while getting PIAX info", e1);
- } catch (JSONException e1) {
- e1.printStackTrace();
- }
- */
- }
-
- private static String buildJson(String modelType, Map<String, String> modelMatch, Map<String, String> modelTerm, List<RangeObject> modelRange, Map<String, String> modelOrderBy, int modelSize, int modelFrom) throws Exception {
- // TODO by Ken :-)
- JSONObject j = new JSONObject();
- if (modelMatch != null){
- JSONObject matchj = new JSONObject();
- for(Map.Entry<String, String> match: modelMatch.entrySet()){
- matchj.put(match.getKey(), match.getValue());
- }
- j.put("match", matchj);
- }
-
- if (modelTerm != null){
- JSONObject termj = new JSONObject();
- for(Map.Entry<String, String> term: modelMatch.entrySet()){
- termj.put(term.getKey(), term.getValue());
- }
- j.put("term", termj);
- }
-
- if (modelRange != null){
- JSONObject rangej = new JSONObject();
- for(RangeObject ro: modelRange){
- JSONObject rangeChild = new JSONObject();
- if (ro.getOperator().equals("<")){
- rangeChild.put("lt", ro.getValue());
- }else if(ro.getOperator().equals(">")){
- rangeChild.put("gt", ro.getValue());
- }
-
- rangej.put(ro.getKey(), rangeChild);
- }
- j.put("range", rangej);
- }
-
- j.put("size", modelSize);
- j.put("from", modelFrom);
-
- return j.toString();
- }
-
- // {"timestamp":1.448531707634E12,"name":"position","resource":"position","longitude":35.86612225587049,"numericValue":371,"latitude":50.868860935141626,"uri":"/slider/cursor/position/value","serviceProvider":"slider","snaId":"sna1","serviceName":"cursor"}
- private void processPiaxObject(JSONObject piaxMsg) throws JSONException {
-
- String gatewayID = piaxMsg.getString("snaId");
- String deviceID = piaxMsg.getString("serviceProvider");
- String serviceID = piaxMsg.getString("serviceName");
- String resourceID = piaxMsg.getString("resource");
- ResourceDescriptor desc = new ResourceDescriptor(gatewayID, deviceID, serviceID, resourceID);
-
- double lat = Double.parseDouble(piaxMsg.getString("latitude"));
- double lng = Double.parseDouble(piaxMsg.getString("longitude"));
- GPScoordinates gps = new GPScoordinates(lat, lng);
-
- String value = null;
- if (piaxMsg.has("numericValue")) {
- value = piaxMsg.getString("numericValue");
- } else if (piaxMsg.has("stringValue")) {
- value = piaxMsg.getString("stringValue");
- } else
- throw new IllegalArgumentException("Can't find value in PIAX object");
-
- createPiaxObjectsInModel(desc, gps, value);
- }
-
- private void createPiaxObjectsInModel(ResourceDescriptor desc, GPScoordinates gps, String value) {
- // basic PIAX
- ModelEditor.getInstance().addDeviceIfNotExist(desc.getGateway(), desc.getDevice());
- ModelEditor.getInstance().addServiceIfNotExist(desc.getGateway(), desc.getDevice(), desc.getService());
- //ModelEditor.getInstance().addResourceIfNotExist(desc, ResourcePackage.Literals.PROPERTY);
-
- DeviceLocationManager.getInstance().updateLocationInStudio(new DeviceDescriptor(desc.getGateway(), desc.getDevice()), gps);
- }
-}
\ No newline at end of file
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/PiaxView.java b/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/PiaxView.java
deleted file mode 100644
index 197ec9c..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/PiaxView.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-package org.eclipse.sensinact.studio.view.piax;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.annotation.PostConstruct;
-
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.sensinact.studio.ui.common.widget.ComboField;
-import org.eclipse.sensinact.studio.ui.common.widget.KeyValueEditor;
-import org.eclipse.sensinact.studio.ui.common.widget.ListEditor;
-import org.eclipse.sensinact.studio.ui.common.widget.TextField;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CTabFolder;
-import org.eclipse.swt.custom.CTabItem;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Spinner;
-
-/**
- * @author Etienne Gandrille
- */
-public class PiaxView {
-
- public static final String VIEW_ID = "org.eclipse.sensinact.studio.view.piax.view";
-
- /* Widgets and model */
- private Combo typeCombo;
- private String[] typeValues = {"sensor", "gateway"};
- private Map<String, String> match = new HashMap<>();
- private Map<String, String> term = new HashMap<>();
- private List<String> range = new ArrayList<>();
- private Map<String, String> orderBy = new HashMap<>();
- private Spinner sizeEditor;
- private Spinner fromEditor;
- private Button piaxButton;
-
-
- public PiaxView() {
- }
-
- @PostConstruct
- public void createControls(final Composite parent) {
- parent.setLayout(new GridLayout(1, false));
-
- // Tab folder
- CTabFolder folder = new CTabFolder(parent, SWT.BORDER);
- folder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
-
- // General Tab
- final CTabItem generalTab = new CTabItem(folder, SWT.NONE);
- generalTab.setText("General");
- generalTab.setControl(getGeneralComposite(folder));
-
- // Pagination tab
- final CTabItem paginationTab = new CTabItem(folder, SWT.NONE);
- paginationTab.setText("Pagination");
- paginationTab.setControl(getPaginationComposite(folder));
-
- folder.setSelection(0);
-
- // Connect
- piaxButton = new Button(parent, SWT.NONE);
- piaxButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
- piaxButton.setText("Import from PIAX");
- piaxButton.addMouseListener(new PiaxButtonListener(this));
- }
-
- private Control getGeneralComposite(Composite parent) {
- Composite composite = new Composite(parent, SWT.NONE);
-
- composite.setLayout(new GridLayout(2, false));
-
- // type
- createLabel(composite, "Type", true, false);
- typeCombo = new Combo (composite, SWT.READ_ONLY);
- typeCombo.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1));
- typeCombo.setItems(typeValues);
- typeCombo.select(0);
-
- // match
- createLabel(composite, "Match");
- KeyValueEditor matchEditor = new KeyValueEditor(composite, match, "key", "value", new TextField(), new TextField());
- matchEditor.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
- matchEditor.setKeyValidator(getNotEmptyValidator());
- matchEditor.setValueValidator(getNotEmptyValidator());
-
- // term
- createLabel(composite, "Term");
- KeyValueEditor termEditor = new KeyValueEditor(composite, term, "key", "value", new TextField(), new TextField());
- termEditor.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
- termEditor.setKeyValidator(getNotEmptyValidator());
- termEditor.setValueValidator(getNotEmptyValidator());
-
- // range
- createLabel(composite, "Range");
- ListEditor rangeEditor = new ListEditor(composite, range);
- rangeEditor.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
- rangeEditor.setValidator(new IInputValidator() {
- @Override
- public String isValid(String newText) {
- try {
- RangeObject.build(newText);
- return null;
- } catch (Exception e) {
- return e.getMessage();
- }
- }
- });
-
- return composite;
- }
-
- private Control getPaginationComposite(Composite parent) {
- Composite composite = new Composite(parent, SWT.NONE);
-
- composite.setLayout(new GridLayout(2, false));
-
- // order By
- createLabel(composite, "OrderBy");
-
- KeyValueEditor orderByEditor = new KeyValueEditor(composite, orderBy, "key", "value", new TextField(), new ComboField(Arrays.asList("asc","desc")));
- orderByEditor.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
- orderByEditor.setKeyValidator(getNotEmptyValidator());
- orderByEditor.setValueValidator(getNotEmptyValidator());
-
- // size
- createLabel(composite, "Size", true, false);
- sizeEditor = createSpinner(composite, 0, 1000, 10, 1, 100);
-
- // from
- createLabel(composite, "From", true, false);
- fromEditor = createSpinner(composite, 0, 10000, 10, 1, 100);
-
- return composite;
- }
-
- private IInputValidator getNotEmptyValidator() {
- return new IInputValidator() {
- @Override
- public String isValid(String text) {
- if (text == null || text.isEmpty())
- return "Empty value is not allowed";
- else
- return null;
- }
- };
- }
-
- private static void createLabel(Composite parent, String text) {
- createLabel(parent, text, true, true);
- }
-
- private static void createLabel(Composite parent, String text, boolean grabExcessHorizontalSpace, boolean grabExcessVerticalSpace) {
- Label label = new Label(parent, SWT.LEFT);
- label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, grabExcessHorizontalSpace, grabExcessVerticalSpace, 1, 1));
- label.setText(text);
- }
-
- private static Spinner createSpinner(Composite parent, int min, int max, int sel, int inc, int page) {
- Spinner spinner = new Spinner (parent, SWT.BORDER);
- spinner.setMinimum(min);
- spinner.setMaximum(max);
- spinner.setSelection(sel);
- spinner.setIncrement(inc);
- spinner.setPageIncrement(page);
- spinner.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
-
- return spinner;
- }
-
-
- /* ============= */
- /* MODEL GETTERS */
- /* ============= */
-
- String getModelType() {
- int index = typeCombo.getSelectionIndex();
- if (index == -1)
- return null;
- else
- return typeValues[index];
- }
-
- Map<String, String> getModelMatch() {
- return match;
- }
-
- Map<String, String> getModelTerm() {
- return term;
- }
-
- List<RangeObject> getModelRange() {
- List<RangeObject> retval = new ArrayList<>();
- for (String str : range)
- retval.add(RangeObject.build(str));
- return retval;
- }
-
- Map<String, String> getOrderBy() {
- return orderBy;
- }
-
- int getSize() {
- return sizeEditor.getSelection();
- }
-
- int getFrom() {
- return fromEditor.getSelection();
- }
-}
diff --git a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/RangeObject.java b/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/RangeObject.java
deleted file mode 100644
index 8436e4e..0000000
--- a/ui/org.eclipse.sensinact.studio.view.piax/src/org/eclipse/sensinact/studio/view/piax/RangeObject.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/**
- * Copyright (c) 2019 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-package org.eclipse.sensinact.studio.view.piax;
-
-/**
- * @author Etienne Gandrille
- */
-public class RangeObject {
-
- private static final String allowedOperators[] = { "<", ">" };
-
- private final String key;
- private final String operator;
- private final long value;
-
- public static RangeObject build(String text) {
-
- for (String op : allowedOperators) {
- int idx = text.indexOf(op);
-
- if (idx != -1) {
- String tmpKey = text.substring(0, idx).trim();
- String tmpValue = text.substring(idx + op.length()).trim();
- if (!tmpKey.isEmpty() && !tmpValue.isEmpty()) {
- try {
- return new RangeObject(tmpKey, op, Long.parseLong(tmpValue));
- } catch (NumberFormatException e) {
- // do nothing... just iterate...
- }
- }
- }
- }
- throw new IllegalArgumentException(text + " is not a valid range");
- }
-
- private RangeObject(String key, String operator, long value) {
- this.key = key;
- this.operator = operator;
- this.value = value;
- }
-
- public String getKey() {
- return key;
- }
-
- public String getOperator() {
- return operator;
- }
-
- public long getValue() {
- return value;
- }
-}
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/.classpath b/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/.classpath
deleted file mode 100644
index d1b97f7..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/.project b/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/.project
deleted file mode 100644
index 5c3c40a..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.sensinact.studio.language.sensinact.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/META-INF/MANIFEST.MF b/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 64d7f5e..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,21 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.eclipse.sensinact.studio.language.sensinact.tests
-Bundle-Vendor: My Company
-Bundle-Version: 1.0.0.qualifier
-Bundle-SymbolicName: org.eclipse.sensinact.studio.language.sensinact.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.sensinact.studio.language.sensinact,
- org.junit,
- org.eclipse.xtext.junit4,
- org.eclipse.xtext.xbase.junit,
- org.eclipse.xtext.xbase.lib
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Export-Package: org.eclipse.sensinact.studio.language.tests
-Import-Package: org.hamcrest.core,
- org.junit,
- org.junit.runners.model,
- org.junit.runner,
- org.junit.runners,
- org.junit.runner.manipulation,
- org.junit.runner.notification
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/about.html b/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/about.html
deleted file mode 100644
index 3b39f88..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/about.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-
-</body></html>
\ No newline at end of file
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/build.properties b/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/build.properties
deleted file mode 100644
index c4c7717..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Copyright (c) 2017 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-source.. = src/,\
- src-gen/,\
- xtend-gen/
-bin.includes = .,\
- META-INF/
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/src/org/eclipse/sensinact/studio/language/tests/SensinactParsingTest.xtend b/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/src/org/eclipse/sensinact/studio/language/tests/SensinactParsingTest.xtend
deleted file mode 100644
index 908a32b..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.tests/src/org/eclipse/sensinact/studio/language/tests/SensinactParsingTest.xtend
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * Copyright (c) 2017 CEA.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA - initial API and implementation and/or initial documentation
- */
-/*
- * generated by Xtext 2.9.1
- */
-package org.eclipse.sensinact.studio.language.tests
-
-import com.google.inject.Inject
-import org.eclipse.sensinact.studio.language.sensinact.Sensinact
-import org.eclipse.xtext.junit4.InjectWith
-import org.eclipse.xtext.junit4.XtextRunner
-import org.eclipse.xtext.junit4.util.ParseHelper
-import org.junit.Assert
-import org.junit.Test
-import org.junit.runner.RunWith
-
-@RunWith(XtextRunner)
-@InjectWith(SensinactInjectorProvider)
-class SensinactParsingTest{
-
- @Inject
- ParseHelper<Sensinact> parseHelper;
-
- @Test
- def void loadModel() {
- val result = parseHelper.parse('''
- Hello Xtext!
- ''')
- Assert.assertNotNull(result)
- }
-
-}
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/.classpath b/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/.classpath
deleted file mode 100644
index d1b97f7..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/.project b/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/.project
deleted file mode 100644
index 30fb460..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.sensinact.studio.language.sensinact.ui.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/META-INF/MANIFEST.MF b/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index c0cc10d..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,22 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.eclipse.sensinact.studio.language.sensinact.ui.tests
-Bundle-Vendor: My Company
-Bundle-Version: 1.0.0.qualifier
-Bundle-SymbolicName: org.eclipse.sensinact.studio.language.sensinact.ui.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.sensinact.studio.language.sensinact.ui,
- org.junit,
- org.eclipse.xtext.junit4,
- org.eclipse.xtext.xbase.junit,
- org.eclipse.core.runtime,
- org.eclipse.ui.workbench
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Export-Package: org.eclipse.sensinact.studio.language.ui.tests
-Import-Package: org.hamcrest.core,
- org.junit,
- org.junit.runners.model,
- org.junit.runner,
- org.junit.runners,
- org.junit.runner.manipulation,
- org.junit.runner.notification
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/about.html b/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/about.html
deleted file mode 100644
index 3b39f88..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/about.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-
-</body></html>
\ No newline at end of file
diff --git a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/build.properties b/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/build.properties
deleted file mode 100644
index c4c7717..0000000
--- a/xtext/org.eclipse.sensinact.studio.language.sensinact.ui.tests/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Copyright (c) 2017 CEA.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# CEA - initial API and implementation and/or initial documentation
-#
-
-source.. = src/,\
- src-gen/,\
- xtend-gen/
-bin.includes = .,\
- META-INF/