public override ReadOnlyLanguagePairCollection GetLanguagePairs() { PrepareProcessing(); LanguagePairCollection result = new LanguagePairCollection(); int index; foreach (ServiceItemData sid in services) { if (Subjects.BinarySearch(sid.Subject) >= 0) { index = result.BinarySearch(sid.LanguagePair); if (index < 0) { result.Insert(~index, sid.LanguagePair); } } } return(new ReadOnlyLanguagePairCollection(result)); }
public override ReadOnlyLanguagePairCollection GetLanguagePairs() { PrepareProcessing(); LanguagePairCollection result = new LanguagePairCollection(); int index; foreach (ServiceItem item in Manager.ServiceItems) { foreach (string subject in item.SupportedSubjects) { if (Subjects.BinarySearch(subject) >= 0) { foreach (LanguagePair lp in item.SupportedTranslations) { if (disabledSourceLanguages.BinarySearch(lp.From) >= 0) { continue; } if (disabledTargetLanguages.BinarySearch(lp.To) >= 0) { continue; } index = result.BinarySearch(lp); if (index < 0) { result.Insert(~index, lp); } } } } } return(new ReadOnlyLanguagePairCollection(result)); }
public override ReadOnlyLanguagePairCollection GetLanguagePairs() { PrepareProcessing(); LanguagePairCollection result = new LanguagePairCollection(); int index; foreach(ServiceItem item in Manager.ServiceItems) { foreach(string subject in item.SupportedSubjects) { if(Subjects.BinarySearch(subject) >= 0) { foreach(LanguagePair lp in item.SupportedTranslations) { if(disabledSourceLanguages.BinarySearch(lp.From) >= 0) continue; if(disabledTargetLanguages.BinarySearch(lp.To) >= 0) continue; index = result.BinarySearch(lp); if(index < 0) { result.Insert(~index,lp); } } } } } return new ReadOnlyLanguagePairCollection(result); }