X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.graph%2Fsrc%2Forg%2Fsimantics%2Fgraph%2Frepresentation%2FTransferableGraph1.java;fp=bundles%2Forg.simantics.graph%2Fsrc%2Forg%2Fsimantics%2Fgraph%2Frepresentation%2FTransferableGraph1.java;h=549e1e223ad6666449d326ddb447f2f9b13ce44d;hb=969bd23cab98a79ca9101af33334000879fb60c5;hp=0000000000000000000000000000000000000000;hpb=866dba5cd5a3929bbeae85991796acb212338a08;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.graph/src/org/simantics/graph/representation/TransferableGraph1.java b/bundles/org.simantics.graph/src/org/simantics/graph/representation/TransferableGraph1.java new file mode 100644 index 000000000..549e1e223 --- /dev/null +++ b/bundles/org.simantics.graph/src/org/simantics/graph/representation/TransferableGraph1.java @@ -0,0 +1,81 @@ +/******************************************************************************* + * Copyright (c) 2007, 2010 Association for Decentralized Information Management + * in Industry THTH ry. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * VTT Technical Research Centre of Finland - initial API and implementation + *******************************************************************************/ +package org.simantics.graph.representation; + +import java.util.TreeMap; + +import org.simantics.databoard.Bindings; +import org.simantics.databoard.binding.Binding; +import org.simantics.databoard.binding.mutable.Variant; +import org.simantics.databoard.serialization.Serializer; + + +/** + * Transferable graph datatype. + * See specification. + * @author Hannu Niemistö + */ +public class TransferableGraph1 { + public static Binding BINDING = Bindings.getBindingUnchecked(TransferableGraph1.class); + public static Serializer SERIALIZER = Bindings.getSerializerUnchecked(BINDING); + + public int resourceCount; + public TreeMap extensions; + public Identity[] identities; + public int[] statements; + public Value[] values; + + public TransferableGraph1() { + } + + public TransferableGraph1(int resourceCount, Identity[] identities, + int[] statements, Value[] values) { + this(resourceCount, identities, statements, values, + new TreeMap()); + } + + public TransferableGraph1(int resourceCount, Identity[] identities, + int[] statements, Value[] values, TreeMap extensions) { + this.resourceCount = resourceCount; + this.identities = identities; + this.statements = statements; + this.values = values; + this.extensions = extensions; + } + + public void print() { + System.out.println("Identities"); + for(Identity id : identities) { + System.out.print(" " + id.resource + " = "); + if(id.definition instanceof Root) { + Root def = (Root)id.definition; + System.out.println("ROOT(" + def.name + ")"); + } + else if(id.definition instanceof External) { + External def = (External)id.definition; + System.out.println("EXTERNAL(" + def.parent + ", " + def.name + ")"); + } + else if(id.definition instanceof Internal) { + Internal def = (Internal)id.definition; + System.out.println("INTERNAL(" + def.parent + ", " + def.name + ")"); + } + } + System.out.println("Statements:"); + for(int i=0;i