protected boolean isContainerReferenceInSameResource(EObject owner, EStructuralFeature feature) { if (feature instanceof EReference && ((EReference) feature).isContainer()) { Resource ownerResource = ((InternalEObject) owner).eDirectResource(); // if eDirectResource is set, owner is a root element, so its container // must be in another resource return (ownerResource == null); } return false; }
protected boolean makeReferenceElement(EReference reference) { return reference.isContainment() && !reference.isContainer(); }
protected boolean isContainerReferenceInSameResource(EObject owner, EStructuralFeature feature) { if (feature instanceof EReference && ((EReference) feature).isContainer()) { Resource ownerResource = ((InternalEObject) owner).eDirectResource(); // if eDirectResource is set, owner is a root element, so its container // must be in another resource return (ownerResource == null); } return false; } }
@Override protected boolean makeReferenceElement(EReference reference) { return (reference.isContainment() && !reference.isContainer()) || !useEncodedAttributeStyle; }
@Override protected boolean makeReferenceElement(EReference reference) { return (reference.isContainment() && !reference.isContainer()) || !useEncodedAttributeStyle; }
@Override protected boolean isIncluded(EStructuralFeature eStructuralFeature) { if (FeatureMapUtil.isFeatureMap(eStructuralFeature)) { return true; } else { EReference eReference = (EReference)eStructuralFeature; return !eReference.isContainment() && !eReference.isContainer(); } }
@Override protected boolean isIncluded(EStructuralFeature eStructuralFeature) { if (FeatureMapUtil.isFeatureMap(eStructuralFeature)) { return true; } else { EReference eReference = (EReference)eStructuralFeature; return !eReference.isContainment() && !eReference.isContainer(); } }
@Override public void eDynamicUnset(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { eSettingDelegate(eFeature).dynamicUnset(this, null, -1); } else { featureMap.setting(eFeature).unset(); } }
@Override public boolean eDynamicIsSet(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicIsSet(this, null, -1); } else { return featureMap.setting(eFeature).isSet(); } }
@Override public Object eDynamicGet(EStructuralFeature eFeature, boolean resolve) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicGet(this, null, -1, true, true); } else { return featureMap.setting(eFeature).get(resolve); } }
@Override public boolean eDynamicIsSet(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicIsSet(this, null, -1); } else { return featureMap.setting(eFeature).isSet(); } }
@Override public void eDynamicUnset(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { eSettingDelegate(eFeature).dynamicUnset(this, null, -1); } else { featureMap.setting(eFeature).unset(); } }
@Override public Object eDynamicGet(EStructuralFeature eFeature, boolean resolve) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicGet(this, null, -1, true, true); } else { return featureMap.setting(eFeature).get(resolve); } }
@Override public void eDynamicUnset(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { eSettingDelegate(eFeature).dynamicUnset(this, null, -1); } else { featureMap.setting(eFeature).unset(); } }
@Override public boolean eDynamicIsSet(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicIsSet(this, null, -1); } else { return featureMap.setting(eFeature).isSet(); } }
@Override public boolean eDynamicIsSet(EStructuralFeature eFeature) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicIsSet(this, null, -1); } else { return featureMap.setting(eFeature).isSet(); } }
@Override public Object eDynamicGet(EStructuralFeature eFeature, boolean resolve) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { return eSettingDelegate(eFeature).dynamicGet(this, null, -1, true, true); } else { return featureMap.setting(eFeature).get(resolve); } }
@Override public NotificationChain eDynamicInverseRemove(InternalEObject otherEnd, int featureID, Class<?> inverseClass, NotificationChain notifications) { EStructuralFeature.Internal feature = (EStructuralFeature.Internal)eClass().getEStructuralFeature(featureID); if (feature instanceof EReference && ((EReference)feature).isContainer()) { return eSettingDelegate(feature).dynamicInverseRemove(this, null, -1, otherEnd, notifications); } else { return featureMap.basicRemove(feature, otherEnd, notifications); } }
@Override public NotificationChain eDynamicInverseRemove(InternalEObject otherEnd, int featureID, Class<?> inverseClass, NotificationChain notifications) { EStructuralFeature.Internal feature = (EStructuralFeature.Internal)eClass().getEStructuralFeature(featureID); if (feature instanceof EReference && ((EReference)feature).isContainer()) { return eSettingDelegate(feature).dynamicInverseRemove(this, null, -1, otherEnd, notifications); } else { return featureMap.basicRemove(feature, otherEnd, notifications); } }
protected boolean isIndexable(EReference eReference) { return (!eReference.isContainment() || eReference.isResolveProxies()) && !eReference.isDerived() && !eReference.isVolatile() && !eReference.isTransient() && (!eReference.isContainer() || eReference.isResolveProxies()); }