blob: 2f61bd9b853e9deb21d707ac845fed35f8eb9088 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2008 Oracle.
* All rights reserved. This program and the accompanying materials are
* made available under the terms of the Eclipse Public License v1.0 which
* accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Oracle - initial API and implementation
*******************************************************************************/
package org.eclipse.jpt.eclipselink.core.internal.resource.orm.translators;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.jpt.core.internal.resource.orm.translators.AttributesTranslator;
import org.eclipse.jpt.eclipselink.core.resource.orm.EclipseLinkOrmFactory;
import org.eclipse.wst.common.internal.emf.resource.Translator;
public class EclipseLinkAttributesTranslator extends AttributesTranslator
implements EclipseLinkOrmXmlMapper
{
public EclipseLinkAttributesTranslator(String domNameAndPath, EStructuralFeature aFeature) {
super(domNameAndPath, aFeature);
}
@Override
public EObject createEMFObject(String nodeName, String readAheadName) {
return EclipseLinkOrmFactory.eINSTANCE.createAttributes();
}
@Override
protected Translator[] createChildren() {
return new Translator[] {
createIdTranslator(),
createEmbeddedIdTranslator(),
createBasicTranslator(),
createBasicCollectionTranslator(),
createBasicMapTranslator(),
createVersionTranslator(),
createManyToOneTranslator(),
createOneToManyTranslator(),
createOneToOneTranslator(),
createManyToManyTranslator(),
createEmbeddedTranslator(),
createTransformationTranslator(),
createTransientTranslator()
};
}
@Override
protected Translator createIdTranslator() {
return new EclipseLinkIdTranslator(ID, ORM_PKG.getAttributes_Ids());
}
// protected Translator createEmbeddedIdTranslator() {
// return new EmbeddedIdTranslator(EMBEDDED_ID, ORM_PKG.getAttributes_EmbeddedIds());
// }
@Override
protected Translator createBasicTranslator() {
return new EclipseLinkBasicTranslator(BASIC, ORM_PKG.getAttributes_Basics());
}
@Override
protected Translator createVersionTranslator() {
return new EclipseLinkVersionTranslator(VERSION, ORM_PKG.getAttributes_Versions());
}
@Override
protected Translator createManyToOneTranslator() {
return new EclipseLinkManyToOneTranslator(MANY_TO_ONE, ORM_PKG.getAttributes_ManyToOnes());
}
@Override
protected Translator createOneToOneTranslator() {
return new EclipseLinkOneToOneTranslator(ONE_TO_ONE, ORM_PKG.getAttributes_OneToOnes());
}
@Override
protected Translator createOneToManyTranslator() {
return new EclipseLinkOneToManyTranslator(ONE_TO_MANY, ORM_PKG.getAttributes_OneToManys());
}
@Override
protected Translator createManyToManyTranslator() {
return new EclipseLinkManyToManyTranslator(MANY_TO_MANY, ORM_PKG.getAttributes_ManyToManys());
}
// protected Translator createEmbeddedTranslator() {
// return new EmbeddedTranslator(EMBEDDED, ORM_PKG.getAttributes_Embeddeds());
// }
//
// protected Translator createTransientTranslator() {
// return new TransientTranslator(TRANSIENT, ORM_PKG.getAttributes_Transients());
// }
protected Translator createBasicCollectionTranslator() {
return new BasicCollectionTranslator(BASIC_COLLECTION, ECLIPSELINK_ORM_PKG.getAttributes_BasicCollections());
}
protected Translator createBasicMapTranslator() {
return new BasicMapTranslator(BASIC_MAP, ECLIPSELINK_ORM_PKG.getAttributes_BasicMaps());
}
protected Translator createTransformationTranslator() {
return new TransformationTranslator(TRANSFORMATION, ECLIPSELINK_ORM_PKG.getAttributes_Transformations());
}
}