--- /dev/null
+package org.simantics.migration.ui;\r
+\r
+import org.simantics.browsing.ui.model.tests.Test;\r
+import org.simantics.db.ReadGraph;\r
+import org.simantics.db.Resource;\r
+import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.layer0.SoftwareConfigurationResources;\r
+\r
+public class IsMigrationPossible implements Test {\r
+\r
+ @Override\r
+ public boolean isCompatible(Class<?> contentType) {\r
+ return contentType.equals(Resource.class);\r
+ }\r
+\r
+ @Override\r
+ public boolean test(ReadGraph graph, Object content) throws DatabaseException {\r
+ Resource resource = (Resource)content;\r
+ SoftwareConfigurationResources SC = SoftwareConfigurationResources.getInstance(graph);\r
+ \r
+ for(Resource version : graph.getObjects(resource, SC.IsCompatibleWith))\r
+ if(graph.hasStatement(version, SC.Version_HasUpdate))\r
+ return true;\r
+ return false;\r
+ }\r
+\r
+}\r