[jbosstools-commits] JBoss Tools SVN: r30542 - trunk/cdi/plugins/org.jboss.tools.cdi.seam.config.core/src/org/jboss/tools/cdi/seam/config/core.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Tue Apr 12 19:53:00 EDT 2011
Author: scabanovich
Date: 2011-04-12 19:53:00 -0400 (Tue, 12 Apr 2011)
New Revision: 30542
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.seam.config.core/src/org/jboss/tools/cdi/seam/config/core/ConfigDefinitionContext.java
Log:
JBIDE-8717
https://issues.jboss.org/browse/JBIDE-8717
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.seam.config.core/src/org/jboss/tools/cdi/seam/config/core/ConfigDefinitionContext.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.seam.config.core/src/org/jboss/tools/cdi/seam/config/core/ConfigDefinitionContext.java 2011-04-12 23:51:35 UTC (rev 30541)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.seam.config.core/src/org/jboss/tools/cdi/seam/config/core/ConfigDefinitionContext.java 2011-04-12 23:53:00 UTC (rev 30542)
@@ -16,8 +16,7 @@
import java.util.Set;
import org.eclipse.core.runtime.IPath;
-import org.jboss.tools.cdi.core.IRootDefinitionContext;
-import org.jboss.tools.cdi.core.extension.IDefinitionContextExtension;
+import org.jboss.tools.cdi.core.extension.AbstractDefinitionContextExtension;
import org.jboss.tools.cdi.seam.config.core.definition.SeamBeansDefinition;
/**
@@ -25,16 +24,15 @@
* @author Viacheslav Kabanovich
*
*/
-public class ConfigDefinitionContext implements IDefinitionContextExtension {
- IRootDefinitionContext root;
-
+public class ConfigDefinitionContext extends AbstractDefinitionContextExtension {
private Map<IPath, SeamBeansDefinition> beanXMLs = new HashMap<IPath, SeamBeansDefinition>();
private Map<IPath, SeamBeansDefinition> seambeanXMLs = new HashMap<IPath, SeamBeansDefinition>();
- ConfigDefinitionContext workingCopy;
- ConfigDefinitionContext original;
+ public ConfigDefinitionContext getWorkingCopy() {
+ return (ConfigDefinitionContext)super.getWorkingCopy();
+ }
- private ConfigDefinitionContext copy(boolean clean) {
+ protected ConfigDefinitionContext copy(boolean clean) {
ConfigDefinitionContext copy = new ConfigDefinitionContext();
copy.root = root;
if(!clean) {
@@ -46,27 +44,11 @@
return copy;
}
- public void newWorkingCopy(boolean forFullBuild) {
- if(original != null) return;
- workingCopy = copy(forFullBuild);
- workingCopy.original = this;
+ protected void doApplyWorkingCopy() {
+ beanXMLs = ((ConfigDefinitionContext)workingCopy).beanXMLs;
+ seambeanXMLs = ((ConfigDefinitionContext)workingCopy).seambeanXMLs;
}
- public void applyWorkingCopy() {
- if(original != null) {
- original.applyWorkingCopy();
- return;
- }
- if(workingCopy == null) {
- return;
- }
-
- beanXMLs = workingCopy.beanXMLs;
- seambeanXMLs = workingCopy.seambeanXMLs;
-
- workingCopy = null;
- }
-
public void clean() {
synchronized (beanXMLs) {
beanXMLs.clear();
@@ -85,26 +67,6 @@
}
}
- public void setRootContext(IRootDefinitionContext context) {
- root = context;
- }
-
- public IRootDefinitionContext getRootContext() {
- return root;
- }
-
- public ConfigDefinitionContext getWorkingCopy() {
- if(original != null) {
- return this;
- }
- if(workingCopy != null) {
- return workingCopy;
- }
- workingCopy = copy(false);
- workingCopy.original = this;
- return workingCopy;
- }
-
public void addBeanXML(IPath path, SeamBeansDefinition def) {
synchronized (beanXMLs) {
beanXMLs.put(path, def);
More information about the jbosstools-commits
mailing list