changeset 4:4b1d16644ec2 draft

planemo upload for repository https://github.com/SANBI-SA/tools-sanbi-uwc/tree/master/datatypes/neo4j_datatypes commit 63871d62b7acd851ff2d50dc08520c17bdf834f6
author sanbi-uwc
date Wed, 18 May 2016 04:50:39 -0400
parents b4f02c3742f1
children 7f262236d352
files neo4j.py
diffstat 1 files changed, 7 insertions(+), 54 deletions(-) [+]
line wrap: on
line diff
--- a/neo4j.py	Tue May 17 07:35:07 2016 -0400
+++ b/neo4j.py	Wed May 18 04:50:39 2016 -0400
@@ -2,70 +2,23 @@
 Neo4j Composite Dataset
 """
 import logging
+import os
 import sys
 
-import os
-from galaxy.datatypes.data import Data
 from galaxy.datatypes.images import Html
 from galaxy.datatypes.metadata import MetadataElement
+from galaxy.datatypes.data import get_file_peek
+from galaxy.datatypes.data import Data, Text
 
 gal_Log = logging.getLogger(__name__)
 verbose = True
 
-class Neo4j(Html):
+class Neo4j(object):
     """
     base class to use for neostore datatypes
     derived from html - composite datatype elements
     stored in extra files path
     """
-    MetadataElement( name='neostore', default=None, desc='Neo4j NeoStore File', readonly=True, visible=True, set_in_upload=True, no_value=None )
-    MetadataElement( name='neostore_count_file', default=None, desc='Neo4j Count File', readonly=True, visible=True, set_in_upload=True, no_value=None )
-    MetadataElement( name="neostore_labeltokenstore_db_file", default=None, desc="Neostore LabelTokenStore File", readonly=True, visible=True, no_value=None )
-    MetadataElement( name="neostore_nodestore_file", default=None, desc="Neostore NodeStore File", readonly=True, visible=True, no_value=None)
-    MetadataElement( name="neostore_propertystore_file", default=None, desc="Neostore Property Store File", readonly=True, visible=True, no_value=None)
-    MetadataElement( name="neostore_relationship_group_file", default=None, desc="Neostore Relationship Group File", readonly=True, visible=True, no_value=None)
-    MetadataElement( name="neostore_relationship_file", default=None, desc="Neostore Relationship File", readonly=True, visible=True, no_value=None)
-    MetadataElement( name="neostore_relationship_type_file", default=None, desc="Neostore Relationship Type File", readonly=True, visible=True, no_value=None)
-    MetadataElement( name="neostore_schema_store_file", default=None, desc="Neostore Schema Store File", readonly=True, visible=True, no_value=None)
-    MetadataElement( name="neostore_transaction_db_file", default=None, desc="Neostore Transaction File", readonly=True, visible=True, no_value=None)
-
-    composite_type = 'auto_primary_file'
-    #composite_type = 'basic'
-    allow_datatype_change = False
-    file_ext = 'neo4j'
-
-    def generate_primary_file( self, dataset=None ):
-        rval = ['<html><head><title>Neo4j Galaxy Composite Dataset </title></head><p/>']
-        rval.append('<div>This composite dataset is composed of the following files:<p/><ul>')
-        for composite_name, composite_file in self.get_composite_files( dataset=dataset ).iteritems():
-            fn = composite_name
-            opt_text = ''
-            if composite_file.optional:
-                opt_text = ' (optional)'
-            if composite_file.get('description'):
-                rval.append( '<li><a href="%s" type="application/binary">%s (%s)</a>%s</li>' % ( fn, fn, composite_file.get('description'), opt_text ) )
-            else:
-                rval.append( '<li><a href="%s" type="application/binary">%s</a>%s</li>' % ( fn, fn, opt_text ) )
-        rval.append( '</ul></div></html>' )
-        return "\n".join( rval )
-
-    def regenerate_primary_file(self, dataset):
-        """
-        cannot do this until we are setting metadata
-        """
-        efp = dataset.extra_files_path
-        flist = os.listdir(efp)
-        rval = ['<html><head><title>Files for Composite Dataset %s</title></head><body><p/>Composite %s contains:<p/><ul>' % (dataset.name, dataset.name)]
-        for i, fname in enumerate(flist):
-            sfname = os.path.split(fname)[-1]
-            f, e = os.path.splitext(fname)
-            rval.append( '<li><a href="%s">%s</a></li>' % ( sfname, sfname) )
-        rval.append( '</ul></body></html>' )
-        f = file(dataset.file_name, 'w')
-        f.write("\n".join( rval ))
-        f.write('\n')
-        f.close()
-
     def get_mime(self):
         """Returns the mime type of the datatype"""
         return 'text/html'
@@ -114,6 +67,8 @@
 class Neo4jDB(Neo4j, Data):
     """Class for neo4jDB database files."""
     file_ext = 'neostore'
+    allow_datatype_change = False
+    composite_type = 'basic'
 
     def __init__(self, **kwd):
         Data.__init__(self, **kwd)
@@ -153,6 +108,4 @@
 
 if __name__ == '__main__':
     import doctest
-    doctest.testmod(sys.modules[__name__])
-
-
+    doctest.testmod(sys.modules[__name__])
\ No newline at end of file