public void InsertSection(FileSection fileSection) { if (fileSection == null) { return; } if (FileSections[fileSection.SectionNumber] == null) { FileSections[fileSection.SectionNumber] = fileSection; } if (fileSection.SectionNumber == LowestSectionNotReceived) { LowestSectionNotReceived++; while (LowestSectionNotReceived < FileSections.Length ? FileSections[LowestSectionNotReceived] != null : false) { LowestSectionNotReceived++; } } if (LowestSectionNotReceived == FileSections.Length) { Completed = true; } }
public File(int numberOfSections) { NumberOfSections = numberOfSections; FileSections = new FileSection[NumberOfSections]; LowestSectionNotReceived = 0; Completed = false; }
public DownloadingFrom(FileSection fileSection, double percentageDownloaded) { FileSection = fileSection; PercentageDownloaded = percentageDownloaded; }
public UploadingTo(FileSection fileSection, double percentageUploaded) { FileSection = fileSection; PercentageUploaded = percentageUploaded; }
public bool HasSection(FileSection fileSection) { return(FileSections[fileSection.SectionNumber] != null); }