コード例 #1
0
 def associateReads(self, ctx, params):
     # ctx is the context object
     # return variables are: returnVal
     # BEGIN associateReads
     user_token = ctx["token"]
     ws_client = Workspace(url=self.__WS_URL, token=user_token)
     out = dict()
     out["metadata"] = {
         k: v
         for k, v in params.iteritems()
         if not k in ("ws_id", "analysis_id", "genome_id", "singleend_sample", "pairedend_sample") and v is not None
     }
     self.__LOGGER.info("Uploading RNASeqSample {0}".format(out["metadata"]["sample_id"]))
     if "genome_id" in params and params["genome_id"] is not None:
         out["metadata"]["genome_id"] = script_util.get_obj_info(
             self.__LOGGER, self.__WS_URL, [params["genome_id"]], params["ws_id"], user_token
         )[0]
     if "analysis_id" in params and params["analysis_id"] is not None:
         g_ref = script_util.get_obj_info(
             self.__LOGGER, self.__WS_URL, [params["analysis_id"]], params["ws_id"], user_token
         )[0]
         out["analysis_id"] = g_ref
     if "singleend_sample" in params and params["singleend_sample"] is not None:
         try:
             s_res = ws_client.get_objects([{"name": params["singleend_sample"], "workspace": params["ws_id"]}])
             out["singleend_sample"] = s_res[0]["data"]
             print out["singleend_sample"]
         except Exception, e:
             raise KBaseRNASeqException(
                 "Error Downloading SingleEndlibrary object from the workspace {0},{1}".format(
                     params["singleend_sample"], e
                 )
             )
コード例 #2
0
    def SetupRNASeqAnalysis(self, ctx, params):
        # ctx is the context object
        # return variables are: returnVal
        # BEGIN SetupRNASeqAnalysis
        user_token = ctx["token"]
        ws_client = Workspace(url=self.__WS_URL, token=user_token)
        out_obj = {k: v for k, v in params.iteritems() if not k in ("ws_id", "genome_id", "annotation_id") and v}
        pprint(out_obj)
        if "num_samples" in out_obj:
            out_obj["num_samples"] = int(out_obj["num_samples"])
        if "num_replicates" in out_obj:
            out_obj["num_replicates"] = int(out_obj["num_replicates"])
        if "genome_id" in params and params["genome_id"] is not None:
            out_obj["genome_id"] = script_util.get_obj_info(
                self.__LOGGER, self.__WS_URL, [params["genome_id"]], params["ws_id"], user_token
            )[0]
        if "annotation_id" in params and params["annotation_id"] is not None:
            g_ref = script_util.get_obj_info(
                self.__LOGGER, self.__WS_URL, [params["annotation_id"]], params["ws_id"], user_token
            )[0]
            out_obj["annotation_id"] = g_ref
        self.__LOGGER.info("Uploading RNASeq Analysis object to workspace {0}".format(out_obj["experiment_id"]))
        try:
            res = ws_client.save_objects(
                {
                    "workspace": params["ws_id"],
                    "objects": [
                        {"type": "KBaseRNASeq.RNASeqAnalysis", "data": out_obj, "name": out_obj["experiment_id"]}
                    ],
                }
            )
            returnVal = {"workspace": params["ws_id"], "output": out_obj["experiment_id"]}

        except Exception, e:
            raise KBaseRNASeqException(
                "Error Saving the object to workspace {0},{1}".format(out_obj["experiment_id"], e)
            )