]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/examples/org/simantics/databoard/example/old/SerializerExample2.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / examples / org / simantics / databoard / example / old / SerializerExample2.java
1 /*******************************************************************************\r
2  *  Copyright (c) 2010 Association for Decentralized Information Management in\r
3  *  Industry THTH ry.\r
4  *  All rights reserved. This program and the accompanying materials\r
5  *  are made available under the terms of the Eclipse Public License v1.0\r
6  *  which accompanies this distribution, and is available at\r
7  *  http://www.eclipse.org/legal/epl-v10.html\r
8  *\r
9  *  Contributors:\r
10  *      VTT Technical Research Centre of Finland - initial API and implementation\r
11  *******************************************************************************/\r
12 package org.simantics.databoard.example.old;
13
14 import java.awt.geom.Rectangle2D;\r
15 import java.io.IOException;\r
16 \r
17 import org.simantics.databoard.Bindings;\r
18 import org.simantics.databoard.Datatypes;\r
19 import org.simantics.databoard.binding.Binding;\r
20 import org.simantics.databoard.binding.error.BindingException;\r
21 import org.simantics.databoard.parser.repository.DataTypeSyntaxError;\r
22 import org.simantics.databoard.serialization.SerializationException;\r
23 import org.simantics.databoard.type.Datatype;\r
24
25 /**
26  * This example demostrates how to use String serialization.
27  *
28  * @author Toni Kalajainen <toni.kalajainen@vtt.fi>
29  */
30 public class SerializerExample2 {
31
32         public static void main(String[] args) throws SerializationException, IOException, BindingException, DataTypeSyntaxError {
33
34                 // Create Rectangle
35                 Rectangle2D rect = new Rectangle2D.Double(5, 5, 100, 200);
36                 Binding rectangleBinding = Bindings.getBindingUnchecked( Rectangle2D.Double.class );
37                 Datatype rectangleDataType = rectangleBinding.type();
38                 
39                 // Print Rectangle Instance
40                 System.out.println( rectangleBinding.printValueDefinition(rect, true) );
41                 
42                 // Print Rectangle DataType
43                 Binding dataTypeBinding = Bindings.getBindingUnchecked( Datatype.class );
44                 System.out.println( dataTypeBinding.printValueDefinition(rectangleDataType, true) );
45                 
46                 Datatype vectorType = Datatypes.getDatatypeUnchecked(RepresentationExample2.Vector.class);
47                 System.out.println( dataTypeBinding.printValueDefinition(vectorType, true ) );
48                 
49                 // Decode Recrangle
50                 rect = (Rectangle2D) rectangleBinding.parseValueDefinition( "(10, 10, 200, 200)" );
51                 
52                 // Print decoded rectangle
53                 System.out.println(rect);
54                 
55         }
56         
57 }
58