]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.acorn/src/org/simantics/acorn/internal/ClusterUpdateProcessorBase.java
Acorn: Fix WriteRunnable.runReally() and other fixes
[simantics/platform.git] / bundles / org.simantics.acorn / src / org / simantics / acorn / internal / ClusterUpdateProcessorBase.java
index e0e733c1ef54bb4996c03ea42f1f4bd69cdaf61b..cd8130d9c51357902b2cea7ef3a2f9be2117f2a8 100644 (file)
@@ -5,6 +5,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.simantics.acorn.ClusterManager;
+import org.simantics.acorn.exception.IllegalAcornStateException;
 import org.simantics.acorn.internal.ClusterStream.ClusterEnum;
 import org.simantics.acorn.internal.ClusterStream.Data;
 import org.simantics.acorn.internal.ClusterStream.StmEnum;
@@ -26,7 +27,7 @@ abstract public class ClusterUpdateProcessorBase {
        
        final Map<ClusterUID, Integer> clusterKeyCache = new HashMap<ClusterUID, Integer>();
        
-       public int getResourceKey(ClusterUID uid, int index) {
+       public int getResourceKey(ClusterUID uid, int index) throws IllegalAcornStateException {
                Integer match = clusterKeyCache.get(uid);
                if(match != null) return match+index;
                int key = manager.getResourceKeyWitoutMutex(uid, 0);
@@ -192,7 +193,7 @@ abstract public class ClusterUpdateProcessorBase {
        int lows[] = new int[2];
        int foreignRefs[] = new int[2];
        
-       private void processStatement(int op, StmEnum stmEnum, ClusterEnum p, ClusterEnum o) {
+       private void processStatement(int op, StmEnum stmEnum, ClusterEnum p, ClusterEnum o) throws IllegalAcornStateException {
 
                int curPos = pos-1-24;
                
@@ -307,7 +308,7 @@ abstract public class ClusterUpdateProcessorBase {
                
        }
 
-       public void process() {
+       public void process() throws IllegalAcornStateException {
                
                foreignPos = 0;