]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/src/org/simantics/databoard/container/DataContainer.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / src / org / simantics / databoard / container / DataContainer.java
1 package org.simantics.databoard.container;\r
2 \r
3 import java.util.TreeMap;\r
4 \r
5 import org.simantics.databoard.binding.mutable.Variant;\r
6 \r
7 /**\r
8  * This is a container format primarly for encoding data to file system.\r
9  * It adds to the actual data encoded as a variant some metadata, format\r
10  * name and version information.\r
11  * @author Hannu Niemistö\r
12  */\r
13 public class DataContainer {\r
14     /**\r
15      * Format name that tells how the data is used. \r
16      * Applications use format name to decide if the file can \r
17      * be used for the operation the user requested.\r
18      */\r
19     public String format;\r
20     /**\r
21      * Version number of the content format. Increased every\r
22      * time the data type or the interpretation of the data\r
23      * changes.\r
24      */\r
25     public int version;\r
26     /**\r
27      * May contain arbitrary metadata about the data such as\r
28      * author, export data etc.\r
29      */\r
30     public TreeMap<String, Variant> metadata;\r
31     /**\r
32      * The actual data content.\r
33      */\r
34     public Variant content;\r
35     \r
36     public DataContainer() {\r
37     }\r
38     \r
39     public DataContainer(String format, int version,\r
40             TreeMap<String, Variant> metadata, Variant content) {\r
41         this.format = format;\r
42         this.version = version;\r
43         this.metadata = metadata;\r
44         this.content = content;\r
45     }\r
46     \r
47     public DataContainer(String format, int version, Variant content) {\r
48         this(format, version, new TreeMap<String,Variant>(), content);\r
49     }\r
50 }\r