public bool AddCar(String id, String vin, int repairingsCount, int driveWeight, bool searched, DateTime stkEndDate, DateTime ekEndDate) { Vehicle vehicle = new Vehicle(id, vin, repairingsCount, driveWeight, searched, stkEndDate, ekEndDate ); int address = CarHeapFile.Add(vehicle); bool result = IDCarTree.Add(new AddressedID(vehicle.ID, vehicle.VINMaxLength, address)); result &= VINCarTree.Add(new AddressedID(vehicle.VIN, vehicle.VINMaxLength, address)); return(result); }
private Vehicle GetCarByVINAsObject(String vin) { AddressedID searchObj = new AddressedID(); searchObj.ID = vin; Block <AddressedID> block = VINCarTree.Find(searchObj); if (block != null) { Record <AddressedID>[] records = block.RecordsArray.Records; foreach (Record <AddressedID> record in records) { if (record.Data.CompareTo(searchObj) == 0) { return(CarHeapFile.FindData(record.Data.Address)); } } } return(null); }
public void GenerateData(int addCount) { Random random = new Random(); for (int i = 0; i < addCount; i++) { int randomNumber = random.Next(1, addCount * 100); Vehicle vehicle = new Vehicle("ID" + i, "VIN" + (addCount - i), randomNumber % 4, randomNumber, false, DateTime.Now.AddDays(randomNumber), DateTime.Now.AddDays(randomNumber) ); int address = CarHeapFile.Add(vehicle); IDCarTree.Add(new AddressedID(vehicle.ID, vehicle.VINMaxLength, address)); VINCarTree.Add(new AddressedID(vehicle.VIN, vehicle.VINMaxLength, address)); } File.WriteAllText("C:/Users/User/source/repos/CarDrivingDataManagementTest/idCarTreeLevelOrder.txt", IDCarTree.TraceLevelOrder()); File.WriteAllText("C:/Users/User/source/repos/CarDrivingDataManagementTest/vinCarTreeLevelOrder.txt", VINCarTree.TraceLevelOrder()); }
public String DescribeCarVINDBStructure() { return(VINCarTree.DescribeFileStructure()); }
public void Close() { IDCarTree.CloseFileInteraction(); VINCarTree.CloseFileInteraction(); CarHeapFile.CloseFileInteraction(); }