@Override protected void init(XMLResource resource, Map<?, ?> options) { super.init(resource, options); xmlTypeInfo = new EMOFXMLTypeInfoImpl(xmlTypeInfo); saveTypeInfo = true; }
@Override protected void saveContainedMany(EObject eObject, EStructuralFeature eStructuralFeature) { if (eStructuralFeature == EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS) { doc.startElement(EMOFExtendedMetaData.XMI_EXTENSION_ELEMENT); doc.addAttribute(EMOFExtendedMetaData.XMI_EXTENDER_ATTRIBUTE, EcorePackage.eNS_URI); super.saveContainedMany(eObject, eStructuralFeature); doc.endElement(); } else { super.saveContainedMany(eObject, eStructuralFeature); } }
@Override protected void saveContainedSingle(EObject o, EStructuralFeature f) { if (f == EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE) { doc.startElement(EMOFExtendedMetaData.XMI_EXTENSION_ELEMENT); doc.addAttribute(EMOFExtendedMetaData.XMI_EXTENDER_ATTRIBUTE, EcorePackage.eNS_URI); super.saveContainedSingle(o, f); doc.endElement(); } else { super.saveContainedSingle(o, f); } }
@Override protected void saveFeatureMapElementReference(EObject o, EReference f) { if (extendedMetaData == null || extendedMetaData.getFeatureKind(f) != ExtendedMetaData.ELEMENT_FEATURE) { saveHref(o, f); } else { saveElementReference(o, f); } } }
doc.startElement(name); root = top; saveElementID(top); saveFeatures(top); doc.addLine(); handler.recordValues(currentNode, null, null, top); root = top; saveElementID(top); saveFeatures(top);
@Override protected XMLSave createXMLSave() { return new XMISaveImpl(createXMLHelper()); }
@Override protected String getDatatypeValue(Object value, EStructuralFeature f, boolean isAttribute) { String result = super.getDatatypeValue(value, f, isAttribute); if (f == EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND && "-1".equals(result)) { result = "*"; } return result; }
super.saveDataTypeElementSingle(o, f);
@Override protected void saveFeatureMapElementReference(EObject o, EReference f) { if (extendedMetaData == null || extendedMetaData.getFeatureKind(f) != ExtendedMetaData.ELEMENT_FEATURE) { saveHref(o, f); } else { saveElementReference(o, f); } } }
doc.startElement(name); root = top; saveElementID(top); saveFeatures(top); doc.addLine(); handler.recordValues(currentNode, null, null, top); root = top; saveElementID(top); saveFeatures(top);
@Override protected XMLSave createXMLSave() { return new XMISaveImpl(createXMLHelper()); }
@Override protected String getDatatypeValue(Object value, EStructuralFeature f, boolean isAttribute) { String result = super.getDatatypeValue(value, f, isAttribute); if (f == EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND && "-1".equals(result)) { result = "*"; } return result; }
@Override protected void init(XMLResource resource, Map<?, ?> options) { super.init(resource, options); featureTable = new Lookup(map, extendedMetaData); }
@Override protected void saveContainedMany(EObject eObject, EStructuralFeature eStructuralFeature) { if (eStructuralFeature == EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS) { doc.startElement(EMOFExtendedMetaData.XMI_EXTENSION_ELEMENT); doc.addAttribute(EMOFExtendedMetaData.XMI_EXTENDER_ATTRIBUTE, UMLPackage.eNS_URI); super.saveContainedMany(eObject, eStructuralFeature); doc.endElement(); } else if (((CMOF2UMLExtendedMetaData) extendedMetaData).getName( eStructuralFeature, true) == null) { if (eStructuralFeature != UMLPackage.Literals.CLASSIFIER__GENERALIZATION) { doc.startElement(EMOFExtendedMetaData.XMI_EXTENSION_ELEMENT); doc.addAttribute(EMOFExtendedMetaData.XMI_EXTENDER_ATTRIBUTE, UMLPackage.eNS_URI); super.saveContainedMany(eObject, eStructuralFeature); doc.endElement(); } } else { super.saveContainedMany(eObject, eStructuralFeature); } }
@Override protected void saveContainedSingle(EObject o, EStructuralFeature f) { if (f == EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE) { doc.startElement(EMOFExtendedMetaData.XMI_EXTENSION_ELEMENT); doc.addAttribute(EMOFExtendedMetaData.XMI_EXTENDER_ATTRIBUTE, EcorePackage.eNS_URI); super.saveContainedSingle(o, f); doc.endElement(); } else { super.saveContainedSingle(o, f); } }
options = modifiedOptions; XMLSaveImpl save = new XMISaveImpl(options, helper, encoding);
@Override protected void init(XMLResource resource, Map<?, ?> options) { super.init(resource, options); xmlTypeInfo = new EMOFXMLTypeInfoImpl(xmlTypeInfo); saveTypeInfo = true; }
super.saveContainedMany(o, f); doc.endElement(); super.saveContainedMany(o, f);
@Override protected void saveContainedSingle(EObject eObject, EStructuralFeature eStructuralFeature) { if (((CMOF2UMLExtendedMetaData) extendedMetaData).getName( eStructuralFeature, true) == null) { if (eStructuralFeature != UMLPackage.Literals.MULTIPLICITY_ELEMENT__LOWER_VALUE && eStructuralFeature != UMLPackage.Literals.MULTIPLICITY_ELEMENT__UPPER_VALUE && eStructuralFeature != UMLPackage.Literals.PARAMETER__DEFAULT_VALUE && eStructuralFeature != UMLPackage.Literals.PROPERTY__DEFAULT_VALUE) { doc.startElement(EMOFExtendedMetaData.XMI_EXTENSION_ELEMENT); doc.addAttribute(EMOFExtendedMetaData.XMI_EXTENDER_ATTRIBUTE, UMLPackage.eNS_URI); super.saveContainedSingle(eObject, eStructuralFeature); doc.endElement(); } } else { super.saveContainedSingle(eObject, eStructuralFeature); } }