Bug 580913: [Sirius][ClassDiagram] The bendpoint feature must be deleted
-remove the associated filter
-remove the common layer
-remove the refresh extension
-update the documentation

Signed-off-by: Vincent Lorenzo <vincent.lorenzo@cea.fr>
Change-Id: I7758b4c759a0fa55c95bd1267cc77d299b9c66cd
diff --git a/plugins/doc/org.eclipse.papyrus.sirius.doc/image/user/4_Filters.png b/plugins/doc/org.eclipse.papyrus.sirius.doc/image/user/4_Filters.png
deleted file mode 100755
index 25411c9..0000000
--- a/plugins/doc/org.eclipse.papyrus.sirius.doc/image/user/4_Filters.png
+++ /dev/null
Binary files differ
diff --git a/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-devDoc.mediawiki b/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-devDoc.mediawiki
index f2f301e..ddf456d 100755
--- a/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-devDoc.mediawiki
+++ b/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-devDoc.mediawiki
@@ -152,11 +152,6 @@
 For more information about viewpoint description, you can have a look at the sirius documentation available here:
 https://www.eclipse.org/sirius/doc/specifier/general/Specifying_Viewpoints.html
 
-Note that each viewpoint shall reuse:
-* The common layer which is a mandatory layer defining the common concept of all diagrams (Bendpoint for example).
-* The common tool, for deletion, etc.
-* Common and specific java services. 
-
 = Adding a new diagram to the architecture file =
 
 The editor provided to edit the DocumentStructureTemplate metamodel is not exactly the version generated by EMF. We customized it in order to use a TransactionalEditingDomain (to ease the Papyrus integration). 
@@ -230,16 +225,6 @@
 
 == Common concepts ==
 
-=== Bendpoints ===
-
-Benpoints mapping is used to draw a Benpoint node at the intersection of edges when the Benpoints filter is activated.
-
-=== Refresh provider ===
-
-In some sirius diagrams, for several purpose (region management, bendpoints and sequence diagram reorder), the post refresh behavior of sirius diagrams have been overriden.
-
-To override this behavior, we have used the following extension point org.eclipse.sirius.refreshExtensionProvider.
-
 === Common services ===
 
 * PapyrusSiriusTabbarContributor allows to enable or deactivate tools in the sirius tabbar.
diff --git a/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-userDoc.mediawiki b/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-userDoc.mediawiki
index 36401b6..f553746 100755
--- a/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-userDoc.mediawiki
+++ b/plugins/doc/org.eclipse.papyrus.sirius.doc/src/site/mediawiki/papyrus-sirius-userDoc.mediawiki
@@ -33,12 +33,6 @@
 
 While most part is similar to the former GMF diagram. There are some small differences between both.
 
-=== Filters ===
-
-While using sirius diagram, you can enable or disable filters on the representation. For example filters can show or hide the Bendpoints in the Class Diagram.
-
-[[File:../../../image/user/4_Filters.png]]
-
 === Layers ===
 
 Layers can be defined to hide or show several mapping and/or several tools in the palette in a diagram.
diff --git a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.clazz/description/papyrus_class.odesign b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.clazz/description/papyrus_class.odesign
index a605c48..db134a0 100755
--- a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.clazz/description/papyrus_class.odesign
+++ b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.clazz/description/papyrus_class.odesign
@@ -1,9 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:filter="http://www.eclipse.org/sirius/diagram/description/filter/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" documentation="Copyright (c) 2009, 2014, 2021-2022 Obeo, CEA LIST, Artal Technologies&#xD;&#xA;&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License 2.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;https://www.eclipse.org/legal/epl-2.0/&#xD;&#xA;&#xD;&#xA;SPDX-License-Identifier: EPL-2.0&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA;     Obeo - initial API and implementation&#xD;&#xA;     Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - adaptation to integrate in Papyrus&#xD;&#xA;     Vincent Lorenzo (CEA LIST) - vincent.lorenzo@cea.fr  - adaptation to integrate in Papyrus" name="papyrus" version="12.0.0.2017041100">
+<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" documentation="Copyright (c) 2009, 2014, 2021-2022 Obeo, CEA LIST, Artal Technologies&#xD;&#xA;&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License 2.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;https://www.eclipse.org/legal/epl-2.0/&#xD;&#xA;&#xD;&#xA;SPDX-License-Identifier: EPL-2.0&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA;     Obeo - initial API and implementation&#xD;&#xA;     Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - adaptation to integrate in Papyrus&#xD;&#xA;     Vincent Lorenzo (CEA LIST) - vincent.lorenzo@cea.fr  - adaptation to integrate in Papyrus" name="papyrus" version="12.0.0.2017041100">
   <ownedViewpoints name="ClassDiagram" modelFileExtension="uml">
     <ownedRepresentations xsi:type="description_1:DiagramDescription" dropDescriptions="//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticPackageDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticClassDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticModelDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticEnumerationDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticDataTypeDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.4/@ownedTools[name='GraphicalEnumerationDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticComponentDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticInterfaceDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticSignalDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticInstanceSpecificationDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticInformationItemDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticPrimitiveTypeDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticCommentDrop'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.3/@ownedTools[name='SemanticConstraintDrop']" documentation="Representation to edit class diagrams" name="ClassDiagram" titleExpression="aql:self.name +' Class Diagram'" domainClass="uml::Package" preconditionExpression="" enablePopupBars="true">
       <metamodel href="platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#/"/>
-      <filters xsi:type="filter:CompositeFilterDescription" name="Show Bendpoint"/>
       <defaultLayer name="Class">
         <nodeMappings name="CD_Comment" deletionDescription="//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.6/@ownedTools[name='PapyrusSemanticDeleteAction']" labelDirectEdit="//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.5/@ownedTools[name='Comment_body_EditionTool']" semanticCandidatesExpression="feature:ownedComment" createElements="false" domainClass="uml.Comment">
           <style xsi:type="style:NoteDescription" labelSize="9" showIcon="false" labelExpression="feature:body" sizeComputationExpression="9" labelPosition="node" resizeKind="NSEW" color="//@userColorsPalettes[name='CD_ColorPalette']/@entries[name='CommentColor']">
@@ -2141,16 +2140,7 @@
           </vsmElementCustomizations>
         </customization>
       </defaultLayer>
-      <additionalLayers name="Common" optional="false">
-        <nodeMappings name="Bendpoint" semanticCandidatesExpression="aql:diagram.getCommonBendpointsToDraw()" synchronizationLock="true" domainClass="uml.Element">
-          <style xsi:type="style:DotDescription" labelSize="12" showIcon="false" labelExpression="" hideLabelByDefault="true" sizeComputationExpression="aql:self.getBenpointDiameter()">
-            <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
-            <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
-            <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
-          </style>
-        </nodeMappings>
-      </additionalLayers>
-      <additionalLayers endUserDocumentation="This layer is used to display the qualified name of the elements." name="QualifiedNameLayer" label="Display Qualified Name" reusedMappings="//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Abstraction'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Association'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_AssociationClass_Link'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_AssociationClass_Node'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Class'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Class']/@borderedNodeMappings[name='CD_RedefinableTemplateSignature'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_ClassLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_Comment'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Component'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_Constraint'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_DataType'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_DataTypeLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Dependency'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_ElementImport'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Enumeration'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_EnumerationLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Enumeration']/@subContainerMappings[name='CD_EnumerationLiteralsCompartment']/@subNodeMappings[name='CD_EnumerationLiteralLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Generalization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_GeneralizationSet'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InformationFlow'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_InformationItem'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InstanceSpecification_Link'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_InstanceSpecification_Node'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Interface'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_InterfaceLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InterfaceRealization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Model'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedOperation']/@subNodeMappings[name='CD_OperationLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Package'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_PackageImport'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_PackageMerge'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_PrimitiveType'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_PrimitiveTypeLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedAttribute']/@subNodeMappings[name='CD_PropertyLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Realization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedReception']/@subNodeMappings[name='CD_ReceptionLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Signal'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_SignalLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_InstanceSpecification_Node']/@subContainerMappings[name='CD_InstanceSpecificationSlotsCompartment']/@subNodeMappings[name='CD_SlotLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Substitution'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_TemplateBinding'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Usage'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@additionalLayers[name='Common']/@nodeMappings[name='Bendpoint']"/>
+      <additionalLayers endUserDocumentation="This layer is used to display the qualified name of the elements." name="QualifiedNameLayer" label="Display Qualified Name" reusedMappings="//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Abstraction'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Association'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_AssociationClass_Link'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_AssociationClass_Node'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Class'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Class']/@borderedNodeMappings[name='CD_RedefinableTemplateSignature'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_ClassLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_Comment'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Component'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_Constraint'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_DataType'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_DataTypeLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Dependency'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_ElementImport'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Enumeration'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_EnumerationLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Enumeration']/@subContainerMappings[name='CD_EnumerationLiteralsCompartment']/@subNodeMappings[name='CD_EnumerationLiteralLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Generalization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_GeneralizationSet'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InformationFlow'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_InformationItem'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InstanceSpecification_Link'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_InstanceSpecification_Node'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Interface'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_InterfaceLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InterfaceRealization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Model'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedOperation']/@subNodeMappings[name='CD_OperationLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Package'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_PackageImport'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_PackageMerge'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_PrimitiveType'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_PrimitiveTypeLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedAttribute']/@subNodeMappings[name='CD_PropertyLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Realization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedReception']/@subNodeMappings[name='CD_ReceptionLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Signal'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_SignalLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_InstanceSpecification_Node']/@subContainerMappings[name='CD_InstanceSpecificationSlotsCompartment']/@subNodeMappings[name='CD_SlotLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Substitution'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_TemplateBinding'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Usage']"/>
       <additionalLayers endUserDocumentation="This layer is used to display the applied Stereotypes on the elements." name="AppliedStereotypeLayer" label="Display Applied Stereotypes" reusedMappings="//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Abstraction'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Association'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_AssociationClass_Link'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_AssociationClass_Node'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Class'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_ClassLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_Comment'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Component'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_Constraint'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_DataType'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_DataTypeLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Dependency'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_ElementImport'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Enumeration'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_EnumerationLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Generalization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_GeneralizationSet'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InformationFlow'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@nodeMappings[name='CD_InformationItem'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InstanceSpecification_Link'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_InstanceSpecification_Node'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Interface'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_InterfaceLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_InterfaceRealization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Model'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedOperation']/@subNodeMappings[name='CD_OperationLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Package'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_PackageImport'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_PackageMerge'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_PrimitiveType'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_PrimitiveTypeLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedAttribute']/@subNodeMappings[name='CD_PropertyLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Realization'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_OwnedReception']/@subNodeMappings[name='CD_ReceptionLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_Signal'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_SHARED_NestedClassifier']/@subNodeMappings[name='CD_SignalLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@containerMappings[name='CD_InstanceSpecification_Node']/@subContainerMappings[name='CD_InstanceSpecificationSlotsCompartment']/@subNodeMappings[name='CD_SlotLabelNode'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Substitution'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_TemplateBinding'] //@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@edgeMappings[name='CD_Usage']" activeByDefault="true"/>
     </ownedRepresentations>
     <ownedJavaExtensions qualifiedClassName="org.eclipse.papyrus.sirius.uml.diagram.clazz.services.ClassDiagramServices"/>
diff --git a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/plugin.xml b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/plugin.xml
index a97221d..69aacb6 100755
--- a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/plugin.xml
+++ b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/plugin.xml
@@ -10,12 +10,6 @@
 	</decoratorProvider>
 </extension>
 
-   <extension
-         point="org.eclipse.sirius.refreshExtensionProvider">
-      <refreshExtensionProvider
-            providerClass="org.eclipse.papyrus.sirius.uml.diagram.common.refresh.CommonRefreshExtensionProvider">
-      </refreshExtensionProvider>
-   </extension>
       <extension
         point="org.eclipse.gmf.runtime.diagram.ui.editpolicyProviders">
      <editpolicyProvider
diff --git a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/core/services/FilterService.java b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/core/services/FilterService.java
deleted file mode 100755
index 8557bf6..0000000
--- a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/core/services/FilterService.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2021 CEA LIST, Artal Technologies
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *    Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - Initial API and implementation
- *****************************************************************************/
-package org.eclipse.papyrus.sirius.uml.diagram.common.core.services;
-
-import org.eclipse.sirius.diagram.DDiagram;
-import org.eclipse.sirius.diagram.description.filter.FilterDescription;
-
-/**
- * Service to manage filters.
- *
- */
-public final class FilterService {
-    /**
-     * A singleton instance to be accessed by other java services.
-     */
-    public static final FilterService INSTANCE = new FilterService();
-
-    /**
-     * Hidden constructor.
-     */
-    private FilterService() {
-    }
-
-	public boolean isBenpointFilterActivated(DDiagram diagram) {
-		for (FilterDescription filter : diagram.getActivatedFilters()) {
-			if (filter.getName().equals("Show Bendpoint")) {
-				return true;
-			}
-		}
-		return false;
-	}
-	
-}
diff --git a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/refresh/CommonDiagramRefreshExtension.java b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/refresh/CommonDiagramRefreshExtension.java
deleted file mode 100755
index bc5030f..0000000
--- a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/refresh/CommonDiagramRefreshExtension.java
+++ /dev/null
@@ -1,486 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2021 CEA LIST, Artal Technologies
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *    Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - Initial API and implementation
- *****************************************************************************/
-package org.eclipse.papyrus.sirius.uml.diagram.common.refresh;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-
-import org.eclipse.draw2d.AbstractPointListShape;
-import org.eclipse.draw2d.Connection;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.PointList;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.gef.ConnectionEditPart;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
-import org.eclipse.gmf.runtime.draw2d.ui.geometry.LineSeg;
-import org.eclipse.gmf.runtime.notation.Diagram;
-import org.eclipse.gmf.runtime.notation.Edge;
-import org.eclipse.papyrus.sirius.uml.diagram.common.core.services.DisplayLabelSwitch;
-import org.eclipse.papyrus.sirius.uml.diagram.common.core.services.FilterService;
-import org.eclipse.papyrus.sirius.uml.diagram.common.services.DiagramServices;
-import org.eclipse.papyrus.sirius.uml.diagram.common.utils.ODesignConstant;
-import org.eclipse.sirius.business.api.session.Session;
-import org.eclipse.sirius.business.api.session.SessionManager;
-import org.eclipse.sirius.common.tools.api.interpreter.IInterpreter;
-import org.eclipse.sirius.common.tools.api.util.RefreshIdsHolder;
-import org.eclipse.sirius.diagram.DDiagram;
-import org.eclipse.sirius.diagram.DNode;
-import org.eclipse.sirius.diagram.DSemanticDiagram;
-import org.eclipse.sirius.diagram.DragAndDropTarget;
-import org.eclipse.sirius.diagram.ResizeKind;
-import org.eclipse.sirius.diagram.business.api.componentization.DiagramMappingsManager;
-import org.eclipse.sirius.diagram.business.api.componentization.DiagramMappingsManagerRegistry;
-import org.eclipse.sirius.diagram.business.api.refresh.IRefreshExtension;
-import org.eclipse.sirius.diagram.business.internal.sync.DDiagramElementSynchronizer;
-import org.eclipse.sirius.diagram.business.internal.sync.DDiagramSynchronizer;
-import org.eclipse.sirius.diagram.business.internal.sync.DNodeCandidate;
-import org.eclipse.sirius.diagram.description.DiagramDescription;
-import org.eclipse.sirius.diagram.description.DiagramElementMapping;
-import org.eclipse.sirius.diagram.description.NodeMapping;
-import org.eclipse.sirius.diagram.ui.business.api.view.SiriusGMFHelper;
-import org.eclipse.sirius.diagram.ui.business.api.view.SiriusLayoutDataManager;
-import org.eclipse.sirius.diagram.ui.business.internal.view.RootLayoutData;
-import org.eclipse.sirius.diagram.ui.internal.refresh.GMFHelper;
-import org.eclipse.sirius.ecore.extender.business.api.accessor.ModelAccessor;
-import org.eclipse.sirius.ext.base.Option;
-import org.eclipse.sirius.tools.api.SiriusPlugin;
-import org.eclipse.sirius.viewpoint.description.RepresentationDescription;
-
-/**
- * 
- * This class add the common bendpoints on sirius diagram
- *
- */
-public class CommonDiagramRefreshExtension implements IRefreshExtension {
-
-	private int bendpointDiameter = 7;
-
-
-	/**
-	 * @see org.eclipse.sirius.business.api.refresh.IRefreshExtension#beforeRefresh(org.eclipse.sirius.DDiagram)
-	 */
-	@Override
-	public void beforeRefresh(DDiagram diagram) {
-		long showStereotype = diagram.getActivatedLayers().stream().filter(layer -> ODesignConstant.APPLIED_STEREOTYPE_LAYER_ID.equals(layer.getName())).count(); //$NON-NLS-1$
-		DisplayLabelSwitch.setStereotypeFilter(showStereotype == 1);
-		
-		long showQualifiedName = diagram.getActivatedLayers().stream().filter(layer -> ODesignConstant.QUALIFIED_NAMED_LAYER_ID.equals(layer.getName())).count(); //$NON-NLS-1$
-		DisplayLabelSwitch.setQualifiedNameFilter(showQualifiedName == 1);
-	}
-
-	/**
-	 * @see org.eclipse.sirius.business.api.refresh.IRefreshExtension#postRefresh(org.eclipse.sirius.DDiagram)
-	 */
-	@Override
-	public void postRefresh(DDiagram diagram) {
-		List<EObject> list = new ArrayList<>();
-		diagram.eAllContents().forEachRemaining(list::add);
-		// ResetStyleHelper.resetStyle(list);
-		if (FilterService.INSTANCE.isBenpointFilterActivated(diagram)) {
-			Collection<Point> bendpointsToDraw = getCommonBenpointsToDraw(diagram);
-			Diagram gmfDiagram = SiriusGMFHelper.getGmfDiagram(diagram);
-			Option<GraphicalEditPart> gef = GMFHelper.getGraphicalEditPart(gmfDiagram);
-			if (gef.some()) {
-				if (bendpointsToDraw.size() > 0) {
-					drawCommonBendpoints((DSemanticDiagram) diagram, (IGraphicalEditPart) gef.get(), bendpointsToDraw);
-				}
-			}
-		}
-		// Not this one : DiagramHelper.refresh(gmfDiagram.get,true);
-	}
-
-	/**
-	 *
-	 * @param diagram
-	 *
-	 */
-	protected Collection<Point> getCommonBenpointsToDraw(DDiagram diagram) {
-		final Collection<Point> commonBendpointsToDraw = new HashSet<>();
-
-		Diagram gmfDiagram = SiriusGMFHelper.getGmfDiagram(diagram);
-		EList<Edge> edges = gmfDiagram.getEdges();
-		for (Edge edge : edges) {
-			// get the figure
-			GraphicalEditPart currentEditPart = GMFHelper.getGraphicalEditPart(edge).get();
-			IFigure currentEdgeFigure = ((IGraphicalEditPart) currentEditPart).getFigure();
-			if (currentEdgeFigure instanceof AbstractPointListShape) {
-				PointList bendPoints = ((AbstractPointListShape) currentEdgeFigure).getPoints();
-				EClass eClass = null;
-				if (currentEditPart instanceof IGraphicalEditPart) {
-					final EObject el = ((IGraphicalEditPart) currentEditPart).resolveSemanticElement();
-					if (el != null) {
-						eClass = el.eClass();
-
-						// 2. find all connections editpart with same source AND/OR same target than the
-						// current one
-						if (currentEditPart instanceof ConnectionEditPart && eClass != null) {
-							final EditPart sourceEP = ((ConnectionEditPart) currentEditPart).getSource();
-							final EditPart targetEP = ((ConnectionEditPart) currentEditPart).getTarget();
-							final Set<Object> allConnectionsEP = new HashSet<>();
-							// 2.1. get all potential editpart connections
-							if (sourceEP instanceof AbstractGraphicalEditPart
-									&& targetEP instanceof AbstractGraphicalEditPart) {
-								allConnectionsEP.addAll(((AbstractGraphicalEditPart) sourceEP).getSourceConnections());
-								allConnectionsEP.addAll(((AbstractGraphicalEditPart) targetEP).getSourceConnections());
-								allConnectionsEP.addAll(((AbstractGraphicalEditPart) sourceEP).getTargetConnections());
-								allConnectionsEP.addAll(((AbstractGraphicalEditPart) targetEP).getTargetConnections());
-								allConnectionsEP.remove(currentEditPart);
-							}
-
-							// 2.2 get the figure for these connections and keep only figure when its
-							// editpart has the same kind than the current one
-							final Set<Connection> allConnections = new HashSet<>();
-							if (allConnectionsEP.size() > 0) {
-								for (final Object current : allConnectionsEP) {
-									// the editpart be instance of the same class
-									if (current.getClass().isInstance(currentEditPart)
-											&& currentEditPart.getClass().isInstance(current)
-											&& current instanceof IGraphicalEditPart) {
-										final EObject resolvedElement = ((IGraphicalEditPart) current)
-												.resolveSemanticElement();
-										if (resolvedElement != null && eClass != null
-												&& resolvedElement.eClass() != eClass) {
-											continue;// we draw ben point only for elements which have the same eClass,
-														// when
-														// this
-														// eClass is not null
-										}
-										final IFigure currentFig = ((IGraphicalEditPart) current).getFigure();
-										if (currentFig instanceof Connection) {
-											allConnections.add((Connection) currentFig);
-										}
-									}
-								}
-							}
-
-							// 3. Create the list of the LineSeg of the current figure
-							final List<LineSeg> refs = new ArrayList<>();
-							for (int i = 0; i < bendPoints.size() - 1; i++) {
-								LineSeg seg = new LineSeg(bendPoints.getPoint(i), bendPoints.getPoint(i + 1));
-								refs.add(seg);
-							}
-
-							// 4. find common segments between the current figure and each others link
-							// we need to associate each common segment to the concerned link
-							final Map<Connection, Map<LineSeg, List<LineSeg>>> segs = new HashMap<>();
-							for (Connection currentConn : allConnections) {
-								final PointList currentPoints = currentConn.getPoints();
-								final Map<LineSeg, List<LineSeg>> mapSegs = new HashMap<>();
-								segs.put(currentConn, mapSegs);
-								for (LineSeg refSeg : refs) {
-									final List<LineSeg> commonSubSegs = new ArrayList<>();
-									mapSegs.put(refSeg, commonSubSegs);
-									for (int i = 0; i < currentPoints.size() - 1; i++) {
-										LineSeg tmp = new LineSeg(currentPoints.getPoint(i),
-												currentPoints.getPoint(i + 1));
-										PointList intersection = getCommonSegment(refSeg, tmp);
-										if (intersection.size() == 2) {
-											if (!intersection.getFirstPoint().equals(intersection.getLastPoint())) {
-												double distanceFromFirst = refSeg.getOrigin()
-														.getDistance(intersection.getFirstPoint());
-												double distanceFromSecond = refSeg.getOrigin()
-														.getDistance(intersection.getLastPoint());
-												final LineSeg commonSeg;
-												// we arrange the 2 points in order to have the first point nearest of
-												// the
-												// start
-												// of the current segment
-												if (distanceFromFirst < distanceFromSecond) {
-													commonSeg = new LineSeg(intersection.getFirstPoint(),
-															intersection.getLastPoint());
-												} else {
-													commonSeg = new LineSeg(intersection.getLastPoint(),
-															intersection.getFirstPoint());
-												}
-												commonSubSegs.add(commonSeg);
-											}
-										}
-									}
-								}
-							}
-
-							// 5. we look for the bendpoints crossing existing link on the model, then
-							// crossing their common segment with the current figure, to find bendpoints to
-							// draw
-							for (Entry<Connection, Map<LineSeg, List<LineSeg>>> entry : segs.entrySet()) {
-								final Map<LineSeg, List<LineSeg>> commonSegMap = entry.getValue();
-								for (int i = 0; i < refs.size(); i++) { // we iterate on the segments of the current
-																		// figure
-
-									// 5.1 find required values to find bendpoints to draw
-									final LineSeg currentFigureSeg = refs.get(i);
-									final List<LineSeg> currentCommonSegs = commonSegMap.get(currentFigureSeg);
-
-									final LineSeg previousSeg;
-									final List<LineSeg> previousCommonSegs;
-
-									final LineSeg nextSeg;
-									final List<LineSeg> nextCommonSegs;
-
-									// obtain previous segs of the current figure
-									if (i != 0) {
-										previousSeg = refs.get(i - 1);
-										previousCommonSegs = commonSegMap.get(previousSeg);
-									} else {
-										previousSeg = null;
-										previousCommonSegs = null;
-									}
-
-									// obtain next segs of the current figure
-									if (i != refs.size() - 1) {
-										nextSeg = refs.get(i + 1);
-										nextCommonSegs = commonSegMap.get(nextSeg);
-									} else {
-										nextSeg = null;
-										nextCommonSegs = null;
-									}
-
-									LineSeg previousCommonSeg = null;
-									LineSeg nextCommonSeg = null;
-
-									// we iterate on the common subsegment shared with others link with the current
-									// figure
-									for (int a = 0; a < currentCommonSegs.size(); a++) {
-										final LineSeg curr = currentCommonSegs.get(a);
-										final Point first = curr.getOrigin();
-										final Point second = curr.getTerminus();
-										// obtain previous common seg
-										if (a == 0) {
-											if (previousCommonSegs != null && previousCommonSegs.size() > 0) {
-												previousCommonSeg = previousCommonSegs
-														.get(previousCommonSegs.size() - 1);
-											} else {
-												previousCommonSeg = null;
-											}
-										} else {
-											previousCommonSeg = currentCommonSegs.get(a - 1);
-										}
-
-										// obtain next common seg
-										if (a == currentCommonSegs.size() - 1) {
-											if (nextCommonSegs != null && nextCommonSegs.size() > 0) {
-												nextCommonSeg = nextCommonSegs.get(0);
-											} else {
-												nextCommonSeg = null;
-											}
-										} else {
-											nextCommonSeg = currentCommonSegs.get(a + 1);
-										}
-
-										// 5.2 calculates bendpoints visibility
-
-										// determining if we draw first point :
-										if (previousCommonSeg == null) {
-											if (i == 0) {// first segment of the figure
-												if (!bendPoints.getFirstPoint().equals(first)) {
-													// we draw the point when it is not the first anchor of the figure
-													commonBendpointsToDraw.add(first);
-												}
-											} else {
-												commonBendpointsToDraw.add(first);
-											}
-										} else if (!previousCommonSeg.getTerminus().equals(first)) {
-											// the previous common seg doesn't share this point with the current segment
-											// we draw the first point
-											commonBendpointsToDraw.add(first);
-										}
-
-										// determining if we draw the second point
-										if (nextCommonSeg == null) {
-											if (i == refs.size() - 1) {
-												if (!bendPoints.getLastPoint().equals(second)) {
-													// we draw the point when it is not the first anchor of the figure
-													commonBendpointsToDraw.add(second);
-												}
-											} else {
-												commonBendpointsToDraw.add(second);
-											}
-										} else if (!nextCommonSeg.getOrigin().equals(second)) {
-											// the next common seg doesn't share this point with the current segment
-											// we draw the second point
-											commonBendpointsToDraw.add(second);
-										}
-									}
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-		return commonBendpointsToDraw;
-	}
-
-	/**
-	 *
-	 * @param seg1
-	 *            the first segment
-	 * @param seg2
-	 *            the secong segment
-	 * @return
-	 */
-	public static final PointList getCommonSegment(final LineSeg seg1, final LineSeg seg2) {
-		final List<Point> list = new ArrayList<>();
-		list.add(seg1.getOrigin());
-		list.add(seg2.getOrigin());
-		list.add(seg1.getTerminus());
-		list.add(seg2.getTerminus());
-
-		List<Point> commonPoints = new ArrayList<>();
-		for (Point point : list) {
-			if (!commonPoints.contains(point)) {
-				if (seg1.containsPoint(point, 0) && seg2.containsPoint(point, 0)) {
-					commonPoints.add(point);
-				}
-			}
-		}
-
-		final PointList result = new PointList();
-		for (final Point point : commonPoints) {
-			result.addPoint(point);
-		}
-		return result;
-	}
-
-	/**
-	 *
-	 * @return <code>true</code> according to the preference store
-	 */
-	protected boolean getDrawBendpointPreferenceValue() {
-		return true;
-	}
-
-	/**
-	 * Calculate the best diameter and set the diameter value
-	 *
-	 * @param diameter
-	 *            the diameter of the bendpoints (if diameter<=1, we set the
-	 *            diameter to 0)
-	 */
-	public void setBendPointDiameter(final int diameter) {
-		if (diameter <= 1) {
-			this.bendpointDiameter = 0;
-		}
-		if (diameter % 2 != 0) {
-			this.bendpointDiameter = diameter;
-		} else {
-			setBendPointDiameter(diameter + 1);
-		}
-	}
-
-	/**
-	 *
-	 * @return the bendpoint diameter
-	 */
-	protected final int getBendPointDiameter() {
-		return bendpointDiameter;
-	}
-
-	/**
-	 *
-	 * @param figure
-	 *            graphics
-	 * @param pointsToDraw
-	 *            the list of the points to draw
-	 */
-	public void drawCommonBendpoints(DSemanticDiagram diagram, final IGraphicalEditPart gep,
-			final Collection<Point> bendPoints) {
-
-		// See PapyrusEdgeFigure for the initial algorithm.
-		final int diameter = getBendPointDiameter();
-		for (final Point point : bendPoints) {
-
-			Point adjustedPoint = new Point((double) point.x - (double) bendpointDiameter / 2,
-					(double) point.y - (double) bendpointDiameter / 2);
-			NodeMapping mapping = null;
-
-			// Before we were using
-			// NodeMapping mapping= (NodeMapping)
-			// DiagramServices.getDiagramServices().getMappingByName(diagram.getDescription(),
-			// "Bendpoint");
-			// but in papyrus context, description is not initialized as expected so we have
-			// to use DiagramMappingsManager
-			DiagramMappingsManager dmm = getMappingManager(diagram);
-			for (NodeMapping map : dmm.getNodeMappings()) {
-				if (ODesignConstant.BENDPOINT_MAPPING.equals(map.getName())) {
-					mapping = map;
-				}
-			}
-			// DNodeCandidate nodeCandidate = new DNodeCandidate(mapping, diagram.getTarget(), diagram, rId);
-			if (mapping != null) { // some diagram doesn't have this mapping
-				DNode node = createNode(mapping, diagram.getTarget(), diagram, diagram);
-				node.setResizeKind(ResizeKind.NONE_LITERAL);
-				// find how to set color
-				Dimension dim = new Dimension(bendpointDiameter, bendpointDiameter);
-				RootLayoutData layoutData = new RootLayoutData(node, adjustedPoint, dim);
-				SiriusLayoutDataManager.INSTANCE.addData(layoutData);
-			}
-		}
-	}
-
-	public DNode createNode(NodeMapping mapping, EObject modelElement, DragAndDropTarget container, DDiagram diagram) {
-		final DDiagram diag = diagram;
-
-		ModelAccessor accessor = SiriusPlugin.getDefault().getModelAccessorRegistry().getModelAccessor(modelElement);
-		IInterpreter interpreter = SiriusPlugin.getDefault().getInterpreterRegistry().getInterpreter(modelElement);
-		final DDiagramSynchronizer diagramSync = new DDiagramSynchronizer(interpreter, diag.getDescription(), accessor);
-		diagramSync.setDiagram((DSemanticDiagram) diagram);
-		final DDiagramElementSynchronizer elementSync = diagramSync.getElementSynchronizer();
-		RefreshIdsHolder rId = RefreshIdsHolder.getOrCreateHolder(diagram);
-
-		DNodeCandidate nodeCandidate = new DNodeCandidate(mapping, modelElement, container, rId);
-		return (DNode) elementSync.createNewNode(getMappingManager((DSemanticDiagram) diag), nodeCandidate, false);
-	}
-
-	private DiagramMappingsManager getMappingManager(final DSemanticDiagram diagram) {
-		Session session = SessionManager.INSTANCE.getSession(diagram.getTarget());
-		return DiagramMappingsManagerRegistry.INSTANCE.getDiagramMappingsManager(session, diagram);
-	}
-
-	/**
-	 * @param targetDescription
-	 * @param targetMappingName
-	 * @return
-	 */
-	public DiagramElementMapping getMappingByName(RepresentationDescription targetDescription,
-			String targetMappingName) {
-		DiagramElementMapping mapping = null;
-
-		if ((targetMappingName != null) && (targetDescription != null)
-				&& (targetDescription instanceof DiagramDescription)) {
-			mapping = DiagramServices.getDiagramServices()
-					.getAbstractNodeMapping((DiagramDescription) targetDescription, targetMappingName);
-			if (mapping == null) {
-				mapping = DiagramServices.getDiagramServices().getEdgeMapping((DiagramDescription) targetDescription,
-						targetMappingName);
-			}
-		}
-
-		return mapping;
-	}
-
-}
diff --git a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/refresh/CommonRefreshExtensionProvider.java b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/refresh/CommonRefreshExtensionProvider.java
deleted file mode 100755
index 51d4402..0000000
--- a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/refresh/CommonRefreshExtensionProvider.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2021 CEA LIST, Artal Technologies
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *    Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - Initial API and implementation
- *****************************************************************************/
-package org.eclipse.papyrus.sirius.uml.diagram.common.refresh;
-
-import org.eclipse.sirius.diagram.DDiagram;
-import org.eclipse.sirius.diagram.business.api.refresh.IRefreshExtension;
-import org.eclipse.sirius.diagram.business.api.refresh.IRefreshExtensionProvider;
-
-public class CommonRefreshExtensionProvider implements IRefreshExtensionProvider {
-
-	  private static final CommonDiagramRefreshExtension REFRESH_EXTENSION = new CommonDiagramRefreshExtension();
-
-	  public CommonRefreshExtensionProvider() {
-	    // empty constructor
-	  }
-
-	  /**
-	   * @see org.eclipse.sirius.business.api.refresh.IRefreshExtensionProvider#getRefreshExtension(org.eclipse.sirius.DDiagram)
-	   */
-	  public IRefreshExtension getRefreshExtension(DDiagram viewPoint_p) {
-	    return REFRESH_EXTENSION;
-	  }
-
-	  /**
-	   * @see org.eclipse.sirius.business.api.refresh.IRefreshExtensionProvider#provides(org.eclipse.sirius.DDiagram)
-	   */
-	  public boolean provides(DDiagram viewPoint_p) {
-	    return true;
-	  }
-
-	}
diff --git a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/utils/ODesignConstant.java b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/utils/ODesignConstant.java
index 25cbebf..dcf9b1d 100755
--- a/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/utils/ODesignConstant.java
+++ b/plugins/uml/org.eclipse.papyrus.sirius.uml.diagram.common/src/org/eclipse/papyrus/sirius/uml/diagram/common/utils/ODesignConstant.java
@@ -31,10 +31,5 @@
 	 * The ID of the layer used to show/hide qualified name
 	 */
 	public static final String QUALIFIED_NAMED_LAYER_ID = "QualifiedNameLayer"; //$NON-NLS-1$
-	
-	/**
-	 * The ID of the mapping used to draw bendpoints
-	 */
-	public static final String BENDPOINT_MAPPING =  "Bendpoint"; //$NON-NLS-1$
 
 }