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 ) )
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) )