diff options
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java')
-rw-r--r-- | jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java | 204 |
1 files changed, 0 insertions, 204 deletions
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 deleted file mode 100644 index 488342b8f7..0000000000 --- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/orm/GenericOrmVersionMapping.java +++ /dev/null @@ -1,204 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2008 Oracle. All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0, which accompanies this distribution - * and is available at http://www.eclipse.org/legal/epl-v10.html. - * - * Contributors: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.core.internal.context.orm; - -import java.util.List; -import org.eclipse.jpt.core.MappingKeys; -import org.eclipse.jpt.core.context.ColumnMapping; -import org.eclipse.jpt.core.context.TemporalType; -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.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.AbstractXmlTypeMapping; -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; - - -public class GenericOrmVersionMapping extends AbstractOrmAttributeMapping<XmlVersion> - implements OrmVersionMapping -{ - protected final OrmColumn column; - - protected TemporalType temporal; - - public GenericOrmVersionMapping(OrmPersistentAttribute parent) { - super(parent); - this.column = getJpaFactory().buildOrmColumn(this, this); - } - - public int getXmlSequence() { - return 3; - } - - public String getKey() { - return MappingKeys.VERSION_ATTRIBUTE_MAPPING_KEY; - } - - public void initializeOn(OrmAttributeMapping newMapping) { - newMapping.initializeFromOrmVersionMapping(this); - } - - @Override - public void initializeFromXmlColumnMapping(OrmColumnMapping oldMapping) { - super.initializeFromXmlColumnMapping(oldMapping); - setTemporal(oldMapping.getTemporal()); - getColumn().initializeFrom(oldMapping.getColumn()); - } - - public OrmColumn getColumn() { - return this.column; - } - - public TemporalType getTemporal() { - return this.temporal; - } - - public void setTemporal(TemporalType newTemporal) { - TemporalType oldTemporal = this.temporal; - this.temporal = newTemporal; - this.getAttributeMapping().setTemporal(TemporalType.toOrmResourceModel(newTemporal)); - firePropertyChanged(ColumnMapping.TEMPORAL_PROPERTY, oldTemporal, newTemporal); - } - - protected void setTemporal_(TemporalType newTemporal) { - TemporalType oldTemporal = this.temporal; - this.temporal = newTemporal; - firePropertyChanged(ColumnMapping.TEMPORAL_PROPERTY, oldTemporal, newTemporal); - } - - public XmlVersion addToResourceModel(AbstractXmlTypeMapping typeMapping) { - XmlVersion version = OrmFactory.eINSTANCE.createXmlVersionImpl(); - getPersistentAttribute().initialize(version); - typeMapping.getAttributes().getVersions().add(version); - return version; - } - - public void removeFromResourceModel(AbstractXmlTypeMapping typeMapping) { - typeMapping.getAttributes().getVersions().remove(this.getAttributeMapping()); - if (typeMapping.getAttributes().isAllFeaturesUnset()) { - typeMapping.setAttributes(null); - } - } - - public String getDefaultColumnName() { - return getAttributeName(); - } - - public String getDefaultTableName() { - return getTypeMapping().getTableName(); - } - - public Table getDbTable(String tableName) { - return getTypeMapping().getDbTable(tableName); - } - - @Override - public void initialize(XmlVersion version) { - super.initialize(version); - this.temporal = this.specifiedTemporal(version); - this.column.initialize(version.getColumn()); - } - - @Override - public void update(XmlVersion version) { - super.update(version); - this.setTemporal_(this.specifiedTemporal(version)); - this.column.update(version.getColumn()); - } - - protected TemporalType specifiedTemporal(XmlVersion version) { - return TemporalType.fromOrmResourceModel(version.getTemporal()); - } - - //***************** IXmlColumn.Owner implementation **************** - - public XmlColumn getColumnResource() { - return this.getAttributeMapping().getColumn(); - } - - public void addColumnResource() { - this.getAttributeMapping().setColumn(OrmFactory.eINSTANCE.createXmlColumnImpl()); - } - - public void removeColumnResource() { - this.getAttributeMapping().setColumn(null); - } - - // ****************** validation **************** - - @Override - public void addToMessages(List<IMessage> messages) { - super.addToMessages(messages); - - if (entityOwned()) { - addColumnMessages(messages); - } - } - - protected void addColumnMessages(List<IMessage> messages) { - OrmColumn column = getColumn(); - String table = column.getTable(); - boolean doContinue = entityOwned() && this.connectionProfileIsActive(); - - if (doContinue && getTypeMapping().tableNameIsInvalid(table)) { - if (getPersistentAttribute().isVirtual()) { - messages.add( - DefaultJpaValidationMessages.buildMessage( - IMessage.HIGH_SEVERITY, - JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_TABLE, - new String[] {getPersistentAttribute().getName(), table, column.getName()}, - column, - column.getTableTextRange()) - ); - } - else { - messages.add( - DefaultJpaValidationMessages.buildMessage( - IMessage.HIGH_SEVERITY, - JpaValidationMessages.COLUMN_UNRESOLVED_TABLE, - new String[] {table, column.getName()}, - column, - column.getTableTextRange()) - ); - } - doContinue = false; - } - - if (doContinue && ! column.isResolved()) { - if (getPersistentAttribute().isVirtual()) { - messages.add( - DefaultJpaValidationMessages.buildMessage( - IMessage.HIGH_SEVERITY, - JpaValidationMessages.VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_NAME, - new String[] {getPersistentAttribute().getName(), column.getName()}, - column, - column.getNameTextRange()) - ); - } - else { - messages.add( - DefaultJpaValidationMessages.buildMessage( - IMessage.HIGH_SEVERITY, - JpaValidationMessages.COLUMN_UNRESOLVED_NAME, - new String[] {column.getName()}, - column, - column.getNameTextRange()) - ); - } - } - } -} |