I started using ResultLane, so stop treating it like an abstract class.
[htsworkflow.git] / htsworkflow / pipelines / eland.py
index bd6864e984ce3328534611ebf427b906f5bc0e6a..5f3a345d3447ae84e95f292f9216f5802c9d669a 100644 (file)
@@ -8,7 +8,7 @@ import os
 import re
 import stat
 
-from htsworkflow.pipelines.runfolder import ElementTree
+from htsworkflow.pipelines.runfolder import ElementTree, LANE_LIST
 from htsworkflow.util.ethelp import indent, flatten
 from htsworkflow.util.opener import autoopen
 
@@ -52,7 +52,7 @@ class ResultLane(object):
         """
         Actually read the file and actually count the reads
         """
-        raise NotImplementedError("Can't count abstract classes")
+        pass
 
     def _update_name(self):
         # extract the sample name
@@ -84,7 +84,7 @@ class ElandLane(ResultLane):
     LANE = "ElandLane"
 
     def __init__(self, pathname=None, lane_id=None, end=None, genome_map=None, eland_type=None, xml=None):
-        super(ElandLane, self).__init__(pathname, lane_id, xml)
+        super(ElandLane, self).__init__(pathname, lane_id, end)
 
         self._mapped_reads = None
         self._match_codes = None
@@ -423,7 +423,6 @@ class SequenceLane(ResultLane):
                 self._reads = int(element.text)
             elif tag == SequenceLane.SEQUENCE_TYPE.lower():
                 self.sequence_type = lookup_sequence_type.get(element.text, None)
-                print self.sequence_type
             else:
                 logging.warn("SequenceLane unrecognized tag %s" % (element.tag,))
 
@@ -445,6 +444,12 @@ class ELAND(object):
         if xml is not None:
             self.set_elements(xml)
 
+        if len(self.results[0]) == 0:
+            # Initialize our eland object with meaningless junk
+            for l in  LANE_LIST:
+                self.results[0][l] = ResultLane(lane_id=l, end=0)
+
+
     def get_elements(self):
         root = ElementTree.Element(ELAND.ELAND,
                                    {'version': unicode(ELAND.XML_VERSION)})