changeset 0:3b76639ad0bb draft

Uploaded
author iuc
date Mon, 28 Jul 2014 02:48:36 -0400
parents
children a37d92dc7fd2
files datatypes_conf.xml json.py
diffstat 2 files changed, 48 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/datatypes_conf.xml	Mon Jul 28 02:48:36 2014 -0400
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+  <datatypes>
+   <datatype_files>
+     <datatype_file name="json.py"/>
+   </datatype_files>
+   <registration>
+        <datatype extension="json" type="galaxy.datatypes.json:Json" display_in_upload="True" />
+   </registration>
+   <sniffers>
+        <sniffer type="galaxy.datatypes.json:Json"/>
+   </sniffers>
+</datatypes>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/json.py	Mon Jul 28 02:48:36 2014 -0400
@@ -0,0 +1,36 @@
+# -*- coding: utf-8 -*-
+
+from galaxy.datatypes.data import Text
+from galaxy.datatypes.data import get_file_peek
+import json
+import os
+
+class Json( Text ):
+    file_ext = "json"
+
+    def set_peek( self, dataset, is_multi_byte=False ):
+        if not dataset.dataset.purged:
+            dataset.peek = get_file_peek( dataset.file_name, is_multi_byte=is_multi_byte )
+            dataset.blurb = "JavaScript Object Notation (JSON)"
+        else:
+            dataset.peek = 'file does not exist'
+            dataset.blurb = 'file purged from disc'
+
+    def sniff( self, filename ):
+        """
+            Try to load the string with the json module. If successful it's a json file.
+        """
+        try:
+            json.load( filename )
+            return True
+        except:
+            return False
+
+    def set_meta( self, dataset, **kwd ):
+        """
+
+        Set the number of models in dataset.
+        """
+        pass
+
+