X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.diagram%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fsymbolcontribution%2FSymbolProviderFactories.java;h=d6a7fb5b05311ae2b8229bf3cdfd054938aa907e;hb=e3f46ffc9d4a6930adc83ebb8e6730f19708cc94;hp=4320b20fdf269a4aa5cf319c80320cd24f6331aa;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.diagram/src/org/simantics/diagram/symbolcontribution/SymbolProviderFactories.java b/bundles/org.simantics.diagram/src/org/simantics/diagram/symbolcontribution/SymbolProviderFactories.java index 4320b20fd..d6a7fb5b0 100644 --- a/bundles/org.simantics.diagram/src/org/simantics/diagram/symbolcontribution/SymbolProviderFactories.java +++ b/bundles/org.simantics.diagram/src/org/simantics/diagram/symbolcontribution/SymbolProviderFactories.java @@ -1,44 +1,44 @@ -package org.simantics.diagram.symbolcontribution; - -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Status; -import org.simantics.db.ReadGraph; -import org.simantics.db.Resource; -import org.simantics.db.common.primitiverequest.PossibleAdapter; -import org.simantics.db.common.procedure.adapter.TransientCacheAsyncListener; -import org.simantics.db.exception.DatabaseException; -import org.simantics.diagram.internal.Activator; -import org.simantics.diagram.stubs.DiagramResource; - -/** - * @author Tuukka Lehtonen - */ -public class SymbolProviderFactories { - - public static boolean accept(ReadGraph graph, DiagramResource DIA, Resource contribution, Resource diagram) throws DatabaseException { - String name = graph.getPossibleAdapter(contribution, String.class); - if (name == null) - return false; - - for (Resource filterR : graph.getObjects(contribution, DIA.HasSymbolContributionFilter)) { - try { - SymbolContributionFilter filter = graph.syncRequest( - new PossibleAdapter(filterR, SymbolContributionFilter.class), - TransientCacheAsyncListener. instance()); - if (filter == null || !filter.accept(graph, contribution, filterR, diagram)) { - return false; - } - } catch (DatabaseException e) { - // If any errors happen when requesting for the filter, we can - // only assume that the graph related to their definitions is - // somehow corrupted. In this case we must assume that the filter - // did not pass since it did not work properly and true checking - // could not be performed to completion. - Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Filter " + filterR + " testing failed", e)); - return false; - } - } - return true; - } - -} +package org.simantics.diagram.symbolcontribution; + +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Status; +import org.simantics.db.ReadGraph; +import org.simantics.db.Resource; +import org.simantics.db.common.primitiverequest.PossibleAdapter; +import org.simantics.db.common.procedure.adapter.TransientCacheAsyncListener; +import org.simantics.db.exception.DatabaseException; +import org.simantics.diagram.internal.Activator; +import org.simantics.diagram.stubs.DiagramResource; + +/** + * @author Tuukka Lehtonen + */ +public class SymbolProviderFactories { + + public static boolean accept(ReadGraph graph, DiagramResource DIA, Resource contribution, Resource diagram) throws DatabaseException { + String name = graph.getPossibleAdapter(contribution, String.class); + if (name == null) + return false; + + for (Resource filterR : graph.getObjects(contribution, DIA.HasSymbolContributionFilter)) { + try { + SymbolContributionFilter filter = graph.syncRequest( + new PossibleAdapter(filterR, SymbolContributionFilter.class), + TransientCacheAsyncListener. instance()); + if (filter == null || !filter.accept(graph, contribution, filterR, diagram)) { + return false; + } + } catch (DatabaseException e) { + // If any errors happen when requesting for the filter, we can + // only assume that the graph related to their definitions is + // somehow corrupted. In this case we must assume that the filter + // did not pass since it did not work properly and true checking + // could not be performed to completion. + Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Filter " + filterR + " testing failed", e)); + return false; + } + } + return true; + } + +}