diff options
Diffstat (limited to 'plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend')
-rw-r--r-- | plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend | 102 |
1 files changed, 52 insertions, 50 deletions
diff --git a/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend b/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend index caffb6b4f5a..6129d7cf368 100644 --- a/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend +++ b/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend @@ -1,3 +1,17 @@ +/******************************************************************************* + * Copyright (c) 2007, 2021 Borland Software Corporation, CEA LIST, Artal and others + * + * 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: + * Michael Golubev (Montages) - #368521 - migrate to Xtend2 + * Etienne Allogo (ARTAL) - etienne.allogo@artal.fr - Bug 569174 : L1.2 clean up providers + *****************************************************************************/ package xpt.providers import com.google.inject.Inject @@ -8,20 +22,21 @@ import xpt.Common import xpt.CodeStyle import org.eclipse.papyrus.gmf.codegen.gmfgen.GenNode -@com.google.inject.Singleton +@com.google.inject.Singleton class EditPartModelingAssistantProvider { @Inject extension Utils_qvto; @Inject extension Common_qvto; @Inject extension Common; - + @Inject extension CodeStyle; + @Inject ModelingAssistantProvider xptModelingAssistantProvider; @Inject CodeStyle xptCodeStyle; @Inject ElementTypes xptElementTypes; - + def className(GenContainerBase it) '''«diagram.modelingAssistantProviderClassName»Of«editPartClassName»''' def packageName(GenContainerBase it) '''«getDiagram().providersPackageName».assistants''' - + def qualifiedClassName(GenContainerBase it) '''«packageName».«className»''' def EditPartModelingAssistantProvider(GenContainerBase it) ''' @@ -32,12 +47,10 @@ class EditPartModelingAssistantProvider { public class «className» «extendsList» { «getTypesForPopupBar» - - «linkAssistantMethods» - «additions» + «linkAssistantMethods» } -''' + ''' def extendsList(GenContainerBase it) '''extends «xptModelingAssistantProvider.qualifiedClassName(it.diagram)»''' @@ -46,11 +59,11 @@ class EditPartModelingAssistantProvider { «generatedMemberComment» «xptCodeStyle.overrideC(it)» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForPopupBar(org.eclipse.core.runtime.IAdaptable host) { - java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(«it.getAssistantNodes().size»); + java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(«it.getAssistantNodes().size»); «FOR node : it.getAssistantNodes()» types.add(«xptElementTypes.accessElementType(node)»); «ENDFOR» - return types; + return types; } «ENDIF» ''' @@ -60,22 +73,22 @@ class EditPartModelingAssistantProvider { def dispatch linkAssistantMethods(GenNode it)''' «IF getAssistantOutgoingLinks(it).notEmpty» «getRelTypesOnSource» - + «doGetRelTypesOnSource» - - «getRelTypesOnSourceAndTarget» - - «doGetRelTypesOnSourceAndTarget» - - «getTypesForTarget» - + + «getRelTypesOnSourceAndTarget» + + «doGetRelTypesOnSourceAndTarget» + + «getTypesForTarget» + «doGetTypesForTarget» - «ENDIF» + «ENDIF» «IF getAssistantIncomingLinks(it).notEmpty» - «getRelTypesOnTarget» + «getRelTypesOnTarget» - «doGetRelTypesOnTarget» + «doGetRelTypesOnTarget» «getTypesForSource» @@ -88,8 +101,7 @@ class EditPartModelingAssistantProvider { «xptCodeStyle.overrideC(it)» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnSource(org.eclipse.core.runtime.IAdaptable source) { org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart sourceEditPart = - (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) source.getAdapter( - org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); + source.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); return doGetRelTypesOnSource((«it.editPartQualifiedClassName») sourceEditPart); } ''' @@ -99,8 +111,7 @@ class EditPartModelingAssistantProvider { «xptCodeStyle.overrideC(it)» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnTarget(org.eclipse.core.runtime.IAdaptable target) { org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart = - (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) target.getAdapter( - org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); + target.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); return doGetRelTypesOnTarget((«it.editPartQualifiedClassName») targetEditPart); } ''' @@ -108,14 +119,11 @@ class EditPartModelingAssistantProvider { def getRelTypesOnSourceAndTarget(GenNode it) ''' «generatedMemberComment» «xptCodeStyle.overrideC(it)» - public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnSourceAndTarget( - org.eclipse.core.runtime.IAdaptable source, org.eclipse.core.runtime.IAdaptable target) { + public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnSourceAndTarget(org.eclipse.core.runtime.IAdaptable source, org.eclipse.core.runtime.IAdaptable target) { org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart sourceEditPart = - (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) source.getAdapter( - org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); + source.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart = - (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) target.getAdapter( - org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); + target.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); return doGetRelTypesOnSourceAndTarget((«it.editPartQualifiedClassName») sourceEditPart, targetEditPart); } ''' @@ -123,11 +131,9 @@ class EditPartModelingAssistantProvider { def getTypesForSource(GenNode it) ''' «generatedMemberComment» «xptCodeStyle.overrideC(it)» - public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForSource(org.eclipse.core.runtime.IAdaptable target, - org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) { + public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForSource(org.eclipse.core.runtime.IAdaptable target, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) { org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart = - (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) target.getAdapter( - org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); + target.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); return doGetTypesForSource((«it.editPartQualifiedClassName») targetEditPart, relationshipType); } ''' @@ -136,11 +142,9 @@ class EditPartModelingAssistantProvider { «IF getAssistantOutgoingLinks(it).notEmpty» «generatedMemberComment» «xptCodeStyle.overrideC(it)» - public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForTarget(org.eclipse.core.runtime.IAdaptable source, - org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) { + public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForTarget(org.eclipse.core.runtime.IAdaptable source, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) { org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart sourceEditPart = - (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) source.getAdapter( - org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); + source.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class); return doGetTypesForTarget((«it.editPartQualifiedClassName») sourceEditPart, relationshipType); } «ENDIF» @@ -150,7 +154,7 @@ class EditPartModelingAssistantProvider { def doGetRelTypesOnSource(GenNode it) ''' «generatedMemberComment» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetRelTypesOnSource(«it.editPartQualifiedClassName» source) { - java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(«getAssistantOutgoingLinks(it).size»); + java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(«getAssistantOutgoingLinks(it).size»); «FOR link : getAssistantOutgoingLinks(it)» types.add(«xptElementTypes.accessElementType(link)»); «ENDFOR» @@ -162,7 +166,7 @@ class EditPartModelingAssistantProvider { def doGetRelTypesOnTarget(GenNode it) ''' «generatedMemberComment» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetRelTypesOnTarget(«it.editPartQualifiedClassName» target) { - java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(«getAssistantIncomingLinks(it).size»); + java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(«getAssistantIncomingLinks(it).size»); «FOR link : getAssistantIncomingLinks(it) » types.add(«xptElementTypes.accessElementType(link)»); «ENDFOR» @@ -174,7 +178,7 @@ class EditPartModelingAssistantProvider { def doGetRelTypesOnSourceAndTarget(GenNode it) ''' «generatedMemberComment» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetRelTypesOnSourceAndTarget(«it.editPartQualifiedClassName» source, org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart) { - java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.LinkedList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(); + java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.LinkedList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(); «FOR link : getAssistantOutgoingLinks(it)» «FOR target : selectGenNodes(link.targets)» if (targetEditPart instanceof «target.getEditPartQualifiedClassName()») { @@ -185,38 +189,36 @@ class EditPartModelingAssistantProvider { return types; } ''' - + // pre: getAssistantIncomingLinks(this).size() > 0 def doGetTypesForSource(GenNode it) ''' «generatedMemberComment» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetTypesForSource(«it.editPartQualifiedClassName» target, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) { - java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(); + java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(); «FOR link : getAssistantIncomingLinks(it) SEPARATOR ' else '» if (relationshipType == «xptElementTypes.accessElementType(link)») { «FOR source : selectGenNodes(link.sources)» - types.add(«xptElementTypes.accessElementType(source)»); + types.add(«xptElementTypes.accessElementType(source)»); «ENDFOR» } «ENDFOR» return types; } ''' - + // pre: getAssistantOutgoingLinks(this).size() > 0 def doGetTypesForTarget(GenNode it) ''' «generatedMemberComment» public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetTypesForTarget(«it.editPartQualifiedClassName» source, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) { - java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(); + java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(); «FOR link : getAssistantOutgoingLinks(it) SEPARATOR ' else '» if (relationshipType == «xptElementTypes.accessElementType(link)») { «FOR target : selectGenNodes(link.targets)» - types.add(«xptElementTypes.accessElementType(target)»); + types.add(«xptElementTypes.accessElementType(target)»); «ENDFOR» } «ENDFOR» return types; } ''' - - def additions(GenContainerBase it)'''''' }
\ No newline at end of file |