preventing invalid thread access exceptions when adding a new annotation and setting a value
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaGenerator.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaGenerator.java
index a326bb5..e404ecc 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaGenerator.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaGenerator.java
@@ -63,6 +63,12 @@
 		firePropertyChanged(NAME_PROPERTY, oldName, newName);
 	}
 
+	protected void setName_(String newName) {
+		String oldName = this.name;
+		this.name = newName;
+		firePropertyChanged(NAME_PROPERTY, oldName, newName);
+	}
+
 	public Integer getInitialValue() {
 		return (this.getSpecifiedInitialValue() == null) ? this.getDefaultInitialValue() : this.getSpecifiedInitialValue();
 	}
@@ -78,6 +84,12 @@
 		firePropertyChanged(SPECIFIED_INITIAL_VALUE_PROPERTY, oldSpecifiedInitialValue, newSpecifiedInitialValue);
 	}
 
+	protected void setSpecifiedInitialValue_(Integer newSpecifiedInitialValue) {
+		Integer oldSpecifiedInitialValue = this.specifiedInitialValue;
+		this.specifiedInitialValue = newSpecifiedInitialValue;
+		firePropertyChanged(SPECIFIED_INITIAL_VALUE_PROPERTY, oldSpecifiedInitialValue, newSpecifiedInitialValue);
+	}
+
 	public Integer getAllocationSize() {
 		return (this.getSpecifiedAllocationSize() == null) ? this.getDefaultAllocationSize() : this.getSpecifiedAllocationSize();
 	}
@@ -93,6 +105,12 @@
 		firePropertyChanged(SPECIFIED_ALLOCATION_SIZE_PROPERTY, oldSpecifiedAllocationSize, newSpecifiedAllocationSize);
 	}
 
+	protected void setSpecifiedAllocationSize_(Integer newSpecifiedAllocationSize) {
+		Integer oldSpecifiedAllocationSize = this.specifiedAllocationSize;
+		this.specifiedAllocationSize = newSpecifiedAllocationSize;
+		firePropertyChanged(SPECIFIED_ALLOCATION_SIZE_PROPERTY, oldSpecifiedAllocationSize, newSpecifiedAllocationSize);
+	}
+
 	public Integer getDefaultAllocationSize() {
 		return IGenerator.DEFAULT_ALLOCATION_SIZE;
 	}
@@ -108,9 +126,9 @@
 
 	public void update(T generatorResource) {
 		this.generatorResource = generatorResource;
-		this.setName(this.name(generatorResource));
-		this.setSpecifiedInitialValue(this.specifiedInitialValue(generatorResource));
-		this.setSpecifiedAllocationSize(this.specifiedAllocationSize(generatorResource));
+		this.setName_(this.name(generatorResource));
+		this.setSpecifiedInitialValue_(this.specifiedInitialValue(generatorResource));
+		this.setSpecifiedAllocationSize_(this.specifiedAllocationSize(generatorResource));
 	}
 
 }
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaSequenceGenerator.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaSequenceGenerator.java
index 47f5dab..5d15639 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaSequenceGenerator.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaSequenceGenerator.java
@@ -40,7 +40,6 @@
 		return this.specifiedSequenceName;
 	}
 
-
 	public void setSpecifiedSequenceName(String newSpecifiedSequenceName) {
 		String oldSpecifiedSequenceName = newSpecifiedSequenceName;
 		this.specifiedSequenceName = newSpecifiedSequenceName;
@@ -48,6 +47,12 @@
 		firePropertyChanged(SPECIFIED_SEQUENCE_NAME_PROPERTY, oldSpecifiedSequenceName, newSpecifiedSequenceName);
 	}
 
+	protected void setSpecifiedSequenceName_(String newSpecifiedSequenceName) {
+		String oldSpecifiedSequenceName = newSpecifiedSequenceName;
+		this.specifiedSequenceName = newSpecifiedSequenceName;
+		firePropertyChanged(SPECIFIED_SEQUENCE_NAME_PROPERTY, oldSpecifiedSequenceName, newSpecifiedSequenceName);
+	}
+
 	public String getDefaultSequenceName() {
 		return null;
 	}
@@ -55,7 +60,7 @@
 	@Override
 	public void update(SequenceGenerator sequenceGenerator) {
 		super.update(sequenceGenerator);
-		this.setSpecifiedSequenceName(this.specifiedSequenceName(sequenceGenerator)); 
+		this.setSpecifiedSequenceName_(this.specifiedSequenceName(sequenceGenerator)); 
 	}
 	
 	protected String specifiedSequenceName(SequenceGenerator generatorResource) {
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaTableGenerator.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaTableGenerator.java
index 6f679f7..db6c88c 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaTableGenerator.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/java/JavaTableGenerator.java
@@ -80,6 +80,12 @@
 		firePropertyChanged(SPECIFIED_TABLE_PROPERTY, oldSpecifiedTable, newSpecifiedTable);
 	}
 
+	protected void setSpecifiedTable_(String newSpecifiedTable) {
+		String oldSpecifiedTable = this.specifiedTable;
+		this.specifiedTable = newSpecifiedTable;
+		firePropertyChanged(SPECIFIED_TABLE_PROPERTY, oldSpecifiedTable, newSpecifiedTable);
+	}
+
 	public String getDefaultTable() {
 		return this.defaultTable;
 	}
@@ -98,7 +104,12 @@
 		generatorResource().setCatalog(newSpecifiedCatalog);
 		firePropertyChanged(SPECIFIED_CATALOG_PROPERTY, oldSpecifiedCatalog, newSpecifiedCatalog);
 	}
-
+	
+	protected void setSpecifiedCatalog_(String newSpecifiedCatalog) {
+		String oldSpecifiedCatalog = this.specifiedCatalog;
+		this.specifiedCatalog = newSpecifiedCatalog;
+		firePropertyChanged(SPECIFIED_CATALOG_PROPERTY, oldSpecifiedCatalog, newSpecifiedCatalog);
+	}
 
 	public String getDefaultCatalog() {
 		return this.defaultCatalog;
@@ -112,7 +123,6 @@
 		return this.specifiedSchema;
 	}
 
-
 	public void setSpecifiedSchema(String newSpecifiedSchema) {
 		String oldSpecifiedSchema = this.specifiedSchema;
 		this.specifiedSchema = newSpecifiedSchema;
@@ -120,6 +130,12 @@
 		firePropertyChanged(SPECIFIED_SCHEMA_PROPERTY, oldSpecifiedSchema, newSpecifiedSchema);
 	}
 
+	protected void setSpecifiedSchema_(String newSpecifiedSchema) {
+		String oldSpecifiedSchema = this.specifiedSchema;
+		this.specifiedSchema = newSpecifiedSchema;
+		firePropertyChanged(SPECIFIED_SCHEMA_PROPERTY, oldSpecifiedSchema, newSpecifiedSchema);
+	}
+
 	public String getDefaultSchema() {
 		return this.defaultSchema;
 	}
@@ -145,6 +161,12 @@
 		firePropertyChanged(SPECIFIED_PK_COLUMN_NAME_PROPERTY, oldSpecifiedPkColumnName, newSpecifiedPkColumnName);
 	}
 
+	protected void setSpecifiedPkColumnName_(String newSpecifiedPkColumnName) {
+		String oldSpecifiedPkColumnName = this.specifiedPkColumnName;
+		this.specifiedPkColumnName = newSpecifiedPkColumnName;
+		firePropertyChanged(SPECIFIED_PK_COLUMN_NAME_PROPERTY, oldSpecifiedPkColumnName, newSpecifiedPkColumnName);
+	}
+
 	public String getDefaultPkColumnName() {
 		return this.defaultPkColumnName;
 	}
@@ -164,6 +186,12 @@
 		firePropertyChanged(SPECIFIED_VALUE_COLUMN_NAME_PROPERTY, oldSpecifiedValueColumnName, newSpecifiedValueColumnName);
 	}
 
+	protected void setSpecifiedValueColumnName_(String newSpecifiedValueColumnName) {
+		String oldSpecifiedValueColumnName = this.specifiedValueColumnName;
+		this.specifiedValueColumnName = newSpecifiedValueColumnName;
+		firePropertyChanged(SPECIFIED_VALUE_COLUMN_NAME_PROPERTY, oldSpecifiedValueColumnName, newSpecifiedValueColumnName);
+	}
+
 	public String getDefaultValueColumnName() {
 		return this.defaultValueColumnName;
 	}
@@ -183,6 +211,12 @@
 		firePropertyChanged(SPECIFIED_PK_COLUMN_VALUE_PROPERTY, oldSpecifiedPkColumnValue, newSpecifiedPkColumnValue);
 	}
 
+	public void setSpecifiedPkColumnValue_(String newSpecifiedPkColumnValue) {
+		String oldSpecifiedPkColumnValue = this.specifiedPkColumnValue;
+		this.specifiedPkColumnValue = newSpecifiedPkColumnValue;
+		firePropertyChanged(SPECIFIED_PK_COLUMN_VALUE_PROPERTY, oldSpecifiedPkColumnValue, newSpecifiedPkColumnValue);
+	}
+
 	public String getDefaultPkColumnValue() {
 		return this.defaultPkColumnValue;
 	}
@@ -201,12 +235,12 @@
 	@Override
 	public void update(TableGenerator tableGenerator) {
 		super.update(tableGenerator);
-		this.setSpecifiedTable(this.specifiedTable(tableGenerator));
-		this.setSpecifiedCatalog(this.specifiedCatalog(tableGenerator));
-		this.setSpecifiedSchema(this.specifiedSchema(tableGenerator));
-		this.setSpecifiedPkColumnName(this.specifiedPkColumnName(tableGenerator));
-		this.setSpecifiedValueColumnName(this.specifiedValueColumnName(tableGenerator));
-		this.setSpecifiedPkColumnValue(this.specifiedPkColumnValue(tableGenerator));
+		this.setSpecifiedTable_(this.specifiedTable(tableGenerator));
+		this.setSpecifiedCatalog_(this.specifiedCatalog(tableGenerator));
+		this.setSpecifiedSchema_(this.specifiedSchema(tableGenerator));
+		this.setSpecifiedPkColumnName_(this.specifiedPkColumnName(tableGenerator));
+		this.setSpecifiedValueColumnName_(this.specifiedValueColumnName(tableGenerator));
+		this.setSpecifiedPkColumnValue_(this.specifiedPkColumnValue(tableGenerator));
 		//this.updateUniqueConstraintsFromJava(astRoot);
 	}