# Path: ob_pipelines/config.py
# AWS_PROFILE = os.environ.get('AWS_PROFILE', 'default')
# CONFIG_FILE = op.join(op.dirname(op.dirname(ob_pipelines.__file__)), 'config.yaml')
# class ConfigManager:
#     def __init__(self, config):
#     def get(self, option, default=None):
#     def get_source_bucket(self):
#     def get_target_bucket(self):
# 
# Path: ob_pipelines/pipelines/rnaseq/tasks/star.py
# class Star(BatchTask, LoggingTaskWrapper, Sample):
#     job_definition = 'star'
#     species = Parameter(default='human')
# 
#     @property
#     def parameters(self):
#         fq1, fq2 = [tgt.path for tgt in self.input()]
#         return {
#             'fq1': fq1,
#             'fq2': fq2,
#             'genome_dir': get_index('star', species=self.species),
#             'prefix': self.prefix(),
#             'threads': '20'
#         }
# 
#     def prefix(self):
#         return '{}/{}/star/{}'.format(
#             settings.get_target_bucket(), self.sample_folder, self.sample_id + '.')
# 
#     def requires(self):
#         return SampleFastQ(sample_id=self.sample_id)
# 
#     def output(self):
#         s3_paths = {k: v.format(prefix=self.prefix()) for k, v in STAR_OUTPUTS.items()}
#         return {k: S3Target(path) for k, path in s3_paths.items()}
# 
# Path: ob_pipelines/tasks/skewer.py
# class Skewer(BatchTask, LoggingTaskWrapper, Sample):
#     job_definition = 'skewer'
# 
#     def requires(self):
#         return SampleFastQ(sample_id=self.sample_id)
# 
#     @property
#     def parameters(self):
#         fq1, fq2 = [tgt.path for tgt in self.input()]
#         outdir = '{}/{}/skewer/'.format(settings.get_target_bucket(), self.sample_folder)
#         return {
#             'outdir': outdir,
#             'fq1': fq1,
#             'fq2': fq2
#         }
# 
#     def output(self):
#         outdir = '{}/{}/skewer/'.format(settings.get_target_bucket(), self.sample_folder)
#         yield S3Target(outdir + 'trimmed-pair1.fastq.gz')
#         yield S3Target(outdir + 'trimmed-pair2.fastq.gz')


from ob_pipelines.config import cfg
from ob_pipelines.pipelines.rnaseq.tasks.star import Star
from ob_pipelines.tasks.skewer import Skewer


class StarBySpecies(Star):

    def requires(self):
        return Skewer(sample_id=self.sample_id)


# Path: ob_pipelines/config.py
# AWS_PROFILE = os.environ.get('AWS_PROFILE', 'default')
# CONFIG_FILE = op.join(op.dirname(op.dirname(ob_pipelines.__file__)), 'config.yaml')
# class ConfigManager:
#     def __init__(self, config):
#     def get(self, option, default=None):
#     def get_source_bucket(self):
#     def get_target_bucket(self):
# 
# Path: ob_pipelines/pipelines/rnaseq/tasks/star.py
# class Star(BatchTask, LoggingTaskWrapper, Sample):
#     job_definition = 'star'
#     species = Parameter(default='human')
# 
#     @property
#     def parameters(self):
#         fq1, fq2 = [tgt.path for tgt in self.input()]
#         return {
#             'fq1': fq1,
#             'fq2': fq2,
#             'genome_dir': get_index('star', species=self.species),
#             'prefix': self.prefix(),
#             'threads': '20'
#         }
# 
#     def prefix(self):
#         return '{}/{}/star/{}'.format(
#             settings.get_target_bucket(), self.sample_folder, self.sample_id + '.')
# 
#     def requires(self):
#         return SampleFastQ(sample_id=self.sample_id)
# 
#     def output(self):
#         s3_paths = {k: v.format(prefix=self.prefix()) for k, v in STAR_OUTPUTS.items()}
#         return {k: S3Target(path) for k, path in s3_paths.items()}
# 
# Path: ob_pipelines/tasks/skewer.py
# class Skewer(BatchTask, LoggingTaskWrapper, Sample):
#     job_definition = 'skewer'
# 
#     def requires(self):
#         return SampleFastQ(sample_id=self.sample_id)
# 
#     @property
#     def parameters(self):
#         fq1, fq2 = [tgt.path for tgt in self.input()]
#         outdir = '{}/{}/skewer/'.format(settings.get_target_bucket(), self.sample_folder)
#         return {
#             'outdir': outdir,
#             'fq1': fq1,
#             'fq2': fq2
#         }
# 
#     def output(self):
#         outdir = '{}/{}/skewer/'.format(settings.get_target_bucket(), self.sample_folder)
#         yield S3Target(outdir + 'trimmed-pair1.fastq.gz')
#         yield S3Target(outdir + 'trimmed-pair2.fastq.gz')


# Path: ob_pipelines/pipelines/xenograft/tasks/star_by_species.py
from ob_pipelines.config import cfg
from ob_pipelines.pipelines.rnaseq.tasks.star import Star
from ob_pipelines.tasks.skewer import Skewer



class StarBySpecies(Star):

    def requires(self):
        return Skewer(sample_id=self.sample_id)


    def prefix(self):