]> gerrit.simantics Code Review - simantics/interop.git/commitdiff
Minor adjustments 11/1811/1
authorMarko Luukkainen <marko.luukkainen@semantum.fi>
Wed, 30 May 2018 14:25:16 +0000 (17:25 +0300)
committerMarko Luukkainen <marko.luukkainen@semantum.fi>
Wed, 30 May 2018 14:25:16 +0000 (17:25 +0300)
Allowing code re-use by making things public
Fix for property change matching (for filtering)

gitlab #1

Change-Id: I40a1493ee7777f4e1ffbc820ca642878ae5b19ab

org.simantics.interop.update/src/org/simantics/interop/update/model/ModelUpdate.java

index 2149fc5dd5710ce207efab5378683e9f6583de15..e736e22e8747758bf2aa640936ae788d102b4c07 100644 (file)
@@ -3,6 +3,7 @@ package org.simantics.interop.update.model;
 import java.util.ArrayDeque;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.Deque;
 import java.util.List;
 import java.util.Map.Entry;
@@ -145,6 +146,10 @@ public abstract class ModelUpdate {
                
        }
        
+       public List<ChangeFilter> getFilters() {
+               return Collections.unmodifiableList(filters);
+       }
+       
        /**
         * Adds an user filter. Use refreshUserFilters() to apply the changes.
         * @param filter
@@ -168,6 +173,10 @@ public abstract class ModelUpdate {
                userFilters.clear();
        }
        
+       public List<ChangeFilter> getUserFilters() {
+               return userFilters;
+       }
+       
        public void refreshUserFilters() throws DatabaseException{
                // use user filters to set visible flags of changes.
                // First, set all changes visible.
@@ -233,6 +242,7 @@ public abstract class ModelUpdate {
                                        continue;
                                if (lc.getFirst().equals(rc.getFirst())) {
                                        comparable.map(lc, rc);
+                                       break;
                                }
                        }
                }
@@ -331,7 +341,7 @@ public abstract class ModelUpdate {
        
        
        
-       private class FilterChangesRead implements Read<GraphChanges> {
+       public static class FilterChangesRead implements Read<GraphChanges> {
                private GraphChanges changes;
                private List<ChangeFilter> filters;
                
@@ -347,7 +357,7 @@ public abstract class ModelUpdate {
                
                /**
                 * Filters changes:
-                * 1. Changes that are not essential for model update (changes that can be found when the models are axcatly the same)
+                * 1. Changes that are not essential for model update (changes that can be found when the models are exactly the same)
                 * 2. Runs custom filters for value changes. 
                 * 
                 * @param g