X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.modeling%2Fsrc%2Forg%2Fsimantics%2Fmodeling%2Fmapping%2FElementCopyAdvisor.java;h=d666d63d5f24b9ba33b47a0fef6d363831dcecc3;hb=4e402f51b0e34d40c3f9d33a4bec7feffeb8d339;hp=be13d8cf8ebd42c9a7c65084966f8eeea0856d54;hpb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.modeling/src/org/simantics/modeling/mapping/ElementCopyAdvisor.java b/bundles/org.simantics.modeling/src/org/simantics/modeling/mapping/ElementCopyAdvisor.java index be13d8cf8..d666d63d5 100644 --- a/bundles/org.simantics.modeling/src/org/simantics/modeling/mapping/ElementCopyAdvisor.java +++ b/bundles/org.simantics.modeling/src/org/simantics/modeling/mapping/ElementCopyAdvisor.java @@ -11,9 +11,8 @@ *******************************************************************************/ package org.simantics.modeling.mapping; -import gnu.trove.map.hash.THashMap; - import java.util.Map; +import java.util.function.BiFunction; import org.simantics.db.ReadGraph; import org.simantics.db.Resource; @@ -24,6 +23,7 @@ import org.simantics.db.common.utils.OrderedSetUtils; import org.simantics.db.exception.CancelTransactionException; import org.simantics.db.exception.DatabaseException; import org.simantics.db.layer0.request.PossibleModel; +import org.simantics.db.layer0.util.Layer0Utils; import org.simantics.diagram.stubs.DiagramResource; import org.simantics.diagram.stubs.G2DResource; import org.simantics.diagram.synchronization.ISynchronizationContext; @@ -33,7 +33,8 @@ import org.simantics.diagram.synchronization.graph.CopyAdvisorUtil; import org.simantics.diagram.synchronization.graph.GraphCopyAdvisor; import org.simantics.diagram.synchronization.graph.GraphSynchronizationHints; import org.simantics.layer0.Layer0; -import org.simantics.utils.datastructures.BinaryFunction; + +import gnu.trove.map.hash.THashMap; /** * @author Tuukka Lehtonen @@ -48,10 +49,10 @@ public class ElementCopyAdvisor extends GraphCopyAdvisor { * Diagram mapping will have problems and potentially break the * configuration if the type is not the same as in the source. */ - BinaryFunction statementAdvisor = - new BinaryFunction() { + BiFunction statementAdvisor = + new BiFunction() { @Override - public StatementEvaluation call(ReadGraph graph, Statement stm) { + public StatementEvaluation apply(ReadGraph graph, Statement stm) { if (DIA.HasFlagType.equals(stm.getPredicate())) return StatementEvaluation.INCLUDE; if (G2D.HasFontStyle.equals(stm.getPredicate())) @@ -89,6 +90,8 @@ public class ElementCopyAdvisor extends GraphCopyAdvisor { if (graph.hasStatement(sourceContainer, L0.ConsistsOf, source)) graph.claim(targetContainer, L0.ConsistsOf, copy); + Layer0Utils.claimNewIdentifier(graph, copy, false); + return copy; }