internal static TranslationResult AddOrUpdate(TranslationCacheKey key, TranslationResult result) { if (result == null) return null; return _translationResultsCache.AddOrUpdate(key, result, (cacheKey, translationResult) => result); }
private TranslationResult ParseResponse(JObject json) { TranslationResult res = new TranslationResult(); JToken sentences = json["sentences"]; List <string> sentenceTexts = new List <string>(); foreach (JToken sent in sentences.Children()) { sentenceTexts.Add(sent.Value <string>("trans")); } string fullText = string.Join(" ", sentenceTexts); if (!string.IsNullOrWhiteSpace(fullText)) { res.Sentences.Add(fullText); } JToken dictionary = json["dict"]; if (dictionary != null) { foreach (JToken dToken in dictionary.Children()) { DictionaryItem d = new DictionaryItem(); d.Title = dToken.Value <string>("pos"); JToken terms = dToken["terms"]; foreach (JToken term in terms.Children()) { d.Terms.Add(term.Value <string>()); } res.DictionaryItems.Add(d); } } res.SourceLanguage = json.Value <string>("src"); return(res); }
internal static bool TryGetValue(TranslationCacheKey key, out TranslationResult result) { return(_translationResultsCache.TryGetValue(key, out result)); }
private TranslationResult ParseResponse(JObject json) { TranslationResult res = new TranslationResult(); JToken sentences = json["sentences"]; List<string> sentenceTexts = new List<string>(); foreach (JToken sent in sentences.Children()) { sentenceTexts.Add(sent.Value<string>("trans")); } string fullText = string.Join(" ", sentenceTexts); if (!string.IsNullOrWhiteSpace(fullText)) { res.Sentences.Add(fullText); } JToken dictionary = json["dict"]; if (dictionary != null) { foreach (JToken dToken in dictionary.Children()) { DictionaryItem d = new DictionaryItem(); d.Title = dToken.Value<string>("pos"); JToken terms = dToken["terms"]; foreach (JToken term in terms.Children()) { d.Terms.Add(term.Value<string>()); } res.DictionaryItems.Add(d); } } res.SourceLanguage = json.Value<string>("src"); return res; }
internal static bool TryGetValue(TranslationCacheKey key, out TranslationResult result) { return _translationResultsCache.TryGetValue(key, out result); }