private void ExtractSubjects(JObject finnaItem, Item item) { var subjectTokens = ArrayOrThrow(finnaItem, "subjects"); var subjects = new List <DetailedSubject>(); foreach (var subjectToken in subjectTokens) { var subjectPartTokens = (JArray)subjectToken; if (subjectPartTokens.Count == 0) { continue; } var firstPart = (string)subjectPartTokens[0]; var joinedParts = string.Join(subjectPartSeparator, subjectPartTokens); var genericSubject = LoadOrCreateSubject(firstPart); var subject = new DetailedSubject { FullText = joinedParts, Subject = genericSubject }; subjects.Add(subject); } item.Subjects = subjects; }
public void UpdateDetailedSubject(DetailedSubject entity) { detailedSubjects.Update(entity); }
public void AddDetailedSubject(DetailedSubject entity) { detailedSubjects.Add(entity); }
public void RemoveDetailedSubject(DetailedSubject entity) { detailedSubjects.Remove(entity); }