diff options
author | Brian Vosburgh | 2013-04-24 22:22:03 +0000 |
---|---|---|
committer | Brian Vosburgh | 2013-04-24 22:23:25 +0000 |
commit | 99b9fae450d4fdd24396986dabeef1f38cdde531 (patch) | |
tree | ae542f81fd0fffc6b2352dfeb576eb6c44df630f /jaxb/plugins/org.eclipse.jpt.jaxb.ui | |
parent | 35e77930dc5535ecaba159ac92319d5a0528e278 (diff) | |
download | webtools.dali-99b9fae450d4fdd24396986dabeef1f38cdde531.tar.gz webtools.dali-99b9fae450d4fdd24396986dabeef1f38cdde531.tar.xz webtools.dali-99b9fae450d4fdd24396986dabeef1f38cdde531.zip |
[406352] fix deadlock in JpaProjectPropertiesPage - change
JpaFacetVersionChangeDataModelProvider to get default values from
preferences (not from the JPA project)
Diffstat (limited to 'jaxb/plugins/org.eclipse.jpt.jaxb.ui')
-rw-r--r-- | jaxb/plugins/org.eclipse.jpt.jaxb.ui/src/org/eclipse/jpt/jaxb/ui/internal/properties/JaxbProjectPropertiesPage.java | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.ui/src/org/eclipse/jpt/jaxb/ui/internal/properties/JaxbProjectPropertiesPage.java b/jaxb/plugins/org.eclipse.jpt.jaxb.ui/src/org/eclipse/jpt/jaxb/ui/internal/properties/JaxbProjectPropertiesPage.java index 3877d544f2..ef65a1aa6e 100644 --- a/jaxb/plugins/org.eclipse.jpt.jaxb.ui/src/org/eclipse/jpt/jaxb/ui/internal/properties/JaxbProjectPropertiesPage.java +++ b/jaxb/plugins/org.eclipse.jpt.jaxb.ui/src/org/eclipse/jpt/jaxb/ui/internal/properties/JaxbProjectPropertiesPage.java @@ -29,6 +29,7 @@ import org.eclipse.jpt.common.utility.internal.model.value.SortedListValueModelA import org.eclipse.jpt.common.utility.internal.model.value.StaticCollectionValueModel; import org.eclipse.jpt.common.utility.model.Model; import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; +import org.eclipse.jpt.common.utility.model.listener.PropertyChangeAdapter; import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; import org.eclipse.jpt.common.utility.model.value.CollectionValueModel; import org.eclipse.jpt.common.utility.model.value.ListValueModel; @@ -94,14 +95,19 @@ public class JaxbProjectPropertiesPage } private PropertyChangeListener buildPlatformListener(){ - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent event) { - JaxbProjectPropertiesPage.this.platformChanged((JaxbPlatformConfig) event.getNewValue()); - } - }; + return new PlatformListener(); + } + + /* CU private */ class PlatformListener + extends PropertyChangeAdapter + { + @Override + public void propertyChanged(PropertyChangeEvent event) { + JaxbProjectPropertiesPage.this.platformChanged(); + } } - void platformChanged(JaxbPlatformConfig newPlatform) { + void platformChanged() { if ( ! this.getControl().isDisposed()) { // handle null, in the case the jpa facet is changed via the facets page, // the library install delegate is temporarily null @@ -168,15 +174,15 @@ public class JaxbProjectPropertiesPage } @Override - protected void engageListeners() { - super.engageListeners(); + protected void engageListeners_() { + super.engageListeners_(); this.platformModel.addPropertyChangeListener(PropertyValueModel.VALUE, this.platformListener); } @Override - public void disengageListeners() { + public void disengageListeners_() { this.platformModel.removePropertyChangeListener(PropertyValueModel.VALUE, this.platformListener); - super.disengageListeners(); + super.disengageListeners_(); } @@ -287,7 +293,7 @@ public class JaxbProjectPropertiesPage @Override protected Model[] buildValidationModels() { return new Model[] { - platformModel + this.platformModel }; } |