private boolean useUnsetBit(EStructuralFeature feature) { // TODO non-unsettable boolean values can also be stored in these bits if (feature.isUnsettable()) { return true; } else { if (feature.isMany()) { return true; } if (feature.getDefaultValue() == null || (feature.getDefaultValue() != null && feature.getDefaultValue() == null)) { return true; } } return false; }
private boolean useUnsetBit(EStructuralFeature feature) { // TODO non-unsettable boolean values can also be stored in these bits Object value = eGet(feature); if (feature.isUnsettable()) { if (!eIsSet(feature)) { return true; } } else { if (feature.isMany() && (value == null || ((List<?>)value).isEmpty())) { return true; } if (feature.getDefaultValue() == value || (feature.getDefaultValue() != null && feature.getDefaultValue().equals(value))) { return true; } } return false; }
private boolean useUnsetBit(EStructuralFeature feature, IdEObject object) { // TODO non-unsettable boolean values can also be stored in these bits Object value = object.eGet(feature); if (feature.isUnsettable()) { if (!object.eIsSet(feature)) { return true; } if (feature.isMany() && ((List<?>)value).isEmpty()) { return true; } } else { if (feature.isMany() && ((List<?>)value).isEmpty()) { return true; } if (feature.getDefaultValue() == value || (feature.getDefaultValue() != null && feature.getDefaultValue().equals(value))) { return true; } } return false; }
protected Object getDefaultValue() { return feature.getDefaultValue(); }
} else if (feature.isMany()) { } else if (feature.getDefaultValue() != null) { idEObject.setAttribute(feature, feature.getDefaultValue());
} else if (feature.isMany()) { } else if (feature.getDefaultValue() != null) { idEObject.eSet(feature, feature.getDefaultValue());
@Override protected Object getFeatureDefaultValue() { Object feature = getFeature(); if (feature instanceof EStructuralFeature) { return ((EStructuralFeature)feature).getDefaultValue(); } return null; }
@Override protected Object getFeatureDefaultValue() { Object feature = getFeature(); if (feature instanceof EStructuralFeature) { return ((EStructuralFeature)feature).getDefaultValue(); } return null; }
public Object getMongoDefaultValue(EStructuralFeature feature) { Object defaultValue = feature.getDefaultValue(); return toMongo(defaultValue); }
protected boolean shouldUnset(EStructuralFeature feature, Object value) { if (feature.getUpperBound() != ETypedElement.UNSPECIFIED_MULTIPLICITY && !feature.isUnsettable()) { Object defaultValue = feature.getDefaultValue(); return defaultValue == null ? value == null : defaultValue.equals(value); } else { return false; } }
protected boolean shouldUnset(EStructuralFeature feature, Object value) { if (feature.getUpperBound() != ETypedElement.UNSPECIFIED_MULTIPLICITY && !feature.isUnsettable()) { Object defaultValue = feature.getDefaultValue(); return defaultValue == null ? value == null : defaultValue.equals(value); } else { return false; } }
protected boolean defaultValueIsSerializeable(EStructuralFeature feature) { if (feature instanceof EAttribute) { if (feature.getEType() == EcorePackage.eINSTANCE.getEString() && feature.getDefaultValue() == null) return false; return true; } return false; }
@Override public Object getMongoDefaultValue(EStructuralFeature feature) { Object defaultValue = feature.getDefaultValue(); EClassifier eType = feature.getEType(); EFactory factory = eType.getEPackage().getEFactoryInstance(); return factory.convertToString((EDataType)eType, defaultValue); } });
public void unset(InternalEObject eObject, EStructuralFeature feature) { Object[] settings = ((CDOObjectImpl)eObject).cdoBasicSettings(); if (settings == null) { // Is already unset return; } int dynamicFeatureID = eDynamicFeatureID(eObject, feature); if (feature.isUnsettable()) { settings[dynamicFeatureID] = null; } else { settings[dynamicFeatureID] = feature.getDefaultValue(); } } }
public boolean isSet(InternalEObject eObject, EStructuralFeature feature) { if (!feature.isUnsettable()) { if (feature.isMany()) { @SuppressWarnings("unchecked") List<Object> list = (InternalEList<Object>)eObject.eGet(feature); return list != null && !list.isEmpty(); } return !ObjectUtil.equals(eObject.eGet(feature), feature.getDefaultValue()); } Object[] settings = ((CDOObjectImpl)eObject).eSettings; if (settings == null) { return false; } int transientIndex = getTransientFeatureIndex(eObject, feature); return settings[transientIndex] != null; }
@Override public void eDynamicSet(EStructuralFeature eFeature, Object newValue) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { eSettingDelegate(eFeature).dynamicSet(this, null, -1, newValue); } else { if (!eFeature.isUnsettable()) { Object defaultValue = eFeature.getDefaultValue(); if (defaultValue == null ? newValue == null : defaultValue.equals(newValue)) { featureMap.setting(eFeature).unset(); return; } } featureMap.setting(eFeature).set(newValue); } }
@Override public void eDynamicSet(EStructuralFeature eFeature, Object newValue) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { eSettingDelegate(eFeature).dynamicSet(this, null, -1, newValue); } else { if (!eFeature.isUnsettable()) { Object defaultValue = eFeature.getDefaultValue(); if (defaultValue == null ? newValue == null : defaultValue.equals(newValue)) { featureMap.setting(eFeature).unset(); return; } } featureMap.setting(eFeature).set(newValue); } }
@Override public void eDynamicSet(EStructuralFeature eFeature, Object newValue) { if (eFeature instanceof EReference && ((EReference)eFeature).isContainer()) { eSettingDelegate(eFeature).dynamicSet(this, null, -1, newValue); } else { if (!eFeature.isUnsettable()) { Object defaultValue = eFeature.getDefaultValue(); if (defaultValue == null ? newValue == null : defaultValue.equals(newValue)) { featureMap.setting(eFeature).unset(); return; } } featureMap.setting(eFeature).set(newValue); } }
@Override protected Object getDefaultValue() { Object defaultValue = getFeature().getDefaultValue(); if (defaultValue == null) { return null; } EFactory factory = getFeature().getEType().getEPackage().getEFactoryInstance(); return factory.convertToString((EDataType)getFeature().getEType(), defaultValue); }
public boolean isSet(InternalEObject eObject, EStructuralFeature feature) { if (!feature.isUnsettable()) { if (feature.isMany()) { @SuppressWarnings("unchecked") InternalEList<Object> list = (InternalEList<Object>)eObject.eGet(feature); return list != null && !list.isEmpty(); } return !ObjectUtil.equals(eObject.eGet(feature), feature.getDefaultValue()); } Object[] settings = ((CDOObjectImpl)eObject).cdoBasicSettings(); if (settings == null) { return false; } int dynamicFeatureID = eDynamicFeatureID(eObject, feature); return settings[dynamicFeatureID] != null; }