Merge pull request #5254 from gregvonkuster/pt_datatypes2

Comment PlantTribes datatypes
This commit is contained in:
Martin Cech
2018-01-02 10:35:47 -05:00
committed by GitHub
2 changed files with 150 additions and 140 deletions
+9
View File
@@ -631,18 +631,27 @@
<datatype extension="maskinfo-asn1-binary" type="galaxy.datatypes.binary:GenericAsn1Binary" mimetype="application/octet-stream" subclass="true" display_in_upload="true" />
<datatype extension="pssm-asn1" type="galaxy.datatypes.data:GenericAsn1" mimetype="text/plain" subclass="true" display_in_upload="true" />
<!-- PlantTribes datatypes -->
<!--
The commented entries in this section are required by versions 1.0.0, 1.0.1 and 1.0.2 of the
PlantTribes tools in the MTS Phylogenetics category, and are not required by version 1.0.3 of
later. These datatypes will be removed in a future Galaxy release.
-->
<!--
<datatype extension="ptalign" type="galaxy.datatypes.plant_tribes:PlantTribesMultipleSequenceAlignment" />
<datatype extension="ptalignca" type="galaxy.datatypes.plant_tribes:PlantTribesMultipleSequenceAlignmentCodonAlignment" />
<datatype extension="ptaligntrimmed" type="galaxy.datatypes.plant_tribes:PlantTribesMultipleSequenceAlignmentTrimmed" />
<datatype extension="ptaligntrimmedca" type="galaxy.datatypes.plant_tribes:PlantTribesMultipleSequenceAlignmentTrimmedCodonAlignment" />
<datatype extension="ptalignfiltered" type="galaxy.datatypes.plant_tribes:PlantTribesMultipleSequenceAlignmentFiltered" />
<datatype extension="ptalignfilteredca" type="galaxy.datatypes.plant_tribes:PlantTribesMultipleSequenceAlignmentFilteredCodonAlignment" />
-->
<datatype extension="ptkscmp" type="galaxy.datatypes.plant_tribes:PlantTribesKsComponents" display_in_upload="true"/>
<!--
<datatype extension="ptortho" type="galaxy.datatypes.plant_tribes:PlantTribesOrtho" />
<datatype extension="ptorthocs" type="galaxy.datatypes.plant_tribes:PlantTribesOrthoCodingSequence" />
<datatype extension="ptphylip" type="galaxy.datatypes.plant_tribes:PlantTribesPhylip" />
<datatype extension="pttgf" type="galaxy.datatypes.plant_tribes:PlantTribesTargetedGeneFamilies" />
<datatype extension="pttree" type="galaxy.datatypes.plant_tribes:PlantTribesPhylogeneticTree" />
-->
<datatype extension="smat" type="galaxy.datatypes.plant_tribes:Smat" display_in_upload="true" />
<!-- Start Haplotype / LOD Datatypes -->
<datatype extension="alohomora_gts" type="galaxy.datatypes.genetics:GenotypeMatrix" />
+141 -140
View File
@@ -1,12 +1,10 @@
import logging
import os
import re
from galaxy.datatypes.data import get_file_peek, Text
from galaxy.datatypes.metadata import MetadataElement, MetadataParameter
from galaxy.datatypes.metadata import MetadataElement
from galaxy.datatypes.sniff import get_headers
from galaxy.datatypes.tabular import Tabular
from galaxy.datatypes.text import Html
from galaxy.util import nice_size
log = logging.getLogger(__name__)
@@ -75,20 +73,24 @@ class Smat(Text):
return True
class PlantTribes(Html):
"""
PlantTribes abstract class.
"""
composite_type = 'basic'
MetadataElement(name="num_files", default=0, desc="Number of files in files_path directory", param=MetadataParameter, readonly=True, visible=False, no_value=0)
def set_meta(self, dataset, overwrite=True, **kwd):
try:
efp = dataset.extra_files_path
if os.path.exists(efp):
dataset.metadata.num_files = len(os.listdir(efp))
except Exception as e:
log.warning("set_meta fname: %s %s" % (dataset.file_name if dataset and dataset.file_name else 'Unkwown', str(e)))
# These commented classes are required by versions 1.0.0, 1.0.1 and 1.0.2 of the
# PlantTribes tools in the MTS Phylogenetics category, and are not required by
# version 1.0.3 or later. These datatypes will be removed in a future Galaxy release.
#
# class PlantTribes(Html):
# """
# PlantTribes abstract class.
# """
# composite_type = 'basic'
# MetadataElement(name="num_files", default=0, desc="Number of files in files_path directory", param=MetadataParameter, readonly=True, visible=False, no_value=0)
#
# def set_meta(self, dataset, overwrite=True, **kwd):
# try:
# efp = dataset.extra_files_path
# if os.path.exists(efp):
# dataset.metadata.num_files = len(os.listdir(efp))
# except Exception as e:
# log.warning("set_meta fname: %s %s" % (dataset.file_name if dataset and dataset.file_name else 'Unkwown', str(e)))
class PlantTribesKsComponents(Tabular):
@@ -150,126 +152,125 @@ class PlantTribesKsComponents(Tabular):
except Exception:
return False
class PlantTribesOrtho(PlantTribes):
"""
PlantTribes sequences classified into precomputed, orthologous gene family
clusters.
"""
file_ext = "ptortho"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesOrtho, self).set_peek(dataset)
dataset.blurb = "Proteins orthogroup fasta files: %d items" % dataset.metadata.num_files
class PlantTribesOrthoCodingSequence(PlantTribes):
"""
PlantTribes sequences classified into precomputed, orthologous gene family
clusters and corresponding coding sequences.
"""
file_ext = "ptorthocs"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesOrthoCodingSequence, self).set_peek(dataset)
dataset.blurb = "Protein and coding sequences orthogroup fasta files: %d items" % dataset.metadata.num_files
class PlantTribesTargetedGeneFamilies(PlantTribes):
"""
PlantTribes targeted gene families.
"""
file_ext = "pttgf"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesTargetedGeneFamilies, self).set_peek(dataset)
dataset.blurb = "Targeted gene families"
class PlantTribesPhylogeneticTree(PlantTribes):
"""
PlantTribes multiple sequence alignments and inferred maximum likelihood
phylogenies for orthogroups.
"""
file_ext = "pttree"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesPhylogeneticTree, self).set_peek(dataset)
dataset.blurb = "Phylogenetic trees: %d items" % dataset.metadata.num_files
class PlantTribesPhylip(PlantTribes):
"""
PlantTribes orthogroup phylip multiple sequence alignments.
"""
file_ext = "ptphylip"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesPhylip, self).set_peek(dataset)
dataset.blurb = "Orthogroup phylip multiple sequence alignments: %d items" % dataset.metadata.num_files
class PlantTribesMultipleSequenceAlignment(PlantTribes):
"""
PlantTribes multiple sequence alignments.
"""
file_ext = "ptalign"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesMultipleSequenceAlignment, self).set_peek(dataset)
dataset.blurb = "Proteins orthogroup alignments: %d items" % dataset.metadata.num_files
class PlantTribesMultipleSequenceAlignmentCodonAlignment(PlantTribes):
"""
PlantTribes multiple sequence alignments with codon alignments.
"""
file_ext = "ptalignca"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesMultipleSequenceAlignmentCodonAlignment, self).set_peek(dataset)
dataset.blurb = "Protein and coding sequences orthogroup alignments: %d items" % dataset.metadata.num_files
class PlantTribesMultipleSequenceAlignmentTrimmed(PlantTribes):
"""
PlantTribes trimmed multiple sequence alignments.
"""
file_ext = "ptaligntrimmed"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesMultipleSequenceAlignmentTrimmed, self).set_peek(dataset)
dataset.blurb = "Trimmed proteins orthogroup alignments: %d items" % dataset.metadata.num_files
class PlantTribesMultipleSequenceAlignmentTrimmedCodonAlignment(PlantTribes):
"""
PlantTribes trimmed multiple sequence alignments with codon alignments.
"""
file_ext = "ptaligntrimmedca"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesMultipleSequenceAlignmentTrimmedCodonAlignment, self).set_peek(dataset)
dataset.blurb = "Trimmed protein and coding sequences orthogroup alignments: %d items" % dataset.metadata.num_files
class PlantTribesMultipleSequenceAlignmentFiltered(PlantTribes):
"""
PlantTribes filtered multiple sequence alignments.
"""
file_ext = "ptalignfiltered"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesMultipleSequenceAlignmentFiltered, self).set_peek(dataset)
dataset.blurb = "Filtered proteins orthogroup alignments: %d items" % dataset.metadata.num_files
class PlantTribesMultipleSequenceAlignmentFilteredCodonAlignment(PlantTribes):
"""
PlantTribes filtered multiple sequence alignments with codon alignments.
"""
file_ext = "ptalignfilteredca"
def set_peek(self, dataset, is_multi_byte=False):
super(PlantTribesMultipleSequenceAlignmentFilteredCodonAlignment, self).set_peek(dataset)
dataset.blurb = "Filtered protein and coding sequences orthogroup alignments: %d items" % dataset.metadata.num_files
# class PlantTribesOrtho(PlantTribes):
# """
# PlantTribes sequences classified into precomputed, orthologous gene family
# clusters.
# """
# file_ext = "ptortho"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesOrtho, self).set_peek(dataset)
# dataset.blurb = "Proteins orthogroup fasta files: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesOrthoCodingSequence(PlantTribes):
# """
# PlantTribes sequences classified into precomputed, orthologous gene family
# clusters and corresponding coding sequences.
# """
# file_ext = "ptorthocs"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesOrthoCodingSequence, self).set_peek(dataset)
# dataset.blurb = "Protein and coding sequences orthogroup fasta files: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesTargetedGeneFamilies(PlantTribes):
# """
# PlantTribes targeted gene families.
# """
# file_ext = "pttgf"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesTargetedGeneFamilies, self).set_peek(dataset)
# dataset.blurb = "Targeted gene families"
#
#
# class PlantTribesPhylogeneticTree(PlantTribes):
# """
# PlantTribes multiple sequence alignments and inferred maximum likelihood
# phylogenies for orthogroups.
# """
# file_ext = "pttree"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesPhylogeneticTree, self).set_peek(dataset)
# dataset.blurb = "Phylogenetic trees: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesPhylip(PlantTribes):
# """
# PlantTribes orthogroup phylip multiple sequence alignments.
# """
# file_ext = "ptphylip"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesPhylip, self).set_peek(dataset)
# dataset.blurb = "Orthogroup phylip multiple sequence alignments: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesMultipleSequenceAlignment(PlantTribes):
# """
# PlantTribes multiple sequence alignments.
# """
# file_ext = "ptalign"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesMultipleSequenceAlignment, self).set_peek(dataset)
# dataset.blurb = "Proteins orthogroup alignments: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesMultipleSequenceAlignmentCodonAlignment(PlantTribes):
# """
# PlantTribes multiple sequence alignments with codon alignments.
# """
# file_ext = "ptalignca"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesMultipleSequenceAlignmentCodonAlignment, self).set_peek(dataset)
# dataset.blurb = "Protein and coding sequences orthogroup alignments: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesMultipleSequenceAlignmentTrimmed(PlantTribes):
# """
# PlantTribes trimmed multiple sequence alignments.
# """
# file_ext = "ptaligntrimmed"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesMultipleSequenceAlignmentTrimmed, self).set_peek(dataset)
# dataset.blurb = "Trimmed proteins orthogroup alignments: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesMultipleSequenceAlignmentTrimmedCodonAlignment(PlantTribes):
# """
# PlantTribes trimmed multiple sequence alignments with codon alignments.
# """
# file_ext = "ptaligntrimmedca"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesMultipleSequenceAlignmentTrimmedCodonAlignment, self).set_peek(dataset)
# dataset.blurb = "Trimmed protein and coding sequences orthogroup alignments: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesMultipleSequenceAlignmentFiltered(PlantTribes):
# """
# PlantTribes filtered multiple sequence alignments.
# """
# file_ext = "ptalignfiltered"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesMultipleSequenceAlignmentFiltered, self).set_peek(dataset)
# dataset.blurb = "Filtered proteins orthogroup alignments: %d items" % dataset.metadata.num_files
#
#
# class PlantTribesMultipleSequenceAlignmentFilteredCodonAlignment(PlantTribes):
# """
# PlantTribes filtered multiple sequence alignments with codon alignments.
# """
# file_ext = "ptalignfilteredca"
#
# def set_peek(self, dataset, is_multi_byte=False):
# super(PlantTribesMultipleSequenceAlignmentFilteredCodonAlignment, self).set_peek(dataset)
# dataset.blurb = "Filtered protein and coding sequences orthogroup alignments: %d items" % dataset.metadata.num_files