diff options
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.jpa.core/src/org/eclipse/jpt/jpa/core/internal/jpa1/context/orm/GenericOrmVirtualOverrideRelationship.java')
-rw-r--r-- | jpa/plugins/org.eclipse.jpt.jpa.core/src/org/eclipse/jpt/jpa/core/internal/jpa1/context/orm/GenericOrmVirtualOverrideRelationship.java | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.jpa.core/src/org/eclipse/jpt/jpa/core/internal/jpa1/context/orm/GenericOrmVirtualOverrideRelationship.java b/jpa/plugins/org.eclipse.jpt.jpa.core/src/org/eclipse/jpt/jpa/core/internal/jpa1/context/orm/GenericOrmVirtualOverrideRelationship.java index 0524e45eee..9a2144b65e 100644 --- a/jpa/plugins/org.eclipse.jpt.jpa.core/src/org/eclipse/jpt/jpa/core/internal/jpa1/context/orm/GenericOrmVirtualOverrideRelationship.java +++ b/jpa/plugins/org.eclipse.jpt.jpa.core/src/org/eclipse/jpt/jpa/core/internal/jpa1/context/orm/GenericOrmVirtualOverrideRelationship.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2010, 2015 Oracle. All rights reserved. + * Copyright (c) 2010, 2016 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. @@ -40,6 +40,8 @@ public class GenericOrmVirtualOverrideRelationship implements VirtualOverrideRelationship2_0 { protected VirtualRelationshipStrategy strategy; + protected boolean strategyIsJoinColumn; + protected boolean strategyIsJoinTable; protected final VirtualJoinColumnRelationshipStrategy joinColumnStrategy; @@ -60,6 +62,8 @@ public class GenericOrmVirtualOverrideRelationship public void update(IProgressMonitor monitor) { super.update(monitor); this.setStrategy(this.buildStrategy()); + this.setStrategyIsJoinColumn(this.buildStrategyIsJoinColumn()); + this.setStrategyIsJoinTable(this.buildStrategyIsJoinTable()); this.joinColumnStrategy.update(monitor); this.joinTableStrategy.update(monitor); } @@ -73,8 +77,7 @@ public class GenericOrmVirtualOverrideRelationship protected void setStrategy(VirtualRelationshipStrategy strategy) { VirtualRelationshipStrategy old = this.strategy; - this.strategy = strategy; - this.firePropertyChanged(STRATEGY_PROPERTY, old, strategy); + this.firePropertyChanged(STRATEGY_PROPERTY, old, this.strategy = strategy); } protected VirtualRelationshipStrategy buildStrategy() { @@ -119,6 +122,15 @@ public class GenericOrmVirtualOverrideRelationship } public boolean strategyIsJoinColumn() { + return this.strategyIsJoinColumn; + } + + protected void setStrategyIsJoinColumn(boolean strategyIsJoinColumn) { + boolean old = this.strategyIsJoinColumn; + this.firePropertyChanged(STRATEGY_IS_JOIN_COLUMN_PROPERTY, old, this.strategyIsJoinColumn = strategyIsJoinColumn); + } + + protected boolean buildStrategyIsJoinColumn() { return this.strategy == this.joinColumnStrategy; } @@ -139,6 +151,15 @@ public class GenericOrmVirtualOverrideRelationship } public boolean strategyIsJoinTable() { + return this.strategyIsJoinTable; + } + + protected void setStrategyIsJoinTable(boolean strategyIsJoinTable) { + boolean old = this.strategyIsJoinTable; + this.firePropertyChanged(STRATEGY_IS_JOIN_TABLE_PROPERTY, old, this.strategyIsJoinTable = strategyIsJoinTable); + } + + protected boolean buildStrategyIsJoinTable() { return this.strategy == this.joinTableStrategy; } |