1#!/bin/sh -e
2fail() {
3    echo "Error: $1"
4    exit 1
5}
6
7notExists() {
8	[ ! -f "$1" ]
9}
10
11if notExists "${TMP_PATH}/query.dbtype"; then
12    # shellcheck disable=SC2086
13    "$MMSEQS" createdb "$@" "${TMP_PATH}/query" ${CREATEDB_QUERY_PAR} \
14        || fail "query createdb died"
15fi
16
17if notExists "${TMP_PATH}/result.dbtype"; then
18    # shellcheck disable=SC2086
19    "$MMSEQS" taxonomy "${TMP_PATH}/query" "${TARGET}" "${TMP_PATH}/result" "${TMP_PATH}/taxonomy_tmp" ${TAXONOMY_PAR} \
20        || fail "Search died"
21fi
22
23if notExists "${RESULTS}_lca.tsv"; then
24    # shellcheck disable=SC2086
25    "$MMSEQS" createtsv "${TMP_PATH}/query" "${TMP_PATH}/result" "${RESULTS}_lca.tsv" ${CREATETSV_PAR} \
26        || fail "createtsv died"
27fi
28
29# shellcheck disable=SC2086
30"$MMSEQS" taxonomyreport "${TARGET}" "${TMP_PATH}/result" "${RESULTS}_report" ${TAXONOMYREPORT_PAR} \
31        || fail "taxonomyreport died"
32
33#if notExists "${TMP_PATH}/result_aln.dbtype"; then
34#    # shellcheck disable=SC2086
35#     "$MMSEQS" filterdb "${TMP_PATH}/result" "${TMP_PATH}/result_aln" --extract-lines 1 ${THREADS_COMP_PAR} \
36#        || fail "filterdb died"
37#fi
38
39if notExists "${TMP_PATH}/result_aln_swapped.dbtype"; then
40    # shellcheck disable=SC2086
41     "$MMSEQS" swapresults "${TMP_PATH}/query" "${TARGET}" "${TMP_PATH}/result_aln" "${TMP_PATH}/result_aln_swapped" ${SWAPRESULT_PAR}  \
42        || fail "filterdb died"
43fi
44
45if notExists "${TMP_PATH}/result_aln_swapped_sum.dbtype"; then
46    # shellcheck disable=SC2086
47     "$MMSEQS" summarizealis "${TMP_PATH}/result_aln_swapped" "${TMP_PATH}/result_aln_swapped_sum" ${THREADS_COMP_PAR}  \
48        || fail "filterdb died"
49fi
50
51if notExists "${TMP_PATH}/result_aln_swapped_sum_tax.dbtype"; then
52    # shellcheck disable=SC2086
53     "$MMSEQS" addtaxonomy "${TARGET}" "${TMP_PATH}/result_aln_swapped_sum" "${TMP_PATH}/result_aln_swapped_sum_tax" ${ADDTAXONOMY_PAR} \
54        || fail "filterdb died"
55fi
56
57# shellcheck disable=SC2086
58"$MMSEQS" createtsv "${TARGET}" "${TMP_PATH}/result_aln_swapped_sum_tax" "${RESULTS}_tophit_report" ${CREATETSV_PAR} \
59        || fail "filterdb died"
60
61# shellcheck disable=SC2086
62"$MMSEQS" convertalis "${TMP_PATH}/query" "${TARGET}" "${TMP_PATH}/result_aln" "${RESULTS}_tophit_aln" ${CONVERT_PAR} \
63        || fail "convertalis died"
64
65if [ -n "${REMOVE_TMP}" ]; then
66    # shellcheck disable=SC2086
67    "$MMSEQS" rmdb "${TMP_PATH}/result" ${VERBOSITY}
68    if [ -z "${LEAVE_INPUT}" ]; then
69        # shellcheck disable=SC2086
70        "$MMSEQS" rmdb "${TMP_PATH}/query" ${VERBOSITY}
71        # shellcheck disable=SC2086
72        "$MMSEQS" rmdb "${TMP_PATH}/query_h" ${VERBOSITY}
73    fi
74    # shellcheck disable=SC2086
75    "$MMSEQS" rmdb "${TMP_PATH}/result_aln" ${VERBOSITY}
76    # shellcheck disable=SC2086
77    "$MMSEQS" rmdb "${TMP_PATH}/result_aln_swapped" ${VERBOSITY}
78    # shellcheck disable=SC2086
79    "$MMSEQS" rmdb "${TMP_PATH}/result_aln_swapped_sum" ${VERBOSITY}
80    # shellcheck disable=SC2086
81    "$MMSEQS" rmdb "${TMP_PATH}/result_aln_swapped_sum_tax" ${VERBOSITY}
82
83    rm -rf "${TMP_PATH}/taxonomy_tmp"
84    rm -f "${TMP_PATH}/easytaxonomy.sh"
85fi
86