import java.util.ArrayList;
import org.simantics.acorn.ClusterManager;
+import org.simantics.acorn.exception.AcornAccessVerificationException;
+import org.simantics.acorn.exception.IllegalAcornStateException;
import org.simantics.acorn.internal.Change;
import org.simantics.acorn.internal.ClusterChange;
import org.simantics.db.procore.cluster.ClusterTraits;
this.newValue = null;
}
- public Entry(int subject, boolean oldValueEx, byte[] oldValue, byte[] newValue) {
+ public Entry(int subject, boolean oldValueEx, byte[] oldValue, byte[] newValue) throws IllegalAcornStateException {
if(oldValue == null && newValue == null)
- throw new IllegalStateException();
+ throw new IllegalAcornStateException("oldValue == null && newValue == null");
this.type = Type.VALUE;
this.subject = (short)(subject & 0xFFF);
this.predicate = 0;
this.newValue = newValue;
}
- public void process(ClusterManager clusters, ClusterChange cs, int clusterKey) {
+ public void process(ClusterManager clusters, ClusterChange cs, int clusterKey) throws AcornAccessVerificationException {
Entry e = this;
chunkOffset = Integer.parseInt(ss[1]);
}
- public ClusterStreamChunk getChunk(ClusterManager manager) {
+ public ClusterStreamChunk getChunk(ClusterManager manager) throws AcornAccessVerificationException {
return manager.streamLRU.get(chunkKey);
}