public async Task <IList <AircraftInformation> > GetAllAsync() { DirectoryInfo positionDataDir = new DirectoryInfo(Properties.Settings.Default.DataPath); IList <AircraftInformation> aircraftDtos = new List <AircraftInformation>(); foreach (FileInfo positionFile in positionDataDir.GetFiles("*.txt")) { AircraftInformation aircraftInformation = new AircraftInformation(); aircraftInformation.File = positionFile; string aircaftInformationContent; using (StreamReader reader = File.OpenText(positionFile.FullName)) { aircaftInformationContent = await reader.ReadToEndAsync(); } AircraftInformation info = JsonConvert.DeserializeObject <AircraftInformation>(aircaftInformationContent); aircraftInformation.AircraftFile = info.AircraftFile; aircraftInformation.Livery = info.Livery; aircraftInformation.Latitude = info.Latitude; aircraftInformation.Longitude = info.Longitude; aircraftInformation.Heading = info.Heading; aircraftDtos.Add(aircraftInformation); } return(aircraftDtos); }
public Situation FindSit(AircraftInformation aircraftInformation) { DirectoryInfo xplaneRootPath = new DirectoryInfo(Properties.Settings.Default.XPlaneRootPath); DirectoryInfo sitFilePath = new DirectoryInfo( Path.Combine(xplaneRootPath.FullName, Properties.Settings.Default.SituationsPathRelativeToXPlaneRoot)); FileInfo sitFile = new FileInfo($@"{sitFilePath.FullName}{Path.DirectorySeparatorChar}{aircraftInformation.File.NameWithoutExtension()}.sit"); return(new Situation(sitFile.Exists, sitFile)); }
public Thumbnail FindThumbnail(AircraftInformation aircraftInformation) { DirectoryInfo xplaneRootPath = new DirectoryInfo(Properties.Settings.Default.XPlaneRootPath); FileInfo thumbnail = new FileInfo( $@"{xplaneRootPath.FullName}{Path.DirectorySeparatorChar}{aircraftInformation.Livery}{aircraftInformation.AircraftFile?.Replace(".acf", "")}{Properties.Settings.Default.ThumbnailEnding}"); if (thumbnail.Exists) { return(new Thumbnail(true, thumbnail)); } return(new Thumbnail(false, null)); }
public async Task <AircraftLauncherInformation> FindForAircraftAsync(AircraftInformation aircraftInformation) { FileInfo aircraftFile = aircraftInformation.File; FileInfo launcherFile = new FileInfo(aircraftFile.FullName.Replace(aircraftFile.Extension, ".launcherV2")); if (launcherFile.Exists) { string launcherContent; using (StreamReader reader = File.OpenText(launcherFile.FullName)) { launcherContent = await reader.ReadToEndAsync(); } AircraftLauncherInformation aircraftLauncherInformation = JsonConvert.DeserializeObject <AircraftLauncherInformation>(launcherContent); aircraftLauncherInformation.LauncherInfoFile = launcherFile; return(aircraftLauncherInformation); } return(null); }
public Aircraft(AircraftInformation aircraftInformation, AircraftLauncherInformation launcherInfo) { Id = Guid.NewGuid(); _launcherInfo = launcherInfo; AircraftInformation = aircraftInformation; }