diff options
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.java')
-rw-r--r-- | jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.java | 195 |
1 files changed, 0 insertions, 195 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.java deleted file mode 100644 index 0e1e64b65f..0000000000 --- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.java +++ /dev/null @@ -1,195 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2009, 2010 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.java; - -import java.util.Iterator; -import org.eclipse.jdt.core.dom.CompilationUnit; -import org.eclipse.jpt.core.context.BaseJoinColumn; -import org.eclipse.jpt.core.context.Entity; -import org.eclipse.jpt.core.context.JoinColumn; -import org.eclipse.jpt.core.context.NamedColumn; -import org.eclipse.jpt.core.context.PersistentAttribute; -import org.eclipse.jpt.core.context.TypeMapping; -import org.eclipse.jpt.core.context.java.JavaJoinColumn; -import org.eclipse.jpt.core.context.java.JavaJoinColumnEnabledRelationshipReference; -import org.eclipse.jpt.core.context.java.JavaRelationshipMapping; -import org.eclipse.jpt.core.internal.context.JoinColumnTextRangeResolver; -import org.eclipse.jpt.core.internal.context.JptValidator; -import org.eclipse.jpt.core.internal.context.NamedColumnTextRangeResolver; -import org.eclipse.jpt.core.internal.jpa1.context.EntityTableDescriptionProvider; -import org.eclipse.jpt.core.internal.jpa1.context.JoinColumnValidator; -import org.eclipse.jpt.core.internal.resource.java.NullJoinColumnAnnotation; -import org.eclipse.jpt.core.internal.validation.JpaValidationDescriptionMessages; -import org.eclipse.jpt.core.resource.java.JavaResourcePersistentAttribute; -import org.eclipse.jpt.core.resource.java.JoinColumnAnnotation; -import org.eclipse.jpt.core.resource.java.JoinColumnsAnnotation; -import org.eclipse.jpt.core.resource.java.NestableAnnotation; -import org.eclipse.jpt.core.utility.TextRange; -import org.eclipse.jpt.db.Table; -import org.eclipse.jpt.utility.internal.iterators.TransformationIterator; - -public abstract class AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy - extends AbstractJavaJoinColumnJoiningStrategy -{ - - protected AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy(JavaJoinColumnEnabledRelationshipReference parent) { - super(parent); - } - - @Override - protected JavaJoinColumn.Owner buildJoinColumnOwner() { - return new JoinColumnOwner(); - } - - @Override - public JavaJoinColumnEnabledRelationshipReference getRelationshipReference() { - return (JavaJoinColumnEnabledRelationshipReference) super.getRelationshipReference(); - } - - @Override - public JavaRelationshipMapping getRelationshipMapping() { - return getRelationshipReference().getRelationshipMapping(); - } - - protected abstract Entity getRelationshipTargetEntity(); - - public String getColumnTableNotValidDescription() { - return JpaValidationDescriptionMessages.NOT_VALID_FOR_THIS_ENTITY; - } - - public boolean isOverridableAssociation() { - return true; - } - - protected JavaResourcePersistentAttribute getResourcePersistentAttribute() { - return getRelationshipMapping().getPersistentAttribute().getResourcePersistentAttribute(); - } - - @Override - protected Iterator<JoinColumnAnnotation> joinColumnAnnotations() { - return new TransformationIterator<NestableAnnotation, JoinColumnAnnotation>( - this.getResourcePersistentAttribute().annotations( - JoinColumnAnnotation.ANNOTATION_NAME, JoinColumnsAnnotation.ANNOTATION_NAME)) { - @Override - protected JoinColumnAnnotation transform(NestableAnnotation next) { - return (JoinColumnAnnotation) next; - } - }; - } - - @Override - protected JoinColumnAnnotation buildNullJoinColumnAnnotation() { - return new NullJoinColumnAnnotation(this.getResourcePersistentAttribute()); - } - - @Override - protected JoinColumnAnnotation addAnnotation(int index) { - return (JoinColumnAnnotation) this.getResourcePersistentAttribute(). - addAnnotation( - index, - JoinColumnAnnotation.ANNOTATION_NAME, - JoinColumnsAnnotation.ANNOTATION_NAME); - } - - @Override - protected void removeAnnotation(int index) { - this.getResourcePersistentAttribute(). - removeAnnotation( - index, - JoinColumnAnnotation.ANNOTATION_NAME, - JoinColumnsAnnotation.ANNOTATION_NAME); - } - - @Override - protected void moveAnnotation(int targetIndex, int sourceIndex) { - this.getResourcePersistentAttribute(). - moveAnnotation( - targetIndex, - sourceIndex, - JoinColumnsAnnotation.ANNOTATION_NAME); - } - - public TextRange getValidationTextRange(CompilationUnit astRoot) { - return this.getRelationshipReference().getValidationTextRange(astRoot); - } - - - protected class JoinColumnOwner - implements JavaJoinColumn.Owner - { - protected JoinColumnOwner() { - super(); - } - - - /** - * by default, the join column is in the type mapping's primary table - */ - public String getDefaultTableName() { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.getTableName(); - } - - public String getDefaultColumnName() { - //built in MappingTools.buildJoinColumnDefaultName() - return null; - } - - public String getAttributeName() { - return getRelationshipMapping().getName(); - } - - public PersistentAttribute getPersistentAttribute() { - return getRelationshipMapping().getPersistentAttribute(); - } - - public TypeMapping getTypeMapping() { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.getRelationshipSource(); - } - - public Entity getRelationshipTarget() { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.getRelationshipTargetEntity(); - } - - public boolean tableNameIsInvalid(String tableName) { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.tableNameIsInvalid(tableName); - } - - /** - * the join column can be on a secondary table - */ - public Iterator<String> candidateTableNames() { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.candidateTableNames(); - } - - public Table getDbTable(String tableName) { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.getDbTable(tableName); - } - - public Table getReferencedColumnDbTable() { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.getReferencedColumnDbTable(); - } - - public boolean isVirtual(BaseJoinColumn joinColumn) { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.defaultJoinColumn == joinColumn; - } - - public int joinColumnsSize() { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.joinColumnsSize(); - } - - public TextRange getValidationTextRange(CompilationUnit astRoot) { - return AbstractJavaJoinColumnInRelationshipMappingJoiningStrategy.this.getValidationTextRange(astRoot); - } - - public JptValidator buildColumnValidator(NamedColumn column, NamedColumnTextRangeResolver textRangeResolver) { - return new JoinColumnValidator((JoinColumn) column, this, (JoinColumnTextRangeResolver) textRangeResolver, new EntityTableDescriptionProvider()); - } - } -} |