/** * {@inheritDoc} * * @see * org.eclipse.acceleo.common.utils.IAcceleoCrossReferenceProvider#getInverseReferences(org.eclipse.emf.ecore.EObject) */ public Set<EObject> getInverseReferences(EObject eObject) { final Set<EObject> result = Sets.newLinkedHashSet(); for (EStructuralFeature.Setting setting : crossReferencer.getInverseReferences(eObject)) { result.add(setting.getEObject()); } return result; }
/** @generated */ private static Collection getIncomingTypeModelFacetLinks_ArcToEvent_3002( hub.top.adaptiveSystem.Event target, Map crossReferences) { Collection result = new LinkedList(); Collection settings = (Collection) crossReferences.get(target); for (Iterator it = settings.iterator(); it.hasNext(); ) { EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it.next(); if (setting.getEStructuralFeature() != hub.top.adaptiveSystem.AdaptiveSystemPackage.eINSTANCE.getArcToEvent_Destination() || false == setting.getEObject() instanceof hub.top.adaptiveSystem.ArcToEvent) { continue; } hub.top.adaptiveSystem.ArcToEvent link = (hub.top.adaptiveSystem.ArcToEvent) setting.getEObject(); if (hub.top.adaptiveSystem.diagram.edit.parts.ArcToEventEditPart.VISUAL_ID != hub.top.adaptiveSystem.diagram.part.AdaptiveSystemVisualIDRegistry .getLinkWithClassVisualID(link)) { continue; } hub.top.adaptiveSystem.Condition src = link.getSource(); result.add( new hub.top.adaptiveSystem.diagram.part.AdaptiveSystemLinkDescriptor( src, target, link, hub.top.adaptiveSystem.diagram.providers.AdaptiveSystemElementTypes.ArcToEvent_3002, hub.top.adaptiveSystem.diagram.edit.parts.ArcToEventEditPart.VISUAL_ID)); } return result; }
/** * Check that the {@code representation} is correctly removed/present including removed/prevent * from/in the Sirius CrossReferencer. * * @param target the semantic target * @param representation the representation to check * @param expected true if representation have to be found */ private void checkRepresentation( EObject target, DRepresentation representation, boolean expected) { Collection<DRepresentation> representations = Lists.newArrayList(); ECrossReferenceAdapter xref = session.getSemanticCrossReferencer(); for (EStructuralFeature.Setting setting : xref.getInverseReferences(target)) { if (ViewpointPackage.Literals.DREPRESENTATION.isInstance(setting.getEObject()) && setting.getEStructuralFeature() == ViewpointPackage.Literals.DSEMANTIC_DECORATOR__TARGET) { representations.add((DRepresentation) setting.getEObject()); } } assertEquals( "Can " + (expected ? "not " : "") + "find " + DIAGRAM_NAME + " DRepresentation with sirius cross referencer", expected, representations.contains(representation)); representations = DialectManager.INSTANCE.getRepresentations(target, session); assertEquals( "Can " + (expected ? "not " : "") + "find " + DIAGRAM_NAME + " DRepresentation with DialectManager.INSTANCE.getRepresentations", expected, representations.contains(representation)); }
UncontrolUpdate( EStructuralFeature.Setting setting, EObject originalObject, CDOID originalProxy, URI destinationURI, CDOID destinationProxy) { super(setting); this.originalObject = originalObject; this.originalProxy = originalProxy; this.destinationURI = destinationURI; this.destinationProxy = destinationProxy; EStructuralFeature feature = setting.getEStructuralFeature(); InternalEObject owner = (InternalEObject) setting.getEObject(); if (!feature.isMany()) { index = EStore.NO_INDEX; } else { // don't go directly to the store because it may have proxies. // Use the resolved view in the EObject, instead index = ((EList<?>) owner.eGet(feature)).indexOf(originalObject); if (index < 0) { Activator.log.error( "Setting does not include the object being replaced by a proxy.", null); //$NON-NLS-1$ } } }
/** * {@inheritDoc} * * @see * org.eclipse.acceleo.common.utils.IAcceleoCrossReferenceProvider#getInverseReferences(org.eclipse.emf.ecore.EObject, * org.eclipse.emf.ecore.EClassifier) */ public Set<EObject> getInverseReferences(EObject eObject, EClassifier filter) { final Set<EObject> result = Sets.newLinkedHashSet(); for (EStructuralFeature.Setting setting : crossReferencer.getInverseReferences(eObject)) { final EObject eObj = setting.getEObject(); if (filter == null || filter.isInstance(eObj)) { result.add(eObj); } } return result; }
/** * Extend the given addition group for the given element within the given scope so that GMF * elements are bound to their semantic elements * * @param group_p a non-null, modifiable collection * @param element_p a non-null element * @param scope_p a non-null scope */ protected void extendGMFAdditionGroupSemanticTarget( Set<EObject> group_p, EObject element_p, IFeaturedModelScope scope_p) { ECrossReferenceAdapter crAdapter = ECrossReferenceAdapter.getCrossReferenceAdapter(element_p); if (crAdapter != null) { for (EStructuralFeature.Setting setting : crAdapter.getNonNavigableInverseReferences(element_p, false)) { if (setting.getEStructuralFeature() == NotationPackage.eINSTANCE.getView_Element()) group_p.add(setting.getEObject()); } } }
/** @generated NOT */ public Operator getOperator() { Operator op = null; // get all references that point to this element Collection<EStructuralFeature.Setting> settings = EcoreUtil.UsageCrossReferencer.find(this, this.eContainer()); // search the "roles" reference of an operator that points to this element for (EStructuralFeature.Setting setting : settings) { if (setting.getEStructuralFeature() == Sm_mmPackage.Literals.OPERATOR__ROLES) { op = (Operator) setting.getEObject(); break; } } return op; }
Update(EStructuralFeature.Setting setting) { this.setting = setting; InternalEObject owner = (InternalEObject) setting.getEObject(); CDOObject cdoOwner = CDOUtil.getCDOObject(owner); InternalCDOView view = (InternalCDOView) cdoOwner.cdoView(); store = view.getStore(); }
public boolean apply(EStructuralFeature.Setting input) { return ((ReferenceChange) input.getEObject()).getReference() == UMLPackage.Literals.GENERALIZATION__GENERALIZATION_SET; }