public WebSiteDocumentsSet WeakClone() { WebSiteDocumentsSet output = new WebSiteDocumentsSet(); output.name = name; output.description = description; output.datasetSourceName = datasetSourceName; foreach (WebSiteDocuments site in this) { output.Add(site.WeakClone()); } return(output); }
/// <summary> /// Returns set that contains unlabeled entries /// </summary> /// <param name="input">The input.</param> /// <returns></returns> public static WebSiteDocumentsSet GetUnlabeledDataSet(this IEnumerable <WebSiteDocumentsSet> input) { WebSiteDocumentsSet UnlabeledSites = null; List <WebSiteDocumentsSet> inputSet = input.ToList(); UnlabeledSites = inputSet.FirstOrDefault(x => x.name.isNullOrEmpty()); if (UnlabeledSites == null) { UnlabeledSites = inputSet.FirstOrDefault(x => x.name == SpaceLabel.UNKNOWN); } return(UnlabeledSites); }
private void DeployCategory(WebSiteDocumentsSet set) { String labelName = set.name; if (labelName.isNullOrEmpty()) { labelName = SpaceLabel.UNKNOWN; } SpaceLabel lab = new SpaceLabel(labelName); if (labelName == SpaceLabel.UNKNOWN) { spaceModel.label_unknown = lab; } else { spaceModel.labels.Add(lab); } spaceLabels.Add(lab.name, lab); dataset.Add(labelName, set); foreach (WebSiteDocuments site in set) { spaceLabelsDomains.Add(site.domain, lab); webSiteByDomain.Add(site.domain, site); List <WebSiteDocument> toRemove = new List <WebSiteDocument>(); foreach (WebSiteDocument doc in site.documents) { if (webDocumentByAssignedID.ContainsKey(doc.AssignedID)) { toRemove.Add(doc); } else { webDocumentByAssignedID.Add(doc.AssignedID, doc); spaceLabelByDocAssignedID.Add(doc.AssignedID, lab); } } toRemove.ForEach(x => site.documents.Remove(x)); } }