コード例 #1
0
ファイル: DKCoinMgr.cs プロジェクト: dkcoin/dkCOIN-1.2
        /// <summary>
        /// Update a Resource
        /// </summary>
        /// <param name="source_id">string object</param>
        /// <param name="name"string object></param>
        /// <param name="internal_id">string object</param>
        /// <param name="description">string object</param>
        /// <param name="internal_url">string object</param>
        /// <param name="resourceType">resourceType object</param>
        /// <param name="collection_name">string object</param>
        /// <param name="date_created">DateTime object</param>
        /// <param name="gene_ids">string[] object</param>
        /// <param name="ontologies">string[] object</param>
        /// <param name="pubmedid">string object</param>
        /// <returns></returns>
        public virtual string UpdateResource(string source_id, string name, string internal_id, string description, string internal_url,
            string resourceType, string collection_name, DateTime date_created, string[] gene_ids, string[] ontologies, string pubmedid)
        {
            dkCOIN.typeResource[] resources = new dkCOIN.typeResource[1];
            dkCOIN.typeResource resource = new dkCOIN.typeResource();

            resource.name = name;
            resource.internal_id = internal_id;
            resource.internal_url = internal_url;
            resource.collection_name = collection_name;
            resource.resourcetype = resourceType;
            if (description.Length > 2000)
                description = description.Substring(0, 1999);
            resource.description = description;
            resource.internal_create_date = date_created;
            if (!string.IsNullOrEmpty(pubmedid))
            {
                dkCOIN.typePublication PubMedType = new dkCOIN.typePublication();
                //PubMedType.citation = false;
                PubMedType.pubmed_id = pubmedid;
                resource.pubmed = new dkCOIN.typePublication[1];
                resource.pubmed[0] = PubMedType;
            }
            if (date_created != null)
                resource.internal_create_dateSpecified = true;
            if (gene_ids != null)
                resource.gene_id = gene_ids;
            if (ontologies != null)
                resource.term_identifier = ontologies;
            resources[0] = resource;
            try
            {
                if (webservice == null) return "";
                StartSession();
                int result_ct = 0;
                result_ct = webservice.updateResource(resources).Length;
                dkCOIN.typeResourceResult[] results = new dkCOIN.typeResourceResult[result_ct];
                results = webservice.updateResource(resources);
                string action = results[0].action;
                bool inserted = action.ToLower().StartsWith("inserted");
                EndSession();
                return action + ": " + name + (!inserted ? " updated " : " inserted ") + "successfully.";
            }
            catch (Exception e)
            {
                EndSession();
                string msg = e.Message;
                msg = msg.Replace("\'", "");
                msg = msg.Replace("\n", "");
                EmailErrorNotification("UpdateResource", msg);
                return null;
            }
        }
コード例 #2
0
ファイル: DKCoinMgr.cs プロジェクト: dkcoin/dkCOIN-1.2
        /// <summary>
        /// Deletes a Resources
        /// </summary>
        /// <param name="source_id">string object (Source ID)</param>
        /// <param name="internal_id">string object (Internal Resource ID)</param>
        /// <param name="collection_name">string object (Collection Name)</param>
        public virtual void DeleteResource(string source_id, string internal_id, string collection_name)
        {
            if (webservice == null)
                return;
            dkCOIN.typeDeleteResource[] resources = new dkCOIN.typeDeleteResource[1];
            dkCOIN.typeDeleteResource resource = new dkCOIN.typeDeleteResource();

            resource.internal_id = internal_id;
            resource.collection_name = collection_name;
            resources[0] = resource;

            try
            {
                StartSession();
                dkCOIN.typeResourceResult[] results = new dkCOIN.typeResourceResult[1];
                results = webservice.deleteResource(resources);
                EndSession();
            }
            catch (Exception e)
            {
                EndSession();
                EmailErrorNotification("DeleteResource(string source_id [" + source_id + "], string internal_id [" + internal_id + "], string collection_name [" + collection_name + "])", e.Message);
            }
        }