Esempio n. 1
0
        public void SerializeJson(StringBuilder sb)
        {
            var jsonObject = new JsonObject(sb);

            //converting empty alleles to '-'
            var refAllele = string.IsNullOrEmpty(ReferenceAllele)? "-":ReferenceAllele;
            var altAllele = string.IsNullOrEmpty(AltAllele) ? "-" : AltAllele;


            sb.Append(JsonObject.OpenBrace);
            jsonObject.AddStringValue("id", ID);
            jsonObject.AddStringValue("reviewStatus", ReviewStatusStrings[ReviewStatus]);
            jsonObject.AddStringValue("isAlleleSpecific", IsAlleleSpecific, false);
            jsonObject.AddStringValues("alleleOrigins", _alleleOrigins);
            jsonObject.AddStringValue("refAllele", "N" == refAllele ? null : refAllele);
            jsonObject.AddStringValue("altAllele", "N" == altAllele ? null : altAllele);
            jsonObject.AddStringValues("phenotypes", Phenotypes);
            jsonObject.AddStringValues("medGenIDs", _medgenIds);
            jsonObject.AddStringValues("omimIDs", OmimIDs);
            jsonObject.AddStringValues("orphanetIDs", OrphanetIDs);
            jsonObject.AddStringValue("significance", Significance);

            if (LastUpdatedDate != long.MinValue)
            {
                jsonObject.AddStringValue("lastUpdatedDate", Date.GetDate(LastUpdatedDate));
            }

            jsonObject.AddStringValues("pubMedIds", PubmedIds?.Select(id => id.ToString()));
            sb.Append(JsonObject.CloseBrace);
        }
Esempio n. 2
0
        public string GetJsonString()
        {
            var sb         = StringBuilderCache.Acquire();
            var jsonObject = new JsonObject(sb);

            //converting empty alleles to '-'
            var refAllele = string.IsNullOrEmpty(ReferenceAllele) ? "-" : ReferenceAllele;
            var altAllele = string.IsNullOrEmpty(AlternateAllele) ? "-" : AlternateAllele;

            //the reduced alt allele should never be output
            altAllele = SupplementaryAnnotationUtilities.ReverseSaReducedAllele(altAllele);

            jsonObject.AddStringValue("id", Id);
            jsonObject.AddStringValue("reviewStatus", ReviewStatusStrings[ReviewStatus]);
            jsonObject.AddStringValue("isAlleleSpecific", IsAlleleSpecific, false);
            jsonObject.AddStringValues("alleleOrigins", AlleleOrigins);
            jsonObject.AddStringValue("refAllele", "N" == refAllele ? null : refAllele);
            jsonObject.AddStringValue("altAllele", "N" == altAllele ? null : altAllele);
            jsonObject.AddStringValues("phenotypes", Phenotypes);
            jsonObject.AddStringValues("medGenIds", MedGenIDs);
            jsonObject.AddStringValues("omimIds", OmimIDs);
            jsonObject.AddStringValues("orphanetIds", OrphanetIDs);
            jsonObject.AddStringValue("significance", Significance);

            if (LastUpdatedDate != long.MinValue)
            {
                jsonObject.AddStringValue("lastUpdatedDate", new DateTime(LastUpdatedDate).ToString("yyyy-MM-dd"));
            }

            jsonObject.AddStringValues("pubMedIds", PubmedIds?.Select(id => id.ToString()));

            return(StringBuilderCache.GetStringAndRelease(sb));
        }
Esempio n. 3
0
        private List <string[]> GetValues()
        {
            var values = new List <string[]>
            {
                //the exact order of adding values has to be preserved. the order is dictated by the json schema
                new[] { Id },
                new[] { VariationId },
                new[] { ClinVarCommon.ReviewStatusStrings[ReviewStatus] },
                AlleleOrigins?.ToArray(),
                new[] { ClinVarCommon.NormalizeAllele(RefAllele) },
                new[] { ClinVarCommon.NormalizeAllele(AltAllele) },
                Phenotypes?.ToArray(),
                MedGenIds?.ToArray(),
                OmimIds?.ToArray(),
                OrphanetIds?.ToArray(),
                Significances,
                new[] { new DateTime(LastUpdatedDate).ToString("yyyy-MM-dd") },
                PubmedIds?.OrderBy(x => x).Select(x => x.ToString()).ToArray()
            };

            return(values);
        }