changeset 72:2440ce10848b draft

planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit a60f8496cccf4c5a07ba7d75876198eda997f07d
author yating-l
date Wed, 27 Sep 2017 15:34:20 -0400
parents b724e559907e
children 3de7eb63604d
files TrackDb.py TrackDb.pyc datatypes/Datatype.py datatypes/Datatype.pyc datatypes/binary/BigBed.py datatypes/binary/BigBed.pyc datatypes/binary/BigWig.py datatypes/binary/BigWig.pyc datatypes/interval/Bed.py datatypes/interval/Bed.pyc datatypes/interval/BedBlastAlignments.py datatypes/interval/BedSimpleRepeats.pyc datatypes/interval/Interval.py datatypes/interval/Interval.pyc hubArchiveCreator.xml macros.xml
diffstat 16 files changed, 30 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/TrackDb.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/TrackDb.py	Wed Sep 27 15:34:20 2017 -0400
@@ -67,7 +67,7 @@
         if not "color" in extraSettings:
             extraSettings["color"] = "#000000"
         extraSettings["color"] = TrackDb.getRgb(extraSettings["color"])
-        if not "group" in extraSettings:
+        if not "group" in extraSettings or not extraSettings["group"]:
             extraSettings["group"] = "Default group"
         if not "thickDrawItem" in extraSettings:
             extraSettings["thickDrawItem"] = "off"
Binary file TrackDb.pyc has changed
--- a/datatypes/Datatype.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/datatypes/Datatype.py	Wed Sep 27 15:34:20 2017 -0400
@@ -75,7 +75,7 @@
     def validateData(self):
         """validate the input data with DataValidation"""
     
-    def initSettings(self, trackType = None):
+    def initSettings(self):
         #Initialize required fields: trackName, longLabel, shortLable
         self.trackName = self.trackSettings["name"]
         if self.trackSettings["long_label"]:
@@ -87,8 +87,7 @@
         else:
             self.shortLabel = self.trackSettings["short_label"]
         self.trackDataURL = os.path.join(self.myTrackFolderPath, self.trackName)
-        if trackType:
-            self.trackType = trackType
+        
 
     @abc.abstractmethod
     def createTrack(self):
Binary file datatypes/Datatype.pyc has changed
--- a/datatypes/binary/BigBed.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/datatypes/binary/BigBed.py	Wed Sep 27 15:34:20 2017 -0400
@@ -16,8 +16,8 @@
         super(BigBed, self).__init__()
         self.inputFile = input_bigbed_path
         self.trackSettings = data_bigbed
-        self.dataType = self._determine_track_type(self.inputFile)
-        self.trackType = self.dataType
+        self.trackType = self._determine_track_type(self.inputFile)
+        self.dataType = self.trackType.replace(' ', '')
         self.seqType = None
 
     def initSettings(self):
@@ -65,7 +65,7 @@
 
                 if match:
                     extra_mark = "." if match.group(1) == match.group(2) else "+"
-                    bed_type = "bigBed%s%s" % (match.group(1), extra_mark)
+                    bed_type = "bigBed %s %s" % (match.group(1), extra_mark)
                     break
 
         cmd_ph.wait()
Binary file datatypes/binary/BigBed.pyc has changed
--- a/datatypes/binary/BigWig.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/datatypes/binary/BigWig.py	Wed Sep 27 15:34:20 2017 -0400
@@ -17,12 +17,12 @@
         self.inputFile = input_bigwig_path
         self.trackSettings = data_bigwig
         self.dataType = "bigWig"
+        self.trackType=self._determine_track_type(self.inputFile)
 
     def initSettings(self):
         super(BigWig, self).initSettings()
         self.trackName = "".join( ( self.trackName, ".bigwig" ) )
         self.trackDataURL = os.path.join(self.myTrackFolderPath, self.trackName)
-        self.trackType=self._determine_track_type(self.inputFile)
         if "track_color" in self.trackSettings:
             self.extraSettings["color"] = self.trackSettings["track_color"]
         if "group_name" in self.trackSettings:
Binary file datatypes/binary/BigWig.pyc has changed
--- a/datatypes/interval/Bed.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/datatypes/interval/Bed.py	Wed Sep 27 15:34:20 2017 -0400
@@ -2,6 +2,7 @@
 
 import os
 import tempfile
+import logging
 
 # Internal dependencies
 from Interval import Interval
@@ -13,13 +14,14 @@
         super(Bed, self).__init__()
         self.inputFile = inputBedGeneric
         self.trackSettings = data_bed_generic
-        self.trackType = "bigBed"
-        self.dataType = "bed"
         self.bedFields = None
         self.extFields = None
+        self.dataType = "bed"
+        
 
     def initSettings(self):
-        super(Bed, self).initSettings(trackType = self.trackType) 
+        super(Bed, self).initSettings() 
+        self.trackType = self._determine_track_type()
         self.trackName = "".join( ( self.trackName, ".bb") )
         self.trackDataURL = os.path.join(self.myTrackFolderPath, self.trackName)
         if "track_color" in self.trackSettings:
@@ -40,7 +42,7 @@
         self.validator = DataValidation(self.inputFile, self.getValidateType(), self.chromSizesFile.name)
         self.validator.validate()
         
-    def getBedFields(self):
+    def _getBedFields(self):
         """count number of bed fields for generic bed format"""
         with open(self.inputFile, 'r') as bed:
             l = bed.readline().split()
@@ -48,9 +50,21 @@
 
     def getValidateType(self):
         if not self.bedFields:
-            return self.dataType + str(self.getBedFields())
+            logging.debug("bedFields is not defined, consider the file as Bed generic format, datatype = bed%s", str(self.bedFields))
+            self.bedFields = self._getBedFields()
+            return self.dataType + str(self.bedFields)
         elif not self.extFields:
             return self.dataType + str(self.bedFields)
         else:
             return self.dataType + str(self.bedFields) + "+" + str(self.extFields)
 
+    def _determine_track_type(self):
+        if not self.bedFields:
+            return "bigBed"
+        else:
+            if not self.extFields:
+                extra_mark = "."
+            else:
+                extra_mark = "+"
+            return "bigBed %s %s" % (str(self.bedFields), extra_mark)
+
Binary file datatypes/interval/Bed.pyc has changed
--- a/datatypes/interval/BedBlastAlignments.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/datatypes/interval/BedBlastAlignments.py	Wed Sep 27 15:34:20 2017 -0400
@@ -13,4 +13,5 @@
 
         super(BedBlastAlignments, self).__init__(input_bed_blast_alignments_false_path, data_bed_blast_alignments)
         self.seqType = 2
+        self.trackType = "bigBed 12 +"
     
Binary file datatypes/interval/BedSimpleRepeats.pyc has changed
--- a/datatypes/interval/Interval.py	Wed Sep 27 11:15:44 2017 -0400
+++ b/datatypes/interval/Interval.py	Wed Sep 27 15:34:20 2017 -0400
@@ -21,7 +21,7 @@
         super(Interval, self).__init__()
 
     def getConvertType(self):
-        return (self.dataType.lower(), self.trackType.lower())
+        return (self.dataType.lower(), self.trackType.split()[0].lower())
 
     def getValidateOptions(self, tab=None, autoSql=None):
         options = dict()
Binary file datatypes/interval/Interval.pyc has changed
--- a/hubArchiveCreator.xml	Wed Sep 27 11:15:44 2017 -0400
+++ b/hubArchiveCreator.xml	Wed Sep 27 15:34:20 2017 -0400
@@ -1,4 +1,4 @@
-<tool id="hubArchiveCreator" name="Hub Archive Creator" version="2.4.2">
+<tool id="hubArchiveCreator" name="Hub Archive Creator" version="2.5.0">
     <description>
         This Galaxy tool permits to prepare your files to be ready for
         Assembly Hub visualization.
--- a/macros.xml	Wed Sep 27 11:15:44 2017 -0400
+++ b/macros.xml	Wed Sep 27 15:34:20 2017 -0400
@@ -17,7 +17,7 @@
         <!-- description.html -->
         <extra_files type="file" name="myHub/@GENOME@/description.html" value="@TEST@/myHub/@GENOME@/description.html"/>
         <!-- trackDb.txt -->
-        <extra_files type="file" name="myHub/@GENOME@/trackDb.txt" value="@TEST@/myHub/@GENOME@/trackDb.txt">
+        <extra_files type="file" name="myHub/@GENOME@/trackDb.txt">
             <assert_contents>
                 <has_text text="track"/>
                 <has_text text="longLabel"/>