Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmoore2009-07-01 15:58:43 +0000
committerkmoore2009-07-01 15:58:43 +0000
commit574a7bba7a179da87cc094f1978171debb2ce6eb (patch)
treed0320acc291f5ac75a057e6e3266de1699732a43
parent606e0e56225a1b0e43a4a8893d25cd5bac11e5bf (diff)
downloadwebtools.dali-574a7bba7a179da87cc094f1978171debb2ce6eb.tar.gz
webtools.dali-574a7bba7a179da87cc094f1978171debb2ce6eb.tar.xz
webtools.dali-574a7bba7a179da87cc094f1978171debb2ce6eb.zip
Refactored the remaining ORM attribute mappings to use an abstract superclass
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmBasicMapping.java325
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToManyMapping.java59
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToOneMapping.java65
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToManyMapping.java53
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToOneMapping.java65
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmVersionMapping.java238
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmBasicMapping.java306
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmManyToOneMapping.java48
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToManyMapping.java39
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToOneMapping.java48
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java219
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmBasicMapping.java9
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToManyMapping.java10
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToOneMapping.java10
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java13
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToOneMapping.java13
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmVersionMapping.java9
-rw-r--r--jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToManyMappingTests.java6
-rw-r--r--jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToOneMappingTests.java8
-rw-r--r--jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToManyMappingTests.java6
-rw-r--r--jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToOneMappingTests.java6
-rw-r--r--jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink1_1/core/tests/internal/context/orm/EclipseLink1_1OrmPersistentAttributeTests.java143
22 files changed, 860 insertions, 838 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmBasicMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmBasicMapping.java
new file mode 100644
index 0000000000..610ea48d66
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmBasicMapping.java
@@ -0,0 +1,325 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2009 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.core.internal.context.orm;
+
+import java.util.List;
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.BasicMapping;
+import org.eclipse.jpt.core.context.Converter;
+import org.eclipse.jpt.core.context.FetchType;
+import org.eclipse.jpt.core.context.Fetchable;
+import org.eclipse.jpt.core.context.Nullable;
+import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
+import org.eclipse.jpt.core.context.orm.OrmBasicMapping;
+import org.eclipse.jpt.core.context.orm.OrmColumn;
+import org.eclipse.jpt.core.context.orm.OrmColumnMapping;
+import org.eclipse.jpt.core.context.orm.OrmConverter;
+import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
+import org.eclipse.jpt.core.internal.validation.DefaultJpaValidationMessages;
+import org.eclipse.jpt.core.internal.validation.JpaValidationMessages;
+import org.eclipse.jpt.core.resource.orm.Attributes;
+import org.eclipse.jpt.core.resource.orm.OrmFactory;
+import org.eclipse.jpt.core.resource.orm.XmlBasic;
+import org.eclipse.jpt.core.resource.orm.XmlColumn;
+import org.eclipse.jpt.db.Table;
+import org.eclipse.wst.validation.internal.provisional.core.IMessage;
+import org.eclipse.wst.validation.internal.provisional.core.IReporter;
+
+
+public abstract class AbstractOrmBasicMapping<T extends XmlBasic>
+ extends AbstractOrmAttributeMapping<T>
+ implements OrmBasicMapping
+{
+ protected final OrmColumn column;
+
+ protected FetchType specifiedFetch;
+
+ protected Boolean specifiedOptional;
+
+ protected OrmConverter defaultConverter;
+
+ protected OrmConverter specifiedConverter;
+
+ protected AbstractOrmBasicMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ super(parent, resourceMapping);
+ this.column = getJpaFactory().buildOrmColumn(this, this);
+ this.column.initialize(this.getResourceColumn());//TODO pass in to factory
+ this.specifiedFetch = this.getResourceFetch();
+ this.specifiedOptional = this.getResourceOptional();
+ this.defaultConverter = new GenericOrmNullConverter(this);
+ this.specifiedConverter = this.buildSpecifiedConverter(this.getResourceConverterType());
+ }
+
+ public FetchType getFetch() {
+ return (this.getSpecifiedFetch() == null) ? this.getDefaultFetch() : this.getSpecifiedFetch();
+ }
+
+ public FetchType getDefaultFetch() {
+ return BasicMapping.DEFAULT_FETCH_TYPE;
+ }
+
+ public FetchType getSpecifiedFetch() {
+ return this.specifiedFetch;
+ }
+
+ public void setSpecifiedFetch(FetchType newSpecifiedFetch) {
+ FetchType oldFetch = this.specifiedFetch;
+ this.specifiedFetch = newSpecifiedFetch;
+ this.resourceAttributeMapping.setFetch(FetchType.toOrmResourceModel(newSpecifiedFetch));
+ firePropertyChanged(Fetchable.SPECIFIED_FETCH_PROPERTY, oldFetch, newSpecifiedFetch);
+ }
+
+ protected void setSpecifiedFetch_(FetchType newSpecifiedFetch) {
+ FetchType oldFetch = this.specifiedFetch;
+ this.specifiedFetch = newSpecifiedFetch;
+ firePropertyChanged(Fetchable.SPECIFIED_FETCH_PROPERTY, oldFetch, newSpecifiedFetch);
+ }
+
+ public boolean isOptional() {
+ return (this.getSpecifiedOptional() == null) ? this.isDefaultOptional() : this.getSpecifiedOptional().booleanValue();
+ }
+
+ public boolean isDefaultOptional() {
+ return Nullable.DEFAULT_OPTIONAL;
+ }
+
+ public Boolean getSpecifiedOptional() {
+ return this.specifiedOptional;
+ }
+
+ public void setSpecifiedOptional(Boolean newSpecifiedOptional) {
+ Boolean oldOptional = this.specifiedOptional;
+ this.specifiedOptional = newSpecifiedOptional;
+ this.resourceAttributeMapping.setOptional(newSpecifiedOptional);
+ firePropertyChanged(Nullable.SPECIFIED_OPTIONAL_PROPERTY, oldOptional, newSpecifiedOptional);
+ }
+
+ protected void setSpecifiedOptional_(Boolean newSpecifiedOptional) {
+ Boolean oldOptional = this.specifiedOptional;
+ this.specifiedOptional = newSpecifiedOptional;
+ firePropertyChanged(Nullable.SPECIFIED_OPTIONAL_PROPERTY, oldOptional, newSpecifiedOptional);
+ }
+
+ public OrmConverter getConverter() {
+ return getSpecifiedConverter() == null ? getDefaultConverter() : getSpecifiedConverter();
+ }
+
+ public OrmConverter getDefaultConverter() {
+ return this.defaultConverter;
+ }
+
+ public OrmConverter getSpecifiedConverter() {
+ return this.specifiedConverter;
+ }
+
+ protected String getSpecifedConverterType() {
+ if (this.specifiedConverter == null) {
+ return Converter.NO_CONVERTER;
+ }
+ return this.specifiedConverter.getType();
+ }
+
+ public void setSpecifiedConverter(String converterType) {
+ if (getSpecifedConverterType() == converterType) {
+ return;
+ }
+ OrmConverter oldConverter = this.specifiedConverter;
+ OrmConverter newConverter = buildSpecifiedConverter(converterType);
+ this.specifiedConverter = null;
+ if (oldConverter != null) {
+ oldConverter.removeFromResourceModel();
+ }
+ this.specifiedConverter = newConverter;
+ if (newConverter != null) {
+ newConverter.addToResourceModel();
+ }
+ firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
+ }
+
+ protected void setSpecifiedConverter(OrmConverter newConverter) {
+ OrmConverter oldConverter = this.specifiedConverter;
+ this.specifiedConverter = newConverter;
+ firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
+ }
+
+ public String getKey() {
+ return MappingKeys.BASIC_ATTRIBUTE_MAPPING_KEY;
+ }
+
+ public void initializeOn(OrmAttributeMapping newMapping) {
+ newMapping.initializeFromOrmBasicMapping(this);
+ }
+
+
+ @Override
+ public void initializeFromOrmColumnMapping(OrmColumnMapping oldMapping) {
+ super.initializeFromOrmColumnMapping(oldMapping);
+ getColumn().initializeFrom(oldMapping.getColumn());
+ }
+
+ public int getXmlSequence() {
+ return 20;
+ }
+
+ @Override
+ public boolean isOverridableAttributeMapping() {
+ return true;
+ }
+
+ public OrmColumn getColumn() {
+ return this.column;
+ }
+
+ public String getDefaultColumnName() {
+ return getName();
+ }
+
+ public String getDefaultTableName() {
+ return getTypeMapping().getPrimaryTableName();
+ }
+
+ public Table getDbTable(String tableName) {
+ return getTypeMapping().getDbTable(tableName);
+ }
+
+ @Override
+ public void update() {
+ super.update();
+ this.setSpecifiedFetch_(this.getResourceFetch());
+ this.setSpecifiedOptional_(this.getResourceOptional());
+ this.column.update(this.getResourceColumn());
+ if (getResourceConverterType() == getSpecifedConverterType()) {
+ getSpecifiedConverter().update();
+ }
+ else {
+ setSpecifiedConverter(buildSpecifiedConverter(getResourceConverterType()));
+ }
+ }
+
+ protected Boolean getResourceOptional() {
+ return this.resourceAttributeMapping.getOptional();
+ }
+
+ protected FetchType getResourceFetch() {
+ return FetchType.fromOrmResourceModel(this.resourceAttributeMapping.getFetch());
+ }
+
+ protected OrmConverter buildSpecifiedConverter(String converterType) {
+ if (converterType == Converter.ENUMERATED_CONVERTER) {
+ return new GenericOrmEnumeratedConverter(this, this.resourceAttributeMapping);
+ }
+ else if (converterType == Converter.TEMPORAL_CONVERTER) {
+ return new GenericOrmTemporalConverter(this, this.resourceAttributeMapping);
+ }
+ else if (converterType == Converter.LOB_CONVERTER) {
+ return new GenericOrmLobConverter(this, this.resourceAttributeMapping);
+ }
+ return null;
+ }
+
+ protected String getResourceConverterType() {
+ if (this.resourceAttributeMapping.getEnumerated() != null) {
+ return Converter.ENUMERATED_CONVERTER;
+ }
+ else if (this.resourceAttributeMapping.getTemporal() != null) {
+ return Converter.TEMPORAL_CONVERTER;
+ }
+ else if (this.resourceAttributeMapping.isLob()) {
+ return Converter.LOB_CONVERTER;
+ }
+
+ return null;
+ }
+
+ public void addToResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getBasics().add(this.resourceAttributeMapping);
+ }
+
+ public void removeFromResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getBasics().remove(this.resourceAttributeMapping);
+ }
+
+ //***************** XmlColumn.Owner implementation ****************
+
+ public XmlColumn getResourceColumn() {
+ return this.resourceAttributeMapping.getColumn();
+ }
+
+ public void addResourceColumn() {
+ this.resourceAttributeMapping.setColumn(OrmFactory.eINSTANCE.createXmlColumn());
+ }
+
+ public void removeResourceColumn() {
+ this.resourceAttributeMapping.setColumn(null);
+ }
+
+ // ****************** validation ****************
+
+ @Override
+ public void validate(List<IMessage> messages, IReporter reporter) {
+ super.validate(messages, reporter);
+ if (this.shouldValidateAgainstDatabase()) {
+ this.validateColumn(messages);
+ }
+ }
+
+ protected void validateColumn(List<IMessage> messages) {
+ String tableName = this.column.getTable();
+ if (this.getTypeMapping().tableNameIsInvalid(tableName)) {
+ if (this.getPersistentAttribute().isVirtual()) {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_TABLE,
+ new String[] {this.getName(), tableName, this.column.getName()},
+ this.column,
+ this.column.getTableTextRange()
+ )
+ );
+ } else {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.COLUMN_UNRESOLVED_TABLE,
+ new String[] {tableName, this.column.getName()},
+ this.column,
+ this.column.getTableTextRange()
+ )
+ );
+ }
+ return;
+ }
+
+ if ( ! this.column.isResolved() && this.column.getDbTable() != null) {
+ if (this.getPersistentAttribute().isVirtual()) {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_NAME,
+ new String[] {this.getName(), this.column.getName()},
+ this.column,
+ this.column.getNameTextRange()
+ )
+ );
+ } else {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.COLUMN_UNRESOLVED_NAME,
+ new String[] {this.column.getName()},
+ this.column,
+ this.column.getNameTextRange()
+ )
+ );
+ }
+ }
+ }
+
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToManyMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToManyMapping.java
new file mode 100644
index 0000000000..8a047bd472
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToManyMapping.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2009 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.core.internal.context.orm;
+
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
+import org.eclipse.jpt.core.context.orm.OrmManyToManyMapping;
+import org.eclipse.jpt.core.context.orm.OrmManyToManyRelationshipReference;
+import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
+import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
+import org.eclipse.jpt.core.resource.orm.Attributes;
+import org.eclipse.jpt.core.resource.orm.XmlManyToMany;
+
+public abstract class AbstractOrmManyToManyMapping<T extends XmlManyToMany>
+ extends AbstractOrmMultiRelationshipMapping<T>
+ implements OrmManyToManyMapping
+{
+ protected AbstractOrmManyToManyMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ super(parent, resourceMapping);
+ }
+
+
+ @Override
+ protected OrmRelationshipReference buildRelationshipReference() {
+ return new GenericOrmManyToManyRelationshipReference(this, this.resourceAttributeMapping);
+ }
+
+ public int getXmlSequence() {
+ return 70;
+ }
+
+ public String getKey() {
+ return MappingKeys.MANY_TO_MANY_ATTRIBUTE_MAPPING_KEY;
+ }
+
+ public void initializeOn(OrmAttributeMapping newMapping) {
+ newMapping.initializeFromOrmManyToManyMapping(this);
+ }
+
+ public void addToResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getManyToManys().add(this.resourceAttributeMapping);
+ }
+
+ public void removeFromResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getManyToManys().remove(this.resourceAttributeMapping);
+ }
+
+ @Override
+ public OrmManyToManyRelationshipReference getRelationshipReference() {
+ return (OrmManyToManyRelationshipReference) super.getRelationshipReference();
+ }
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToOneMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToOneMapping.java
new file mode 100644
index 0000000000..34a2af5987
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmManyToOneMapping.java
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2009 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.core.internal.context.orm;
+
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
+import org.eclipse.jpt.core.context.orm.OrmManyToOneMapping;
+import org.eclipse.jpt.core.context.orm.OrmManyToOneRelationshipReference;
+import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
+import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
+import org.eclipse.jpt.core.resource.orm.Attributes;
+import org.eclipse.jpt.core.resource.orm.XmlManyToOne;
+
+
+public abstract class AbstractOrmManyToOneMapping<T extends XmlManyToOne>
+ extends AbstractOrmSingleRelationshipMapping<T>
+ implements OrmManyToOneMapping
+{
+ protected AbstractOrmManyToOneMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ super(parent, resourceMapping);
+ }
+
+
+ @Override
+ protected OrmRelationshipReference buildRelationshipReference() {
+ return new GenericOrmManyToOneRelationshipReference(this, this.resourceAttributeMapping);
+ }
+
+ public int getXmlSequence() {
+ return 40;
+ }
+
+ public String getKey() {
+ return MappingKeys.MANY_TO_ONE_ATTRIBUTE_MAPPING_KEY;
+ }
+
+ public void initializeOn(OrmAttributeMapping newMapping) {
+ newMapping.initializeFromOrmManyToOneMapping(this);
+ }
+
+ public void addToResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getManyToOnes().add(this.resourceAttributeMapping);
+ }
+
+ public void removeFromResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getManyToOnes().remove(this.resourceAttributeMapping);
+ }
+
+ @Override
+ public OrmManyToOneRelationshipReference getRelationshipReference() {
+ return (OrmManyToOneRelationshipReference) super.getRelationshipReference();
+ }
+
+ @Override
+ public boolean isOverridableAssociationMapping() {
+ return true;
+ }
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToManyMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToManyMapping.java
new file mode 100644
index 0000000000..bb17a5b49b
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToManyMapping.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2009 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.core.internal.context.orm;
+
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
+import org.eclipse.jpt.core.context.orm.OrmOneToManyMapping;
+import org.eclipse.jpt.core.context.orm.OrmOneToManyRelationshipReference;
+import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
+import org.eclipse.jpt.core.resource.orm.Attributes;
+import org.eclipse.jpt.core.resource.orm.XmlOneToMany;
+
+
+public abstract class AbstractOrmOneToManyMapping<T extends XmlOneToMany>
+ extends AbstractOrmMultiRelationshipMapping<T>
+ implements OrmOneToManyMapping
+{
+ protected AbstractOrmOneToManyMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ super(parent, resourceMapping);
+ }
+
+ public int getXmlSequence() {
+ return 50;
+ }
+
+ public String getKey() {
+ return MappingKeys.ONE_TO_MANY_ATTRIBUTE_MAPPING_KEY;
+ }
+
+ public void initializeOn(OrmAttributeMapping newMapping) {
+ newMapping.initializeFromOrmOneToManyMapping(this);
+ }
+
+ public void addToResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getOneToManys().add(this.resourceAttributeMapping);
+ }
+
+ public void removeFromResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getOneToManys().remove(this.resourceAttributeMapping);
+ }
+
+ @Override
+ public OrmOneToManyRelationshipReference getRelationshipReference() {
+ return (OrmOneToManyRelationshipReference) super.getRelationshipReference();
+ }
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToOneMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToOneMapping.java
new file mode 100644
index 0000000000..bb7a65975b
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmOneToOneMapping.java
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2007, 2009 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.core.internal.context.orm;
+
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
+import org.eclipse.jpt.core.context.orm.OrmOneToOneMapping;
+import org.eclipse.jpt.core.context.orm.OrmOneToOneRelationshipReference;
+import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
+import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
+import org.eclipse.jpt.core.resource.orm.Attributes;
+import org.eclipse.jpt.core.resource.orm.XmlOneToOne;
+
+
+public abstract class AbstractOrmOneToOneMapping<T extends XmlOneToOne>
+ extends AbstractOrmSingleRelationshipMapping<T>
+ implements OrmOneToOneMapping
+{
+ protected AbstractOrmOneToOneMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ super(parent, resourceMapping);
+ }
+
+
+ @Override
+ protected OrmRelationshipReference buildRelationshipReference() {
+ return new GenericOrmOneToOneRelationshipReference(this, this.resourceAttributeMapping);
+ }
+
+ public int getXmlSequence() {
+ return 60;
+ }
+
+ public String getKey() {
+ return MappingKeys.ONE_TO_ONE_ATTRIBUTE_MAPPING_KEY;
+ }
+
+ public void initializeOn(OrmAttributeMapping newMapping) {
+ newMapping.initializeFromOrmOneToOneMapping(this);
+ }
+
+ public void addToResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getOneToOnes().add(this.resourceAttributeMapping);
+ }
+
+ public void removeFromResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getOneToOnes().remove(this.resourceAttributeMapping);
+ }
+
+ @Override
+ public OrmOneToOneRelationshipReference getRelationshipReference() {
+ return (OrmOneToOneRelationshipReference) super.getRelationshipReference();
+ }
+
+ @Override
+ public boolean isOverridableAssociationMapping() {
+ return true;
+ }
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmVersionMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmVersionMapping.java
new file mode 100644
index 0000000000..2682fc8c0d
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/AbstractOrmVersionMapping.java
@@ -0,0 +1,238 @@
+/*******************************************************************************
+ * Copyright (c) 2007, 2009 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.core.internal.context.orm;
+
+import java.util.List;
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.Converter;
+import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
+import org.eclipse.jpt.core.context.orm.OrmColumn;
+import org.eclipse.jpt.core.context.orm.OrmColumnMapping;
+import org.eclipse.jpt.core.context.orm.OrmConverter;
+import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
+import org.eclipse.jpt.core.context.orm.OrmVersionMapping;
+import org.eclipse.jpt.core.internal.validation.DefaultJpaValidationMessages;
+import org.eclipse.jpt.core.internal.validation.JpaValidationMessages;
+import org.eclipse.jpt.core.resource.orm.Attributes;
+import org.eclipse.jpt.core.resource.orm.OrmFactory;
+import org.eclipse.jpt.core.resource.orm.XmlColumn;
+import org.eclipse.jpt.core.resource.orm.XmlVersion;
+import org.eclipse.jpt.db.Table;
+import org.eclipse.wst.validation.internal.provisional.core.IMessage;
+import org.eclipse.wst.validation.internal.provisional.core.IReporter;
+
+
+public abstract class AbstractOrmVersionMapping<T extends XmlVersion>
+ extends AbstractOrmAttributeMapping<T>
+ implements OrmVersionMapping
+{
+ protected final OrmColumn column;
+
+ protected OrmConverter defaultConverter;
+ protected OrmConverter specifiedConverter;
+
+ protected AbstractOrmVersionMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ super(parent, resourceMapping);
+ this.column = getJpaFactory().buildOrmColumn(this, this);
+ this.column.initialize(this.getResourceColumn());//TODO pass in to constructor
+ this.defaultConverter = new GenericOrmNullConverter(this);
+ this.specifiedConverter = this.buildSpecifiedConverter(this.getResourceConverterType());
+ }
+
+ public int getXmlSequence() {
+ return 30;
+ }
+
+ public String getKey() {
+ return MappingKeys.VERSION_ATTRIBUTE_MAPPING_KEY;
+ }
+
+ public void initializeOn(OrmAttributeMapping newMapping) {
+ newMapping.initializeFromOrmVersionMapping(this);
+ }
+
+ @Override
+ public void initializeFromOrmColumnMapping(OrmColumnMapping oldMapping) {
+ super.initializeFromOrmColumnMapping(oldMapping);
+ getColumn().initializeFrom(oldMapping.getColumn());
+ }
+
+ public OrmColumn getColumn() {
+ return this.column;
+ }
+
+ public OrmConverter getConverter() {
+ return getSpecifiedConverter() == null ? getDefaultConverter() : getSpecifiedConverter();
+ }
+
+ public OrmConverter getDefaultConverter() {
+ return this.defaultConverter;
+ }
+
+ public OrmConverter getSpecifiedConverter() {
+ return this.specifiedConverter;
+ }
+
+ protected String getSpecifedConverterType() {
+ if (this.specifiedConverter == null) {
+ return Converter.NO_CONVERTER;
+ }
+ return this.specifiedConverter.getType();
+ }
+
+ public void setSpecifiedConverter(String converterType) {
+ if (getSpecifedConverterType() == converterType) {
+ return;
+ }
+ OrmConverter oldConverter = this.specifiedConverter;
+ OrmConverter newConverter = buildSpecifiedConverter(converterType);
+ this.specifiedConverter = null;
+ if (oldConverter != null) {
+ oldConverter.removeFromResourceModel();
+ }
+ this.specifiedConverter = newConverter;
+ if (newConverter != null) {
+ newConverter.addToResourceModel();
+ }
+ firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
+ }
+
+ protected void setSpecifiedConverter(OrmConverter newConverter) {
+ OrmConverter oldConverter = this.specifiedConverter;
+ this.specifiedConverter = newConverter;
+ firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
+ }
+
+ public void addToResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getVersions().add(this.resourceAttributeMapping);
+ }
+
+ public void removeFromResourceModel(Attributes resourceAttributes) {
+ resourceAttributes.getVersions().remove(this.resourceAttributeMapping);
+ }
+
+ public String getDefaultColumnName() {
+ return getName();
+ }
+
+ public String getDefaultTableName() {
+ return getTypeMapping().getPrimaryTableName();
+ }
+
+ public Table getDbTable(String tableName) {
+ return getTypeMapping().getDbTable(tableName);
+ }
+
+ @Override
+ public void update() {
+ super.update();
+ this.column.update(this.getResourceColumn());
+ if (getResourceConverterType() == getSpecifedConverterType()) {
+ getSpecifiedConverter().update();
+ }
+ else {
+ setSpecifiedConverter(buildSpecifiedConverter(getResourceConverterType()));
+ }
+ }
+
+ protected OrmConverter buildSpecifiedConverter(String converterType) {
+ if (converterType == Converter.TEMPORAL_CONVERTER) {
+ return new GenericOrmTemporalConverter(this, this.resourceAttributeMapping);
+ }
+ return null;
+ }
+
+ protected String getResourceConverterType() {
+ if (this.resourceAttributeMapping.getTemporal() != null) {
+ return Converter.TEMPORAL_CONVERTER;
+ }
+
+ return null;
+ }
+
+ //***************** XmlColumn.Owner implementation ****************
+
+ public XmlColumn getResourceColumn() {
+ return this.resourceAttributeMapping.getColumn();
+ }
+
+ public void addResourceColumn() {
+ this.resourceAttributeMapping.setColumn(OrmFactory.eINSTANCE.createXmlColumn());
+ }
+
+ public void removeResourceColumn() {
+ this.resourceAttributeMapping.setColumn(null);
+ }
+
+ // ****************** validation ****************
+
+ @Override
+ public void validate(List<IMessage> messages, IReporter reporter) {
+ super.validate(messages, reporter);
+
+ if (this.shouldValidateAgainstDatabase()) {
+ this.validateColumn(messages);
+ }
+ }
+
+ protected void validateColumn(List<IMessage> messages) {
+ OrmPersistentAttribute pa = this.getPersistentAttribute();
+ String tableName = this.column.getTable();
+ if (this.getTypeMapping().tableNameIsInvalid(tableName)) {
+ if (pa.isVirtual()) {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_TABLE,
+ new String[] {pa.getName(), tableName, this.column.getName()},
+ this.column,
+ this.column.getTableTextRange()
+ )
+ );
+ } else {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.COLUMN_UNRESOLVED_TABLE,
+ new String[] {tableName, this.column.getName()},
+ this.column,
+ this.column.getTableTextRange()
+ )
+ );
+ }
+ return;
+ }
+
+ if ( ! this.column.isResolved() && this.column.getDbTable() != null) {
+ if (pa.isVirtual()) {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_NAME,
+ new String[] {pa.getName(), this.column.getName()},
+ this.column,
+ this.column.getNameTextRange()
+ )
+ );
+ } else {
+ messages.add(
+ DefaultJpaValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JpaValidationMessages.COLUMN_UNRESOLVED_NAME,
+ new String[] {this.column.getName()},
+ this.column,
+ this.column.getNameTextRange()
+ )
+ );
+ }
+ }
+ }
+
+}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmBasicMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmBasicMapping.java
index 81956c204e..db0fc2a66c 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmBasicMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmBasicMapping.java
@@ -9,317 +9,15 @@
******************************************************************************/
package org.eclipse.jpt.core.internal.context.orm;
-import java.util.List;
-import org.eclipse.jpt.core.MappingKeys;
-import org.eclipse.jpt.core.context.BasicMapping;
-import org.eclipse.jpt.core.context.Converter;
-import org.eclipse.jpt.core.context.FetchType;
-import org.eclipse.jpt.core.context.Fetchable;
-import org.eclipse.jpt.core.context.Nullable;
-import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
-import org.eclipse.jpt.core.context.orm.OrmBasicMapping;
-import org.eclipse.jpt.core.context.orm.OrmColumn;
-import org.eclipse.jpt.core.context.orm.OrmColumnMapping;
-import org.eclipse.jpt.core.context.orm.OrmConverter;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.internal.validation.DefaultJpaValidationMessages;
-import org.eclipse.jpt.core.internal.validation.JpaValidationMessages;
-import org.eclipse.jpt.core.resource.orm.Attributes;
-import org.eclipse.jpt.core.resource.orm.OrmFactory;
import org.eclipse.jpt.core.resource.orm.XmlBasic;
-import org.eclipse.jpt.core.resource.orm.XmlColumn;
-import org.eclipse.jpt.db.Table;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class GenericOrmBasicMapping<T extends XmlBasic>
- extends AbstractOrmAttributeMapping<T>
- implements OrmBasicMapping
+public class GenericOrmBasicMapping extends AbstractOrmBasicMapping<XmlBasic>
{
- protected final OrmColumn column;
- protected FetchType specifiedFetch;
-
- protected Boolean specifiedOptional;
-
- protected OrmConverter defaultConverter;
-
- protected OrmConverter specifiedConverter;
-
- public GenericOrmBasicMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public GenericOrmBasicMapping(OrmPersistentAttribute parent, XmlBasic resourceMapping) {
super(parent, resourceMapping);
- this.column = getJpaFactory().buildOrmColumn(this, this);
- this.column.initialize(this.getResourceColumn());//TODO pass in to factory
- this.specifiedFetch = this.getResourceFetch();
- this.specifiedOptional = this.getResourceOptional();
- this.defaultConverter = new GenericOrmNullConverter(this);
- this.specifiedConverter = this.buildSpecifiedConverter(this.getResourceConverterType());
- }
-
- public FetchType getFetch() {
- return (this.getSpecifiedFetch() == null) ? this.getDefaultFetch() : this.getSpecifiedFetch();
- }
-
- public FetchType getDefaultFetch() {
- return BasicMapping.DEFAULT_FETCH_TYPE;
- }
-
- public FetchType getSpecifiedFetch() {
- return this.specifiedFetch;
- }
-
- public void setSpecifiedFetch(FetchType newSpecifiedFetch) {
- FetchType oldFetch = this.specifiedFetch;
- this.specifiedFetch = newSpecifiedFetch;
- this.resourceAttributeMapping.setFetch(FetchType.toOrmResourceModel(newSpecifiedFetch));
- firePropertyChanged(Fetchable.SPECIFIED_FETCH_PROPERTY, oldFetch, newSpecifiedFetch);
- }
-
- protected void setSpecifiedFetch_(FetchType newSpecifiedFetch) {
- FetchType oldFetch = this.specifiedFetch;
- this.specifiedFetch = newSpecifiedFetch;
- firePropertyChanged(Fetchable.SPECIFIED_FETCH_PROPERTY, oldFetch, newSpecifiedFetch);
- }
-
- public boolean isOptional() {
- return (this.getSpecifiedOptional() == null) ? this.isDefaultOptional() : this.getSpecifiedOptional().booleanValue();
- }
-
- public boolean isDefaultOptional() {
- return Nullable.DEFAULT_OPTIONAL;
- }
-
- public Boolean getSpecifiedOptional() {
- return this.specifiedOptional;
- }
-
- public void setSpecifiedOptional(Boolean newSpecifiedOptional) {
- Boolean oldOptional = this.specifiedOptional;
- this.specifiedOptional = newSpecifiedOptional;
- this.resourceAttributeMapping.setOptional(newSpecifiedOptional);
- firePropertyChanged(Nullable.SPECIFIED_OPTIONAL_PROPERTY, oldOptional, newSpecifiedOptional);
- }
-
- protected void setSpecifiedOptional_(Boolean newSpecifiedOptional) {
- Boolean oldOptional = this.specifiedOptional;
- this.specifiedOptional = newSpecifiedOptional;
- firePropertyChanged(Nullable.SPECIFIED_OPTIONAL_PROPERTY, oldOptional, newSpecifiedOptional);
- }
-
- public OrmConverter getConverter() {
- return getSpecifiedConverter() == null ? getDefaultConverter() : getSpecifiedConverter();
- }
-
- public OrmConverter getDefaultConverter() {
- return this.defaultConverter;
- }
-
- public OrmConverter getSpecifiedConverter() {
- return this.specifiedConverter;
- }
-
- protected String getSpecifedConverterType() {
- if (this.specifiedConverter == null) {
- return Converter.NO_CONVERTER;
- }
- return this.specifiedConverter.getType();
- }
-
- public void setSpecifiedConverter(String converterType) {
- if (getSpecifedConverterType() == converterType) {
- return;
- }
- OrmConverter oldConverter = this.specifiedConverter;
- OrmConverter newConverter = buildSpecifiedConverter(converterType);
- this.specifiedConverter = null;
- if (oldConverter != null) {
- oldConverter.removeFromResourceModel();
- }
- this.specifiedConverter = newConverter;
- if (newConverter != null) {
- newConverter.addToResourceModel();
- }
- firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
- }
-
- protected void setSpecifiedConverter(OrmConverter newConverter) {
- OrmConverter oldConverter = this.specifiedConverter;
- this.specifiedConverter = newConverter;
- firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
- }
-
- public String getKey() {
- return MappingKeys.BASIC_ATTRIBUTE_MAPPING_KEY;
- }
-
- public void initializeOn(OrmAttributeMapping newMapping) {
- newMapping.initializeFromOrmBasicMapping(this);
- }
-
-
- @Override
- public void initializeFromOrmColumnMapping(OrmColumnMapping oldMapping) {
- super.initializeFromOrmColumnMapping(oldMapping);
- getColumn().initializeFrom(oldMapping.getColumn());
- }
-
- public int getXmlSequence() {
- return 20;
- }
-
- @Override
- public boolean isOverridableAttributeMapping() {
- return true;
- }
-
- public OrmColumn getColumn() {
- return this.column;
- }
-
- public String getDefaultColumnName() {
- return getName();
- }
-
- public String getDefaultTableName() {
- return getTypeMapping().getPrimaryTableName();
- }
-
- public Table getDbTable(String tableName) {
- return getTypeMapping().getDbTable(tableName);
- }
-
- @Override
- public void update() {
- super.update();
- this.setSpecifiedFetch_(this.getResourceFetch());
- this.setSpecifiedOptional_(this.getResourceOptional());
- this.column.update(this.getResourceColumn());
- if (getResourceConverterType() == getSpecifedConverterType()) {
- getSpecifiedConverter().update();
- }
- else {
- setSpecifiedConverter(buildSpecifiedConverter(getResourceConverterType()));
- }
- }
-
- protected Boolean getResourceOptional() {
- return this.resourceAttributeMapping.getOptional();
- }
-
- protected FetchType getResourceFetch() {
- return FetchType.fromOrmResourceModel(this.resourceAttributeMapping.getFetch());
- }
-
- protected OrmConverter buildSpecifiedConverter(String converterType) {
- if (converterType == Converter.ENUMERATED_CONVERTER) {
- return new GenericOrmEnumeratedConverter(this, this.resourceAttributeMapping);
- }
- else if (converterType == Converter.TEMPORAL_CONVERTER) {
- return new GenericOrmTemporalConverter(this, this.resourceAttributeMapping);
- }
- else if (converterType == Converter.LOB_CONVERTER) {
- return new GenericOrmLobConverter(this, this.resourceAttributeMapping);
- }
- return null;
- }
-
- protected String getResourceConverterType() {
- if (this.resourceAttributeMapping.getEnumerated() != null) {
- return Converter.ENUMERATED_CONVERTER;
- }
- else if (this.resourceAttributeMapping.getTemporal() != null) {
- return Converter.TEMPORAL_CONVERTER;
- }
- else if (this.resourceAttributeMapping.isLob()) {
- return Converter.LOB_CONVERTER;
- }
-
- return null;
- }
-
- public void addToResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getBasics().add(this.resourceAttributeMapping);
- }
-
- public void removeFromResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getBasics().remove(this.resourceAttributeMapping);
- }
-
- //***************** XmlColumn.Owner implementation ****************
-
- public XmlColumn getResourceColumn() {
- return this.resourceAttributeMapping.getColumn();
- }
-
- public void addResourceColumn() {
- this.resourceAttributeMapping.setColumn(OrmFactory.eINSTANCE.createXmlColumn());
- }
-
- public void removeResourceColumn() {
- this.resourceAttributeMapping.setColumn(null);
- }
-
- // ****************** validation ****************
-
- @Override
- public void validate(List<IMessage> messages, IReporter reporter) {
- super.validate(messages, reporter);
- if (this.shouldValidateAgainstDatabase()) {
- this.validateColumn(messages);
- }
- }
-
- protected void validateColumn(List<IMessage> messages) {
- String tableName = this.column.getTable();
- if (this.getTypeMapping().tableNameIsInvalid(tableName)) {
- if (this.getPersistentAttribute().isVirtual()) {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_TABLE,
- new String[] {this.getName(), tableName, this.column.getName()},
- this.column,
- this.column.getTableTextRange()
- )
- );
- } else {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.COLUMN_UNRESOLVED_TABLE,
- new String[] {tableName, this.column.getName()},
- this.column,
- this.column.getTableTextRange()
- )
- );
- }
- return;
- }
-
- if ( ! this.column.isResolved() && this.column.getDbTable() != null) {
- if (this.getPersistentAttribute().isVirtual()) {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_NAME,
- new String[] {this.getName(), this.column.getName()},
- this.column,
- this.column.getNameTextRange()
- )
- );
- } else {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.COLUMN_UNRESOLVED_NAME,
- new String[] {this.column.getName()},
- this.column,
- this.column.getNameTextRange()
- )
- );
- }
- }
}
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmManyToOneMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmManyToOneMapping.java
index 413333000e..d40fdbe6f1 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmManyToOneMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmManyToOneMapping.java
@@ -9,57 +9,15 @@
******************************************************************************/
package org.eclipse.jpt.core.internal.context.orm;
-import org.eclipse.jpt.core.MappingKeys;
-import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
-import org.eclipse.jpt.core.context.orm.OrmManyToOneMapping;
-import org.eclipse.jpt.core.context.orm.OrmManyToOneRelationshipReference;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
-import org.eclipse.jpt.core.resource.orm.Attributes;
import org.eclipse.jpt.core.resource.orm.XmlManyToOne;
-public class GenericOrmManyToOneMapping<T extends XmlManyToOne>
- extends AbstractOrmSingleRelationshipMapping<T>
- implements OrmManyToOneMapping
+public class GenericOrmManyToOneMapping extends AbstractOrmManyToOneMapping<XmlManyToOne>
{
- public GenericOrmManyToOneMapping(OrmPersistentAttribute parent, T resourceMapping) {
- super(parent, resourceMapping);
- }
-
-
- @Override
- protected OrmRelationshipReference buildRelationshipReference() {
- return new GenericOrmManyToOneRelationshipReference(this, this.resourceAttributeMapping);
- }
-
- public int getXmlSequence() {
- return 40;
- }
-
- public String getKey() {
- return MappingKeys.MANY_TO_ONE_ATTRIBUTE_MAPPING_KEY;
- }
- public void initializeOn(OrmAttributeMapping newMapping) {
- newMapping.initializeFromOrmManyToOneMapping(this);
- }
-
- public void addToResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getManyToOnes().add(this.resourceAttributeMapping);
- }
-
- public void removeFromResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getManyToOnes().remove(this.resourceAttributeMapping);
- }
-
- @Override
- public OrmManyToOneRelationshipReference getRelationshipReference() {
- return (OrmManyToOneRelationshipReference) super.getRelationshipReference();
+ public GenericOrmManyToOneMapping(OrmPersistentAttribute parent, XmlManyToOne resourceMapping) {
+ super(parent, resourceMapping);
}
- @Override
- public boolean isOverridableAssociationMapping() {
- return true;
- }
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToManyMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToManyMapping.java
index ea7942295e..8f610e06c5 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToManyMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToManyMapping.java
@@ -9,52 +9,21 @@
******************************************************************************/
package org.eclipse.jpt.core.internal.context.orm;
-import org.eclipse.jpt.core.MappingKeys;
-import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
-import org.eclipse.jpt.core.context.orm.OrmOneToManyMapping;
-import org.eclipse.jpt.core.context.orm.OrmOneToManyRelationshipReference;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
-import org.eclipse.jpt.core.resource.orm.Attributes;
import org.eclipse.jpt.core.resource.orm.XmlOneToMany;
-public class GenericOrmOneToManyMapping<T extends XmlOneToMany>
- extends AbstractOrmMultiRelationshipMapping<T>
- implements OrmOneToManyMapping
+public class GenericOrmOneToManyMapping extends AbstractOrmOneToManyMapping<XmlOneToMany>
{
- public GenericOrmOneToManyMapping(OrmPersistentAttribute parent, T resourceMapping) {
+
+ public GenericOrmOneToManyMapping(OrmPersistentAttribute parent, XmlOneToMany resourceMapping) {
super(parent, resourceMapping);
}
-
@Override
protected OrmRelationshipReference buildRelationshipReference() {
return new GenericOrmOneToManyRelationshipReference(this, this.resourceAttributeMapping);
}
-
- public int getXmlSequence() {
- return 50;
- }
-
- public String getKey() {
- return MappingKeys.ONE_TO_MANY_ATTRIBUTE_MAPPING_KEY;
- }
-
- public void initializeOn(OrmAttributeMapping newMapping) {
- newMapping.initializeFromOrmOneToManyMapping(this);
- }
-
- public void addToResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getOneToManys().add(this.resourceAttributeMapping);
- }
-
- public void removeFromResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getOneToManys().remove(this.resourceAttributeMapping);
- }
-
- @Override
- public OrmOneToManyRelationshipReference getRelationshipReference() {
- return (OrmOneToManyRelationshipReference) super.getRelationshipReference();
- }
+
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToOneMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToOneMapping.java
index 12e3b6e7b8..0c39b6f1a1 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToOneMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmOneToOneMapping.java
@@ -9,57 +9,15 @@
******************************************************************************/
package org.eclipse.jpt.core.internal.context.orm;
-import org.eclipse.jpt.core.MappingKeys;
-import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
-import org.eclipse.jpt.core.context.orm.OrmOneToOneMapping;
-import org.eclipse.jpt.core.context.orm.OrmOneToOneRelationshipReference;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
-import org.eclipse.jpt.core.resource.orm.Attributes;
import org.eclipse.jpt.core.resource.orm.XmlOneToOne;
-public class GenericOrmOneToOneMapping<T extends XmlOneToOne>
- extends AbstractOrmSingleRelationshipMapping<T>
- implements OrmOneToOneMapping
+public class GenericOrmOneToOneMapping extends AbstractOrmOneToOneMapping<XmlOneToOne>
{
- public GenericOrmOneToOneMapping(OrmPersistentAttribute parent, T resourceMapping) {
- super(parent, resourceMapping);
- }
-
-
- @Override
- protected OrmRelationshipReference buildRelationshipReference() {
- return new GenericOrmOneToOneRelationshipReference(this, this.resourceAttributeMapping);
- }
-
- public int getXmlSequence() {
- return 60;
- }
-
- public String getKey() {
- return MappingKeys.ONE_TO_ONE_ATTRIBUTE_MAPPING_KEY;
- }
- public void initializeOn(OrmAttributeMapping newMapping) {
- newMapping.initializeFromOrmOneToOneMapping(this);
- }
-
- public void addToResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getOneToOnes().add(this.resourceAttributeMapping);
- }
-
- public void removeFromResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getOneToOnes().remove(this.resourceAttributeMapping);
- }
-
- @Override
- public OrmOneToOneRelationshipReference getRelationshipReference() {
- return (OrmOneToOneRelationshipReference) super.getRelationshipReference();
+ public GenericOrmOneToOneMapping(OrmPersistentAttribute parent, XmlOneToOne resourceMapping) {
+ super(parent, resourceMapping);
}
- @Override
- public boolean isOverridableAssociationMapping() {
- return true;
- }
}
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java
index c7c21de23a..91cf0038c6 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java
@@ -9,230 +9,15 @@
******************************************************************************/
package org.eclipse.jpt.core.internal.context.orm;
-import java.util.List;
-import org.eclipse.jpt.core.MappingKeys;
-import org.eclipse.jpt.core.context.Converter;
-import org.eclipse.jpt.core.context.orm.OrmAttributeMapping;
-import org.eclipse.jpt.core.context.orm.OrmColumn;
-import org.eclipse.jpt.core.context.orm.OrmColumnMapping;
-import org.eclipse.jpt.core.context.orm.OrmConverter;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.context.orm.OrmVersionMapping;
-import org.eclipse.jpt.core.internal.validation.DefaultJpaValidationMessages;
-import org.eclipse.jpt.core.internal.validation.JpaValidationMessages;
-import org.eclipse.jpt.core.resource.orm.Attributes;
-import org.eclipse.jpt.core.resource.orm.OrmFactory;
-import org.eclipse.jpt.core.resource.orm.XmlColumn;
import org.eclipse.jpt.core.resource.orm.XmlVersion;
-import org.eclipse.jpt.db.Table;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class GenericOrmVersionMapping<T extends XmlVersion>
- extends AbstractOrmAttributeMapping<T>
- implements OrmVersionMapping
+public class GenericOrmVersionMapping extends AbstractOrmVersionMapping<XmlVersion>
{
- protected final OrmColumn column;
-
- protected OrmConverter defaultConverter;
- protected OrmConverter specifiedConverter;
- public GenericOrmVersionMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public GenericOrmVersionMapping(OrmPersistentAttribute parent, XmlVersion resourceMapping) {
super(parent, resourceMapping);
- this.column = getJpaFactory().buildOrmColumn(this, this);
- this.column.initialize(this.getResourceColumn());//TODO pass in to constructor
- this.defaultConverter = new GenericOrmNullConverter(this);
- this.specifiedConverter = this.buildSpecifiedConverter(this.getResourceConverterType());
- }
-
- public int getXmlSequence() {
- return 30;
- }
-
- public String getKey() {
- return MappingKeys.VERSION_ATTRIBUTE_MAPPING_KEY;
- }
-
- public void initializeOn(OrmAttributeMapping newMapping) {
- newMapping.initializeFromOrmVersionMapping(this);
- }
-
- @Override
- public void initializeFromOrmColumnMapping(OrmColumnMapping oldMapping) {
- super.initializeFromOrmColumnMapping(oldMapping);
- getColumn().initializeFrom(oldMapping.getColumn());
- }
-
- public OrmColumn getColumn() {
- return this.column;
- }
-
- public OrmConverter getConverter() {
- return getSpecifiedConverter() == null ? getDefaultConverter() : getSpecifiedConverter();
- }
-
- public OrmConverter getDefaultConverter() {
- return this.defaultConverter;
- }
-
- public OrmConverter getSpecifiedConverter() {
- return this.specifiedConverter;
- }
-
- protected String getSpecifedConverterType() {
- if (this.specifiedConverter == null) {
- return Converter.NO_CONVERTER;
- }
- return this.specifiedConverter.getType();
- }
-
- public void setSpecifiedConverter(String converterType) {
- if (getSpecifedConverterType() == converterType) {
- return;
- }
- OrmConverter oldConverter = this.specifiedConverter;
- OrmConverter newConverter = buildSpecifiedConverter(converterType);
- this.specifiedConverter = null;
- if (oldConverter != null) {
- oldConverter.removeFromResourceModel();
- }
- this.specifiedConverter = newConverter;
- if (newConverter != null) {
- newConverter.addToResourceModel();
- }
- firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
- }
-
- protected void setSpecifiedConverter(OrmConverter newConverter) {
- OrmConverter oldConverter = this.specifiedConverter;
- this.specifiedConverter = newConverter;
- firePropertyChanged(SPECIFIED_CONVERTER_PROPERTY, oldConverter, newConverter);
- }
-
- public void addToResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getVersions().add(this.resourceAttributeMapping);
- }
-
- public void removeFromResourceModel(Attributes resourceAttributes) {
- resourceAttributes.getVersions().remove(this.resourceAttributeMapping);
- }
-
- public String getDefaultColumnName() {
- return getName();
- }
-
- public String getDefaultTableName() {
- return getTypeMapping().getPrimaryTableName();
- }
-
- public Table getDbTable(String tableName) {
- return getTypeMapping().getDbTable(tableName);
- }
-
- @Override
- public void update() {
- super.update();
- this.column.update(this.getResourceColumn());
- if (getResourceConverterType() == getSpecifedConverterType()) {
- getSpecifiedConverter().update();
- }
- else {
- setSpecifiedConverter(buildSpecifiedConverter(getResourceConverterType()));
- }
- }
-
- protected OrmConverter buildSpecifiedConverter(String converterType) {
- if (converterType == Converter.TEMPORAL_CONVERTER) {
- return new GenericOrmTemporalConverter(this, this.resourceAttributeMapping);
- }
- return null;
- }
-
- protected String getResourceConverterType() {
- if (this.resourceAttributeMapping.getTemporal() != null) {
- return Converter.TEMPORAL_CONVERTER;
- }
-
- return null;
- }
-
- //***************** XmlColumn.Owner implementation ****************
-
- public XmlColumn getResourceColumn() {
- return this.resourceAttributeMapping.getColumn();
- }
-
- public void addResourceColumn() {
- this.resourceAttributeMapping.setColumn(OrmFactory.eINSTANCE.createXmlColumn());
- }
-
- public void removeResourceColumn() {
- this.resourceAttributeMapping.setColumn(null);
- }
-
- // ****************** validation ****************
-
- @Override
- public void validate(List<IMessage> messages, IReporter reporter) {
- super.validate(messages, reporter);
-
- if (this.shouldValidateAgainstDatabase()) {
- this.validateColumn(messages);
- }
- }
-
- protected void validateColumn(List<IMessage> messages) {
- OrmPersistentAttribute pa = this.getPersistentAttribute();
- String tableName = this.column.getTable();
- if (this.getTypeMapping().tableNameIsInvalid(tableName)) {
- if (pa.isVirtual()) {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_TABLE,
- new String[] {pa.getName(), tableName, this.column.getName()},
- this.column,
- this.column.getTableTextRange()
- )
- );
- } else {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.COLUMN_UNRESOLVED_TABLE,
- new String[] {tableName, this.column.getName()},
- this.column,
- this.column.getTableTextRange()
- )
- );
- }
- return;
- }
-
- if ( ! this.column.isResolved() && this.column.getDbTable() != null) {
- if (pa.isVirtual()) {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_NAME,
- new String[] {pa.getName(), this.column.getName()},
- this.column,
- this.column.getNameTextRange()
- )
- );
- } else {
- messages.add(
- DefaultJpaValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JpaValidationMessages.COLUMN_UNRESOLVED_NAME,
- new String[] {this.column.getName()},
- this.column,
- this.column.getNameTextRange()
- )
- );
- }
- }
}
}
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmBasicMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmBasicMapping.java
index 874ec6da94..8266cf4a7b 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmBasicMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmBasicMapping.java
@@ -13,7 +13,7 @@ package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
import org.eclipse.jpt.core.context.orm.OrmConverter;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmBasicMapping;
+import org.eclipse.jpt.core.internal.context.orm.AbstractOrmBasicMapping;
import org.eclipse.jpt.eclipselink.core.context.Convert;
import org.eclipse.jpt.eclipselink.core.context.EclipseLinkBasicMapping;
import org.eclipse.jpt.eclipselink.core.context.Mutable;
@@ -21,14 +21,13 @@ import org.eclipse.jpt.eclipselink.core.resource.orm.XmlBasic;
import org.eclipse.wst.validation.internal.provisional.core.IMessage;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class EclipseLinkOrmBasicMapping<T extends XmlBasic>
- extends GenericOrmBasicMapping<T>
+public class EclipseLinkOrmBasicMapping extends AbstractOrmBasicMapping<XmlBasic>
implements EclipseLinkBasicMapping
{
protected EclipseLinkOrmMutable mutable;
- public EclipseLinkOrmBasicMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public EclipseLinkOrmBasicMapping(OrmPersistentAttribute parent, XmlBasic resourceMapping) {
super(parent, resourceMapping);
this.mutable = new EclipseLinkOrmMutable(this, this.resourceAttributeMapping);
}
@@ -53,7 +52,7 @@ public class EclipseLinkOrmBasicMapping<T extends XmlBasic>
@Override
protected String getResourceConverterType() {
//check @Convert first, this is the order that EclipseLink searches
- if (((XmlBasic) this.resourceAttributeMapping).getConvert() != null) {
+ if (this.resourceAttributeMapping.getConvert() != null) {
return Convert.ECLIPSE_LINK_CONVERTER;
}
return super.getResourceConverterType();
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToManyMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToManyMapping.java
index 59ef5f14c7..862aaabdb6 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToManyMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToManyMapping.java
@@ -12,24 +12,22 @@ package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmManyToManyMapping;
+import org.eclipse.jpt.core.internal.context.orm.AbstractOrmManyToManyMapping;
import org.eclipse.jpt.eclipselink.core.context.EclipseLinkRelationshipMapping;
import org.eclipse.jpt.eclipselink.core.context.JoinFetch;
-import org.eclipse.jpt.eclipselink.core.resource.orm.XmlJoinFetch;
import org.eclipse.jpt.eclipselink.core.resource.orm.XmlManyToMany;
import org.eclipse.wst.validation.internal.provisional.core.IMessage;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class EclipseLinkOrmManyToManyMapping<T extends XmlManyToMany>
- extends GenericOrmManyToManyMapping<T>
+public class EclipseLinkOrmManyToManyMapping extends AbstractOrmManyToManyMapping<XmlManyToMany>
implements EclipseLinkRelationshipMapping
{
protected EclipseLinkOrmJoinFetch joinFetch;
- public EclipseLinkOrmManyToManyMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public EclipseLinkOrmManyToManyMapping(OrmPersistentAttribute parent, XmlManyToMany resourceMapping) {
super(parent, resourceMapping);
- this.joinFetch = new EclipseLinkOrmJoinFetch(this, (XmlJoinFetch) this.resourceAttributeMapping);
+ this.joinFetch = new EclipseLinkOrmJoinFetch(this, this.resourceAttributeMapping);
}
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToOneMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToOneMapping.java
index 0a26017eba..15ac3514cf 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToOneMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmManyToOneMapping.java
@@ -12,24 +12,22 @@ package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmManyToOneMapping;
+import org.eclipse.jpt.core.internal.context.orm.AbstractOrmManyToOneMapping;
import org.eclipse.jpt.eclipselink.core.context.EclipseLinkRelationshipMapping;
import org.eclipse.jpt.eclipselink.core.context.JoinFetch;
-import org.eclipse.jpt.eclipselink.core.resource.orm.XmlJoinFetch;
import org.eclipse.jpt.eclipselink.core.resource.orm.XmlManyToOne;
import org.eclipse.wst.validation.internal.provisional.core.IMessage;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class EclipseLinkOrmManyToOneMapping<T extends XmlManyToOne>
- extends GenericOrmManyToOneMapping<T>
+public class EclipseLinkOrmManyToOneMapping extends AbstractOrmManyToOneMapping<XmlManyToOne>
implements EclipseLinkRelationshipMapping
{
protected EclipseLinkOrmJoinFetch joinFetch;
- public EclipseLinkOrmManyToOneMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public EclipseLinkOrmManyToOneMapping(OrmPersistentAttribute parent, XmlManyToOne resourceMapping) {
super(parent, resourceMapping);
- this.joinFetch = new EclipseLinkOrmJoinFetch(this, (XmlJoinFetch) this.resourceAttributeMapping);
+ this.joinFetch = new EclipseLinkOrmJoinFetch(this, this.resourceAttributeMapping);
}
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java
index 6e89f05750..193b80c76f 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java
@@ -13,18 +13,15 @@ package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
import org.eclipse.jpt.core.context.orm.OrmRelationshipReference;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmOneToManyMapping;
+import org.eclipse.jpt.core.internal.context.orm.AbstractOrmOneToManyMapping;
import org.eclipse.jpt.eclipselink.core.context.EclipseLinkOneToManyMapping;
import org.eclipse.jpt.eclipselink.core.context.JoinFetch;
import org.eclipse.jpt.eclipselink.core.context.PrivateOwned;
-import org.eclipse.jpt.eclipselink.core.resource.orm.XmlJoinFetch;
import org.eclipse.jpt.eclipselink.core.resource.orm.XmlOneToMany;
-import org.eclipse.jpt.eclipselink.core.resource.orm.XmlPrivateOwned;
import org.eclipse.wst.validation.internal.provisional.core.IMessage;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class EclipseLinkOrmOneToManyMapping<T extends XmlOneToMany>
- extends GenericOrmOneToManyMapping<T>
+public class EclipseLinkOrmOneToManyMapping extends AbstractOrmOneToManyMapping<XmlOneToMany>
implements EclipseLinkOneToManyMapping
{
protected EclipseLinkOrmPrivateOwned privateOwned;
@@ -32,10 +29,10 @@ public class EclipseLinkOrmOneToManyMapping<T extends XmlOneToMany>
protected EclipseLinkOrmJoinFetch joinFetch;
- public EclipseLinkOrmOneToManyMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public EclipseLinkOrmOneToManyMapping(OrmPersistentAttribute parent, XmlOneToMany resourceMapping) {
super(parent, resourceMapping);
- this.privateOwned = new EclipseLinkOrmPrivateOwned(this, (XmlPrivateOwned) this.resourceAttributeMapping);
- this.joinFetch = new EclipseLinkOrmJoinFetch(this, (XmlJoinFetch) this.resourceAttributeMapping);
+ this.privateOwned = new EclipseLinkOrmPrivateOwned(this, this.resourceAttributeMapping);
+ this.joinFetch = new EclipseLinkOrmJoinFetch(this, this.resourceAttributeMapping);
}
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToOneMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToOneMapping.java
index a5064c6081..00c531214f 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToOneMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToOneMapping.java
@@ -11,18 +11,15 @@ package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmOneToOneMapping;
+import org.eclipse.jpt.core.internal.context.orm.AbstractOrmOneToOneMapping;
import org.eclipse.jpt.eclipselink.core.context.EclipseLinkOneToOneMapping;
import org.eclipse.jpt.eclipselink.core.context.JoinFetch;
import org.eclipse.jpt.eclipselink.core.context.PrivateOwned;
-import org.eclipse.jpt.eclipselink.core.resource.orm.XmlJoinFetch;
import org.eclipse.jpt.eclipselink.core.resource.orm.XmlOneToOne;
-import org.eclipse.jpt.eclipselink.core.resource.orm.XmlPrivateOwned;
import org.eclipse.wst.validation.internal.provisional.core.IMessage;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class EclipseLinkOrmOneToOneMapping<T extends XmlOneToOne>
- extends GenericOrmOneToOneMapping<T>
+public class EclipseLinkOrmOneToOneMapping extends AbstractOrmOneToOneMapping<XmlOneToOne>
implements EclipseLinkOneToOneMapping
{
protected EclipseLinkOrmPrivateOwned privateOwned;
@@ -30,10 +27,10 @@ public class EclipseLinkOrmOneToOneMapping<T extends XmlOneToOne>
protected EclipseLinkOrmJoinFetch joinFetch;
- public EclipseLinkOrmOneToOneMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public EclipseLinkOrmOneToOneMapping(OrmPersistentAttribute parent, XmlOneToOne resourceMapping) {
super(parent, resourceMapping);
- this.privateOwned = new EclipseLinkOrmPrivateOwned(this, (XmlPrivateOwned) this.resourceAttributeMapping);
- this.joinFetch = new EclipseLinkOrmJoinFetch(this, (XmlJoinFetch) this.resourceAttributeMapping);
+ this.privateOwned = new EclipseLinkOrmPrivateOwned(this, this.resourceAttributeMapping);
+ this.joinFetch = new EclipseLinkOrmJoinFetch(this, this.resourceAttributeMapping);
}
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmVersionMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmVersionMapping.java
index f710d3e28a..67110cda48 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmVersionMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmVersionMapping.java
@@ -13,7 +13,7 @@ package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
import org.eclipse.jpt.core.context.orm.OrmConverter;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmVersionMapping;
+import org.eclipse.jpt.core.internal.context.orm.AbstractOrmVersionMapping;
import org.eclipse.jpt.eclipselink.core.context.Convert;
import org.eclipse.jpt.eclipselink.core.context.EclipseLinkVersionMapping;
import org.eclipse.jpt.eclipselink.core.context.Mutable;
@@ -21,14 +21,13 @@ import org.eclipse.jpt.eclipselink.core.resource.orm.XmlVersion;
import org.eclipse.wst.validation.internal.provisional.core.IMessage;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-public class EclipseLinkOrmVersionMapping<T extends XmlVersion>
- extends GenericOrmVersionMapping<T>
+public class EclipseLinkOrmVersionMapping extends AbstractOrmVersionMapping<XmlVersion>
implements EclipseLinkVersionMapping
{
protected EclipseLinkOrmMutable mutable;
- public EclipseLinkOrmVersionMapping(OrmPersistentAttribute parent, T resourceMapping) {
+ public EclipseLinkOrmVersionMapping(OrmPersistentAttribute parent, XmlVersion resourceMapping) {
super(parent, resourceMapping);
this.mutable = new EclipseLinkOrmMutable(this, this.resourceAttributeMapping);
}
@@ -53,7 +52,7 @@ public class EclipseLinkOrmVersionMapping<T extends XmlVersion>
@Override
protected String getResourceConverterType() {
//check @Convert first, this is the order that EclipseLink searches
- if (((XmlVersion) this.resourceAttributeMapping).getConvert() != null) {
+ if (this.resourceAttributeMapping.getConvert() != null) {
return Convert.ECLIPSE_LINK_CONVERTER;
}
return super.getResourceConverterType();
diff --git a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToManyMappingTests.java b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToManyMappingTests.java
index b6a62f5b17..6e4a8ac523 100644
--- a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToManyMappingTests.java
+++ b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToManyMappingTests.java
@@ -172,12 +172,12 @@ public class EclipseLinkOrmManyToManyMappingTests
getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, PACKAGE_NAME + ".Employee");
OrmPersistentType departmentPersistentType = getEntityMappings().persistentTypes().next();
- EclipseLinkOrmManyToManyMapping<?> manyToMany = (EclipseLinkOrmManyToManyMapping<?>) departmentPersistentType.getAttributeNamed("employees").getMapping();
+ EclipseLinkOrmManyToManyMapping manyToMany = (EclipseLinkOrmManyToManyMapping) departmentPersistentType.getAttributeNamed("employees").getMapping();
assertNull(manyToMany.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(true);
- EclipseLinkOrmOneToManyMapping<?> oneToMany = (EclipseLinkOrmOneToManyMapping<?>) departmentPersistentType.getAttributeNamed("employees").getMapping();
+ EclipseLinkOrmOneToManyMapping oneToMany = (EclipseLinkOrmOneToManyMapping) departmentPersistentType.getAttributeNamed("employees").getMapping();
assertNull(oneToMany.getJoinFetch().getValue());
@@ -186,7 +186,7 @@ public class EclipseLinkOrmManyToManyMappingTests
assertNull(oneToMany.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(false);
- manyToMany = (EclipseLinkOrmManyToManyMapping<?>) departmentPersistentType.getAttributeNamed("employees").getMapping();
+ manyToMany = (EclipseLinkOrmManyToManyMapping) departmentPersistentType.getAttributeNamed("employees").getMapping();
assertEquals(JoinFetchType.OUTER, manyToMany.getJoinFetch().getValue());
}
diff --git a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToOneMappingTests.java b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToOneMappingTests.java
index 3b2465ffd1..0120d01057 100644
--- a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToOneMappingTests.java
+++ b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmManyToOneMappingTests.java
@@ -164,13 +164,13 @@ public class EclipseLinkOrmManyToOneMappingTests
getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, PACKAGE_NAME + ".Employee");
OrmPersistentType departmentPersistentType = getEntityMappings().persistentTypes().next();
- EclipseLinkOrmManyToOneMapping<?> manyToOne = (EclipseLinkOrmManyToOneMapping<?>) departmentPersistentType.getAttributeNamed("employee").getMapping();
+ EclipseLinkOrmManyToOneMapping manyToOne = (EclipseLinkOrmManyToOneMapping) departmentPersistentType.getAttributeNamed("employee").getMapping();
assertNull(manyToOne.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(true);
- EclipseLinkOrmOneToOneMapping<?> oneToOne = (EclipseLinkOrmOneToOneMapping<?>) departmentPersistentType.getAttributeNamed("employee").getMapping();
- assertNull(manyToOne.getJoinFetch().getValue());
+ EclipseLinkOrmOneToOneMapping oneToOne = (EclipseLinkOrmOneToOneMapping) departmentPersistentType.getAttributeNamed("employee").getMapping();
+ assertNull(oneToOne.getJoinFetch().getValue());
EclipseLinkRelationshipMapping javaRelationshipMapping = (EclipseLinkRelationshipMapping) departmentPersistentType.getJavaPersistentType().getAttributeNamed("employee").getMapping();
@@ -178,7 +178,7 @@ public class EclipseLinkOrmManyToOneMappingTests
assertNull(manyToOne.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(false);
- manyToOne = (EclipseLinkOrmManyToOneMapping<?>) departmentPersistentType.getAttributeNamed("employee").getMapping();
+ manyToOne = (EclipseLinkOrmManyToOneMapping) departmentPersistentType.getAttributeNamed("employee").getMapping();
assertEquals(JoinFetchType.OUTER, manyToOne.getJoinFetch().getValue());
}
diff --git a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToManyMappingTests.java b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToManyMappingTests.java
index 2f729d72ce..1adf33b7e0 100644
--- a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToManyMappingTests.java
+++ b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToManyMappingTests.java
@@ -234,12 +234,12 @@ public class EclipseLinkOrmOneToManyMappingTests
getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, PACKAGE_NAME + ".Employee");
OrmPersistentType departmentPersistentType = getEntityMappings().persistentTypes().next();
- EclipseLinkOrmOneToManyMapping<?> oneToMany = (EclipseLinkOrmOneToManyMapping<?>) departmentPersistentType.getAttributeNamed("employees").getMapping();
+ EclipseLinkOrmOneToManyMapping oneToMany = (EclipseLinkOrmOneToManyMapping) departmentPersistentType.getAttributeNamed("employees").getMapping();
assertNull(oneToMany.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(true);
- oneToMany = (EclipseLinkOrmOneToManyMapping<?>) departmentPersistentType.getAttributeNamed("employees").getMapping();
+ oneToMany = (EclipseLinkOrmOneToManyMapping) departmentPersistentType.getAttributeNamed("employees").getMapping();
assertNull(oneToMany.getJoinFetch().getValue());
EclipseLinkRelationshipMapping javaRelationshipMapping = (EclipseLinkRelationshipMapping) departmentPersistentType.getJavaPersistentType().getAttributeNamed("employees").getMapping();
@@ -247,7 +247,7 @@ public class EclipseLinkOrmOneToManyMappingTests
assertNull(oneToMany.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(false);
- oneToMany = (EclipseLinkOrmOneToManyMapping<?>) departmentPersistentType.getAttributeNamed("employees").getMapping();
+ oneToMany = (EclipseLinkOrmOneToManyMapping) departmentPersistentType.getAttributeNamed("employees").getMapping();
assertEquals(JoinFetchType.OUTER, oneToMany.getJoinFetch().getValue());
}
diff --git a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToOneMappingTests.java b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToOneMappingTests.java
index 5beae5ad11..bc416e2c73 100644
--- a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToOneMappingTests.java
+++ b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink/core/tests/internal/context/orm/EclipseLinkOrmOneToOneMappingTests.java
@@ -225,12 +225,12 @@ public class EclipseLinkOrmOneToOneMappingTests
getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, PACKAGE_NAME + ".Employee");
OrmPersistentType departmentPersistentType = getEntityMappings().persistentTypes().next();
- EclipseLinkOrmOneToOneMapping<?> oneToOne = (EclipseLinkOrmOneToOneMapping<?>) departmentPersistentType.getAttributeNamed("employee").getMapping();
+ EclipseLinkOrmOneToOneMapping oneToOne = (EclipseLinkOrmOneToOneMapping) departmentPersistentType.getAttributeNamed("employee").getMapping();
assertNull(oneToOne.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(true);
- oneToOne = (EclipseLinkOrmOneToOneMapping<?>) departmentPersistentType.getAttributeNamed("employee").getMapping();
+ oneToOne = (EclipseLinkOrmOneToOneMapping) departmentPersistentType.getAttributeNamed("employee").getMapping();
assertNull(oneToOne.getJoinFetch().getValue());
EclipseLinkRelationshipMapping javaRelationshipMapping = (EclipseLinkRelationshipMapping) departmentPersistentType.getJavaPersistentType().getAttributeNamed("employee").getMapping();
@@ -238,7 +238,7 @@ public class EclipseLinkOrmOneToOneMappingTests
assertNull(oneToOne.getJoinFetch().getValue());
getEntityMappings().getPersistenceUnitMetadata().setXmlMappingMetadataComplete(false);
- oneToOne = (EclipseLinkOrmOneToOneMapping<?>) departmentPersistentType.getAttributeNamed("employee").getMapping();
+ oneToOne = (EclipseLinkOrmOneToOneMapping) departmentPersistentType.getAttributeNamed("employee").getMapping();
assertEquals(JoinFetchType.OUTER, oneToOne.getJoinFetch().getValue());
}
} \ No newline at end of file
diff --git a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink1_1/core/tests/internal/context/orm/EclipseLink1_1OrmPersistentAttributeTests.java b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink1_1/core/tests/internal/context/orm/EclipseLink1_1OrmPersistentAttributeTests.java
index eb9578a81a..e9d343f809 100644
--- a/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink1_1/core/tests/internal/context/orm/EclipseLink1_1OrmPersistentAttributeTests.java
+++ b/jpa/tests/org.eclipse.jpt.eclipselink.core.tests/src/org/eclipse/jpt/eclipselink1_1/core/tests/internal/context/orm/EclipseLink1_1OrmPersistentAttributeTests.java
@@ -21,12 +21,12 @@ import org.eclipse.jpt.core.context.java.JavaPersistentType;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
import org.eclipse.jpt.core.context.orm.OrmPersistentType;
import org.eclipse.jpt.core.internal.context.orm.GenericOrmNullAttributeMapping;
-import org.eclipse.jpt.core.internal.context.orm.GenericOrmOneToOneMapping;
import org.eclipse.jpt.core.internal.facet.JpaFacetDataModelProperties;
import org.eclipse.jpt.core.internal.facet.JpaFacetDataModelProvider;
import org.eclipse.jpt.core.resource.java.JPA;
import org.eclipse.jpt.core.resource.java.JavaResourcePersistentAttribute;
import org.eclipse.jpt.eclipselink.core.internal.context.orm.EclipseLinkOrmIdMapping;
+import org.eclipse.jpt.eclipselink.core.internal.context.orm.EclipseLinkOrmOneToOneMapping;
import org.eclipse.jpt.eclipselink1_1.core.internal.EclipseLink1_1JpaPlatformProvider;
import org.eclipse.jpt.utility.internal.iterators.ArrayIterator;
import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
@@ -115,41 +115,6 @@ public class EclipseLink1_1OrmPersistentAttributeTests extends EclipseLink1_1Orm
}
});
}
-//
-// private void createAccessTypeEnum() throws Exception {
-// this.createEnumAndMembers(JPA_ANNOTATIONS_PACKAGE_NAME, "AccessType", "FIELD, PROPERTY;");
-// }
-//
-// private void createAccessAnnotation() throws Exception {
-// this.createAnnotationAndMembers(JPA_ANNOTATIONS_PACKAGE_NAME, "Access", "AccessType value();");
-// createAccessTypeEnum();
-// }
-//
-// private ICompilationUnit createTestEntityAnnotatedFieldPropertySpecified() throws Exception {
-// createAccessAnnotation();
-// return this.createTestType(new DefaultAnnotationWriter() {
-// @Override
-// public Iterator<String> imports() {
-// return new ArrayIterator<String>(JPA.ENTITY, JPA.BASIC, JPA.ID, JPA.ACCESS, JPA.ACCESS_TYPE);
-// }
-// @Override
-// public void appendTypeAnnotationTo(StringBuilder sb) {
-// sb.append("@Entity");
-// sb.append("@Access(AccessType.PROPERTY)");
-// }
-//
-// @Override
-// public void appendNameFieldAnnotationTo(StringBuilder sb) {
-// sb.append("@Basic");
-// sb.append("@Access(AccessType.FIELD)");
-// }
-//
-// @Override
-// public void appendGetIdMethodAnnotationTo(StringBuilder sb) {
-// sb.append("@Id");
-// }
-// });
-// }
public void testMakeSpecified() throws Exception {
createTestType();
@@ -182,49 +147,6 @@ public class EclipseLink1_1OrmPersistentAttributeTests extends EclipseLink1_1Orm
assertEquals("name", specifiedOrmPersistentAttribute.getName());
assertFalse(specifiedOrmPersistentAttribute.isVirtual());
}
-//TODO Access annotation tests
-// public void testMakeSpecifiedWithAccess() throws Exception {
-// createTestEntityAnnotatedFieldPropertySpecified();
-// OrmPersistentType ormPersistentType = getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, FULLY_QUALIFIED_TYPE_NAME);
-//
-// assertEquals(2, ormPersistentType.virtualAttributesSize());
-//
-// OrmPersistentAttribute ormPersistentAttribute = ormPersistentType.virtualAttributes().next();
-// assertEquals("id", ormPersistentAttribute.getName());
-// assertTrue(ormPersistentAttribute.isVirtual());
-// assertEquals(AccessType.PROPERTY, ormPersistentAttribute.getAccess());
-// assertEquals(AccessType.PROPERTY, ormPersistentAttribute.getSpecifiedAccess());
-// assertEquals(null, ormPersistentAttribute.getJavaPersistentAttribute().getSpecifiedAccess());
-// ormPersistentAttribute.makeSpecified();
-//
-// assertEquals(1, ormPersistentType.virtualAttributesSize());
-// assertEquals(1, ormPersistentType.specifiedAttributesSize());
-// OrmPersistentAttribute specifiedOrmPersistentAttribute = ormPersistentType.specifiedAttributes().next();
-// assertEquals("id", specifiedOrmPersistentAttribute.getName());
-// assertEquals(null, specifiedOrmPersistentAttribute.getSpecifiedAccess());
-// assertEquals(AccessType.PROPERTY, specifiedOrmPersistentAttribute.getAccess());
-// assertFalse(specifiedOrmPersistentAttribute.isVirtual());
-//
-// ormPersistentAttribute = ormPersistentType.virtualAttributes().next();
-// assertEquals("name", ormPersistentAttribute.getName());
-// assertTrue(ormPersistentAttribute.isVirtual());
-// assertEquals(AccessType.FIELD, ormPersistentAttribute.getSpecifiedAccess());
-// ormPersistentAttribute.makeSpecified();
-//
-// assertEquals(0, ormPersistentType.virtualAttributesSize());
-// assertEquals(2, ormPersistentType.specifiedAttributesSize());
-// ListIterator<OrmPersistentAttribute> specifiedAttributes = ormPersistentType.specifiedAttributes();
-// specifiedOrmPersistentAttribute = specifiedAttributes.next();
-// assertEquals("id", specifiedOrmPersistentAttribute.getName());
-// assertFalse(specifiedOrmPersistentAttribute.isVirtual());
-// assertEquals(AccessType.PROPERTY, specifiedOrmPersistentAttribute.getAccess());
-// assertEquals(null, specifiedOrmPersistentAttribute.getSpecifiedAccess());
-//
-// specifiedOrmPersistentAttribute = specifiedAttributes.next();
-// assertEquals("name", specifiedOrmPersistentAttribute.getName());
-// assertFalse(specifiedOrmPersistentAttribute.isVirtual());
-// assertEquals(AccessType.FIELD, specifiedOrmPersistentAttribute.getSpecifiedAccess());
-// }
public void testMakeSpecifiedMappingKey() throws Exception {
createTestTypeNullAttributeMapping();
@@ -244,7 +166,7 @@ public class EclipseLink1_1OrmPersistentAttributeTests extends EclipseLink1_1Orm
OrmPersistentAttribute specifiedOrmPersistentAttribute = ormPersistentType.specifiedAttributes().next();
assertEquals("address", specifiedOrmPersistentAttribute.getName());
assertFalse(specifiedOrmPersistentAttribute.isVirtual());
- assertTrue(specifiedOrmPersistentAttribute.getMapping() instanceof GenericOrmOneToOneMapping);
+ assertTrue(specifiedOrmPersistentAttribute.getMapping() instanceof EclipseLinkOrmOneToOneMapping);
ormPersistentAttribute = ormPersistentType.virtualAttributes().next();
@@ -510,65 +432,4 @@ public class EclipseLink1_1OrmPersistentAttributeTests extends EclipseLink1_1Orm
assertTrue(javaPersistentAttribute.getResourcePersistentAttribute().isProperty());
}
-//TODO Access annotation tests
-// public void testGetAccessPropertyInJava2() throws Exception {
-// createTestEntityAnnotatedFieldPropertySpecified();
-// OrmPersistentType ormPersistentType = getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, FULLY_QUALIFIED_TYPE_NAME);
-// JavaPersistentType javaPersistentType = ormPersistentType.getJavaPersistentType();
-//
-// OrmPersistentAttribute ormPersistentAttribute = ormPersistentType.getAttributeNamed("id");
-// JavaPersistentAttribute javaPersistentAttribute = javaPersistentType.getAttributeNamed("id");
-//
-// assertTrue(ormPersistentAttribute.isVirtual());
-// assertEquals(AccessType.PROPERTY, ormPersistentAttribute.getAccess());
-// assertTrue(ormPersistentAttribute.getJavaPersistentAttribute().getResourcePersistentAttribute().isProperty());
-// assertEquals(AccessType.PROPERTY, javaPersistentAttribute.getAccess());
-// assertTrue(javaPersistentAttribute.getResourcePersistentAttribute().isProperty());
-//
-//
-// OrmPersistentAttribute nameOrmPersistentAttribute = ormPersistentType.getAttributeNamed("name");
-// JavaPersistentAttribute nameJavaPersistentAttribute = javaPersistentType.getAttributeNamed("name");
-//
-// assertTrue(nameOrmPersistentAttribute.isVirtual());
-// assertEquals(AccessType.FIELD, nameOrmPersistentAttribute.getAccess());
-// assertTrue(nameOrmPersistentAttribute.getJavaPersistentAttribute().getResourcePersistentAttribute().isField());
-// assertEquals(AccessType.FIELD, nameJavaPersistentAttribute.getAccess());
-// assertTrue(nameJavaPersistentAttribute.getResourcePersistentAttribute().isField());
-//
-//
-// ormPersistentAttribute.makeSpecified();
-// ormPersistentAttribute = ormPersistentType.getAttributeNamed("id");
-// assertFalse(ormPersistentAttribute.isVirtual());
-// assertEquals(AccessType.PROPERTY, ormPersistentAttribute.getAccess());
-// assertTrue(ormPersistentAttribute.getJavaPersistentAttribute().getResourcePersistentAttribute().isProperty());
-// assertEquals(AccessType.PROPERTY, javaPersistentAttribute.getAccess());
-// assertTrue(javaPersistentAttribute.getResourcePersistentAttribute().isProperty());
-//
-// nameOrmPersistentAttribute.makeSpecified();
-// nameOrmPersistentAttribute = ormPersistentType.getAttributeNamed("name");
-// assertFalse(nameOrmPersistentAttribute.isVirtual());
-// assertEquals(AccessType.FIELD, nameOrmPersistentAttribute.getAccess());
-// assertEquals(AccessType.FIELD, nameOrmPersistentAttribute.getJavaPersistentAttribute().getAccess());
-// assertTrue(nameOrmPersistentAttribute.getJavaPersistentAttribute().getResourcePersistentAttribute().isField());
-// assertEquals(AccessType.FIELD, nameJavaPersistentAttribute.getAccess());
-// assertTrue(nameJavaPersistentAttribute.getResourcePersistentAttribute().isField());
-// assertEquals(nameJavaPersistentAttribute, nameOrmPersistentAttribute.getJavaPersistentAttribute());
-//
-// ormPersistentType.getMapping().setSpecifiedMetadataComplete(Boolean.TRUE);
-// assertFalse(ormPersistentAttribute.isVirtual());
-// assertEquals(AccessType.FIELD, ormPersistentAttribute.getAccess());
-// assertNotSame(javaPersistentAttribute, ormPersistentAttribute.getJavaPersistentAttribute());
-// assertEquals(AccessType.FIELD, ormPersistentAttribute.getJavaPersistentAttribute().getAccess());
-// assertEquals(AccessType.PROPERTY, javaPersistentAttribute.getAccess());
-// assertTrue(javaPersistentAttribute.getResourcePersistentAttribute().isProperty());
-//
-// assertFalse(nameOrmPersistentAttribute.isVirtual());
-// assertEquals(AccessType.FIELD, nameOrmPersistentAttribute.getAccess());
-// assertNotSame(javaPersistentAttribute, nameOrmPersistentAttribute.getJavaPersistentAttribute());
-// assertEquals(AccessType.FIELD, nameOrmPersistentAttribute.getJavaPersistentAttribute().getAccess());
-// assertEquals(AccessType.FIELD, nameJavaPersistentAttribute.getAccess());
-// assertTrue(nameJavaPersistentAttribute.getResourcePersistentAttribute().isField());
-//
-// }
-
} \ No newline at end of file

Back to the top