Exemplo n.º 1
0
def secondary_files(p, outputBinding, evaluator):
    secondaryFiles = []
    secFiles = wrap_in_list(evaluator.resolve(outputBinding.get('secondaryFiles', [])))
    for s in secFiles:
        path = sec_files_naming_conv(p, s)
        secondaryFiles.append({'path': to_abspath(path)})
    return secondaryFiles
Exemplo n.º 2
0
def secondaryFiles(p, adapter):
    secondaryFiles = []
    secFiles = adapter.get('secondaryFiles', [])
    for s in secFiles:
        path = sec_files_naming_conv(p, s)
        secondaryFiles.append({'path': path})
    return secondaryFiles
Exemplo n.º 3
0
def secondary_files(p, outputBinding, evaluator):
    secondaryFiles = []
    secFiles = wrap_in_list(
        evaluator.resolve(outputBinding.get('secondaryFiles', [])))
    for s in secFiles:
        path = sec_files_naming_conv(p, s)
        secondaryFiles.append({'path': to_abspath(path)})
    return secondaryFiles
Exemplo n.º 4
0
    def _get_secondary_files(self,
                             secondaryFiles,
                             input,
                             autodetect=True,
                             prompt=True):
        def secondary_files_autodetect(path):
            log.info('Searching for additional files for file: %s', path)
            return [
                fn for fn in glob.glob(path + '.*')
                if not (basename(fn).endswith('.meta')
                        or basename(fn).endswith('.rbx.json'))
            ]

        secFiles = []
        if secondaryFiles:
            for n, sf in enumerate(secondaryFiles):
                path = sec_files_naming_conv(input.path, sf)
                log.info('Downloading: %s', path)
                secFiles.append(
                    File(self._download(URL(path), metasearch=False)))
        if autodetect:
            if not secondaryFiles:
                secondaryFiles = []
            autodetected = secondary_files_autodetect(input.path)
            ad = []
            names = [basename(f) for f in secondaryFiles]
            for sf in autodetected:
                sf = sf.replace(input.path, '')
                if sf not in names:
                    ad.append(six.text_type(sf))
            if ad:
                cont = raw_input('Do you want to include autodetected '
                                 'additional files for file %s %s? [Y/n] ' %
                                 (input, six.text_type(ad))).lower().strip()
                if cont == 'y' or cont == '':
                    log.info("Additional files %s included" %
                             six.text_type(ad))
                    secFiles.extend(
                        self._get_secondary_files(ad,
                                                  input,
                                                  autodetect=False,
                                                  prompt=False))
        if prompt:
            prompt = self._prompt_files(input, secFiles=secondaryFiles)
            secFiles.extend(
                self._get_secondary_files(prompt,
                                          input,
                                          autodetect=False,
                                          prompt=False))
        return secFiles
Exemplo n.º 5
0
    def _get_secondary_files(self, secondaryFiles, input, autodetect=True,
                             prompt=True):

        def secondary_files_autodetect(path):
            log.info('Searching for additional files for file: %s', path)
            return [fn for fn in glob.glob(path + '.*')
                    if not (basename(fn).endswith('.meta') or
                            basename(fn).endswith('.rbx.json'))
                    ]

        secFiles = []
        if secondaryFiles:
            for n, sf in enumerate(secondaryFiles):
                path = sec_files_naming_conv(input.path, sf)
                log.info('Downloading: %s', path)
                secFiles.append(File(self._download(URL(path), metasearch=False)))
        if autodetect:
            if not secondaryFiles:
                secondaryFiles = []
            autodetected = secondary_files_autodetect(input.path)
            ad = []
            names = [basename(f) for f in secondaryFiles]
            for sf in autodetected:
                sf = sf.replace(input.path, '')
                if sf not in names:
                    ad.append(six.text_type(sf))
            if ad:
                cont = raw_input('Do you want to include autodetected '
                                 'additional files for file %s %s? [Y/n] '
                                 % (input, six.text_type(ad))).lower().strip()
                if cont == 'y' or cont == '':
                    log.info("Additional files %s included" % six.text_type(ad))
                    secFiles.extend(self._get_secondary_files(
                        ad, input, autodetect=False, prompt=False))
        if prompt:
            prompt = self._prompt_files(input, secFiles=secondaryFiles)
            secFiles.extend(self._get_secondary_files(
                prompt, input, autodetect=False, prompt=False))
        return secFiles