]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.migration.ui/src/org/simantics/migration/ui/IsMigrationPossible.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.migration.ui / src / org / simantics / migration / ui / IsMigrationPossible.java
1 package org.simantics.migration.ui;\r
2 \r
3 import org.simantics.browsing.ui.model.tests.Test;\r
4 import org.simantics.db.ReadGraph;\r
5 import org.simantics.db.Resource;\r
6 import org.simantics.db.exception.DatabaseException;\r
7 import org.simantics.layer0.SoftwareConfigurationResources;\r
8 \r
9 public class IsMigrationPossible implements Test {\r
10 \r
11     @Override\r
12     public boolean isCompatible(Class<?> contentType) {\r
13         return contentType.equals(Resource.class);\r
14     }\r
15 \r
16     @Override\r
17     public boolean test(ReadGraph graph, Object content) throws DatabaseException {\r
18         Resource resource = (Resource)content;\r
19         SoftwareConfigurationResources SC = SoftwareConfigurationResources.getInstance(graph);\r
20         \r
21         for(Resource version : graph.getObjects(resource, SC.IsCompatibleWith))\r
22             if(graph.hasStatement(version, SC.Version_HasUpdate))\r
23                 return true;\r
24         return false;\r
25     }\r
26 \r
27 }\r