X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.diagram.profile%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fprofile%2Fview%2FAvailableProfiles.java;h=07123b57f57f94b9371a7d297cd15ee51baa0669;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hp=593b89562175b433c807f3afc5efce2c228ec6db;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.diagram.profile/src/org/simantics/diagram/profile/view/AvailableProfiles.java b/bundles/org.simantics.diagram.profile/src/org/simantics/diagram/profile/view/AvailableProfiles.java index 593b89562..07123b57f 100644 --- a/bundles/org.simantics.diagram.profile/src/org/simantics/diagram/profile/view/AvailableProfiles.java +++ b/bundles/org.simantics.diagram.profile/src/org/simantics/diagram/profile/view/AvailableProfiles.java @@ -1,46 +1,46 @@ -package org.simantics.diagram.profile.view; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import org.simantics.browsing.ui.swt.widgets.impl.ReadFactoryImpl; -import org.simantics.databoard.Bindings; -import org.simantics.db.ReadGraph; -import org.simantics.db.Resource; -import org.simantics.db.exception.DatabaseException; -import org.simantics.db.layer0.adapter.Instances; -import org.simantics.diagram.stubs.DiagramResource; -import org.simantics.layer0.Layer0; -import org.simantics.utils.datastructures.Pair; - -public class AvailableProfiles extends ReadFactoryImpl>> { - - @Override - public List> perform(ReadGraph graph, Resource runtimeDiagram) throws DatabaseException { - - Layer0 L0 = Layer0.getInstance(graph); - DiagramResource DIA = DiagramResource.getInstance(graph); - - String modelURI = graph.getPossibleRelatedValue(runtimeDiagram, DIA.RuntimeDiagram_HasModelURI); - if (modelURI == null) - return Collections.emptyList(); - - Resource model = graph.getPossibleResource(modelURI); - if (model == null) - return Collections.emptyList(); - - Instances query = graph.adapt(DIA.Profile, Instances.class); - - ArrayList> result = new ArrayList>(); - for(Resource profile : query.find(graph, model)) { - if(!graph.hasStatement(profile, L0.Abstract)) { - String name = graph.getRelatedValue(profile, L0.HasName, Bindings.STRING); - result.add(new Pair(name, profile)); - } - } - return result; - - } - -} +package org.simantics.diagram.profile.view; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.simantics.browsing.ui.swt.widgets.impl.ReadFactoryImpl; +import org.simantics.databoard.Bindings; +import org.simantics.db.ReadGraph; +import org.simantics.db.Resource; +import org.simantics.db.exception.DatabaseException; +import org.simantics.db.layer0.adapter.Instances; +import org.simantics.diagram.stubs.DiagramResource; +import org.simantics.layer0.Layer0; +import org.simantics.utils.datastructures.Pair; + +public class AvailableProfiles extends ReadFactoryImpl>> { + + @Override + public List> perform(ReadGraph graph, Resource runtimeDiagram) throws DatabaseException { + + Layer0 L0 = Layer0.getInstance(graph); + DiagramResource DIA = DiagramResource.getInstance(graph); + + String modelURI = graph.getPossibleRelatedValue(runtimeDiagram, DIA.RuntimeDiagram_HasModelURI); + if (modelURI == null) + return Collections.emptyList(); + + Resource model = graph.getPossibleResource(modelURI); + if (model == null) + return Collections.emptyList(); + + Instances query = graph.adapt(DIA.Profile, Instances.class); + + ArrayList> result = new ArrayList>(); + for(Resource profile : query.find(graph, model)) { + if(!graph.hasStatement(profile, L0.Abstract)) { + String name = graph.getRelatedValue(profile, L0.HasName, Bindings.STRING); + result.add(new Pair(name, profile)); + } + } + return result; + + } + +}