diff --git a/Sources/Model/Managers/IDataManager.cs b/Sources/Model/Managers/IDataManager.cs index 564ca42..7d36e67 100644 --- a/Sources/Model/Managers/IDataManager.cs +++ b/Sources/Model/Managers/IDataManager.cs @@ -9,12 +9,12 @@ namespace Model.Managers { public interface IDataManager { - IEnumerable GetBateaux(); - IEnumerable GetBestiaires(); - IEnumerable GetEquipages(); - IEnumerable GetFruits(); - IEnumerable GetIles(); - IEnumerable GetPersonnages(); + IEnumerable? GetBateaux(); + IEnumerable? GetBestiaires(); + IEnumerable? GetEquipages(); + IEnumerable? GetFruits(); + IEnumerable? GetIles(); + IEnumerable? GetPersonnages(); void SetBateau(List listeBateaux); void SetBestiaire(List listeBest); void SetEquipage(List listeEquip); diff --git a/Sources/Model/Managers/Manager.cs b/Sources/Model/Managers/Manager.cs index 800d77c..6f5e08a 100644 --- a/Sources/Model/Managers/Manager.cs +++ b/Sources/Model/Managers/Manager.cs @@ -63,49 +63,62 @@ namespace Model.Managers public Manager(IDataManager dataManager) { DataManager = dataManager; - Bateaux = new ObservableCollection(DataManager.GetBateaux()); - Personnages = new ObservableCollection(DataManager.GetPersonnages()); - Fruits = new ObservableCollection(DataManager.GetFruits()); - Iles = new ObservableCollection(DataManager.GetIles()); - Bestiaire = new ObservableCollection(DataManager.GetBestiaires()); - Equipages = new ObservableCollection(DataManager.GetEquipages()); + var bateaux = DataManager.GetBateaux(); + Bateaux = bateaux != null ? new ObservableCollection(bateaux) : new ObservableCollection(); + var personnages = DataManager.GetPersonnages(); + Personnages = personnages != null ? new ObservableCollection(personnages) : new ObservableCollection(); + var fruits = DataManager.GetFruits(); + Fruits = fruits != null ? new ObservableCollection(fruits) : new ObservableCollection(); + var iles = DataManager.GetIles(); + Iles = iles != null ? new ObservableCollection(iles) : new ObservableCollection(); + var bests = DataManager.GetBestiaires(); + Bestiaire = bests != null ? new ObservableCollection(bests) : new ObservableCollection(); + var equipages = DataManager.GetEquipages(); + Equipages = equipages != null ? new ObservableCollection(equipages) : new ObservableCollection(); } + /// \brief Récupère la liste des personnages. /// \return La liste des personnages. public List GetPersonnages() { - return DataManager.GetPersonnages().ToList(); + var personnages = DataManager.GetPersonnages(); + return personnages != null ? personnages.ToList() : new List(); } /// \brief Récupère la liste des fruits du démon. /// \return La liste des fruits du démon. public List GetFruits() { - return DataManager.GetFruits().ToList(); + var fruits = DataManager.GetFruits(); + return fruits != null ? fruits.ToList() : new List(); } /// \brief Récupère la liste des équipages. /// \return La liste des équipages. public List GetEquipages() { - return DataManager.GetEquipages().ToList(); + var equipages = DataManager.GetEquipages(); + return equipages != null ? equipages.ToList() : new List(); } /// \brief Récupère la liste des bateaux. /// \return La liste des bateaux. public List GetBateaux() { - return DataManager.GetBateaux().ToList(); + var bateaux = DataManager.GetBateaux(); + return bateaux != null ? bateaux.ToList() : new List(); } /// \brief Récupère la liste des bestiaires. /// \return La liste des bestiaires. public List GetBestiaires() { - return DataManager.GetBestiaires().ToList(); + var bestiaires = DataManager.GetBestiaires(); + return bestiaires != null ? bestiaires.ToList() : new List(); } /// \brief Récupère la liste des îles. /// \return La liste des îles. public List GetIles() { - return DataManager.GetIles().ToList(); + var iles = DataManager.GetIles(); + return iles != null ? iles.ToList() : new List(); } /// \brief Filtre les fruits du démon par type. diff --git a/Sources/Model/Serializer/XML_Serializer.cs b/Sources/Model/Serializer/XML_Serializer.cs index 75d8ffd..69843e8 100644 --- a/Sources/Model/Serializer/XML_Serializer.cs +++ b/Sources/Model/Serializer/XML_Serializer.cs @@ -30,27 +30,39 @@ namespace Model.Serializer { if (!File.Exists(Path.Combine(Chemin, "./personnage.xml"))) { - SetPersonnage(stubManager.GetPersonnages().ToList()); + var personnages = stubManager.GetPersonnages(); + if(personnages!=null) + SetPersonnage(personnages.ToList()); } if (!File.Exists(Path.Combine(Chemin, "./bateau.xml"))) { - SetBateau(stubManager.GetBateaux().ToList()); + var bateaux = stubManager.GetBateaux(); + if(bateaux !=null) + SetBateau(bateaux.ToList()); } if (!File.Exists(Path.Combine(Chemin, "./fruitdudemon.xml"))) { - SetFDD(stubManager.GetFruits().ToList()); + var fruits = stubManager.GetFruits(); + if(fruits!=null) + SetFDD(fruits.ToList()); } if (!File.Exists(Path.Combine(Chemin, "./bestiaire.xml"))) { - SetBestiaire(stubManager.GetBestiaires().ToList()); + var bestiaires= stubManager.GetBestiaires(); + if(bestiaires!=null) + SetBestiaire(bestiaires.ToList()); } if (!File.Exists(Path.Combine(Chemin, "./equipage.xml"))) { - SetEquipage(stubManager.GetEquipages().ToList()); + var equipages= stubManager.GetEquipages(); + if(equipages!=null) + SetEquipage(equipages.ToList()); } if (!File.Exists(Path.Combine(Chemin, "./ile.xml"))) { - SetIle(stubManager.GetIles().ToList()); + var iles = stubManager.GetIles(); + if(iles!=null) + SetIle(iles.ToList()); } } @@ -161,86 +173,74 @@ namespace Model.Serializer } } - public IEnumerable GetBateaux() + public IEnumerable? GetBateaux() { - List? listeBateau = new List(); + var serializer = new DataContractSerializer(typeof(List)); string xmlFile = "bateau.xml"; Directory.SetCurrentDirectory(Path.Combine(Chemin, "./")); - using (Stream s = File.OpenRead(xmlFile)) { - listeBateau = serializer.ReadObject(s) as List; - } - - - return listeBateau; - + return serializer.ReadObject(s) as List; + } } - public IEnumerable GetBestiaires() + public IEnumerable? GetBestiaires() { - List? listeBest = new List(); + var serializer = new DataContractSerializer(typeof(List)); string xmlFile = "bestiaire.xml"; Directory.SetCurrentDirectory(Path.Combine(Chemin, "./")); using (Stream s = File.OpenRead(xmlFile)) { - listeBest = serializer.ReadObject(s) as List; + return serializer.ReadObject(s) as List; } - return listeBest; + } - public IEnumerable GetEquipages() - { - List? listeEquip = new List(); + public IEnumerable? GetEquipages() + { var serializer = new DataContractSerializer(typeof(List)); string xmlFile = "equipage.xml"; Directory.SetCurrentDirectory(Path.Combine(Chemin, "./")); using (Stream s = File.OpenRead(xmlFile)) { - listeEquip = serializer.ReadObject(s) as List; + return serializer.ReadObject(s) as List; } - return listeEquip; + } - public IEnumerable GetFruits() + public IEnumerable? GetFruits() { - List? listeFDD = new List(); var serializer = new DataContractSerializer(typeof(List)); string xmlFile = "fruitdudemon.xml"; Directory.SetCurrentDirectory(Path.Combine(Chemin, "./")); using (Stream s = File.OpenRead(xmlFile)) { - listeFDD = serializer.ReadObject(s) as List; + return serializer.ReadObject(s) as List; } - return listeFDD; } - public IEnumerable GetIles() + public IEnumerable? GetIles() { - List? listeIle = new List(); var serializer = new DataContractSerializer(typeof(List)); string xmlFile = "ile.xml"; Directory.SetCurrentDirectory(Path.Combine(Chemin, "./")); using (Stream s = File.OpenRead(xmlFile)) { - listeIle = serializer.ReadObject(s) as List; - } - return listeIle; + return serializer.ReadObject(s) as List; + } } - public IEnumerable GetPersonnages() + public IEnumerable? GetPersonnages() { - List? listePerso = new List(); var serializer = new DataContractSerializer(typeof(List)); string xmlFile = "personnage.xml"; Directory.SetCurrentDirectory(Path.Combine(Chemin, "./")); - + using (Stream s = File.OpenRead(xmlFile)) { - listePerso = serializer.ReadObject(s) as List; + return serializer.ReadObject(s) as List; } - return listePerso; } } } diff --git a/Sources/Model/Stub/StubManager.cs b/Sources/Model/Stub/StubManager.cs index 361dba6..135bbd3 100644 --- a/Sources/Model/Stub/StubManager.cs +++ b/Sources/Model/Stub/StubManager.cs @@ -30,30 +30,30 @@ namespace Model.Stub } - public IEnumerable GetPersonnages() + public IEnumerable? GetPersonnages() { return StubPersonnage.RecupererPersonnage(); } - public IEnumerable GetFruits() + public IEnumerable? GetFruits() { return StubFruitDuDemon.RecupererFruit(); } - public IEnumerable GetEquipages() + public IEnumerable? GetEquipages() { StubEquipage.ChargerEquipage(StubPersonnage.RecupererPersonnage().ToList()); return StubEquipage.RecupererEquipage(); } - public IEnumerable GetBateaux() + public IEnumerable? GetBateaux() { return StubBateau.RecupererBateau(); } - public IEnumerable GetBestiaires() + public IEnumerable? GetBestiaires() { return StubBestiaire.RecupererBestiaire(); } - public IEnumerable GetIles() + public IEnumerable? GetIles() { return StubIle.RecupererIle(); } diff --git a/Sources/Ohara.sln b/Sources/Ohara.sln index 25fd92f..b473946 100644 --- a/Sources/Ohara.sln +++ b/Sources/Ohara.sln @@ -12,6 +12,7 @@ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestProject1", "TestProject1\TestProject1.csproj", "{4AD3B218-1007-4859-BC93-2B3E957632E0}" ProjectSection(ProjectDependencies) = postProject {A0307D66-E621-4BC1-A239-87C9021E7CFD} = {A0307D66-E621-4BC1-A239-87C9021E7CFD} + {EEC24A76-0EB3-4C67-A71B-7FF823713645} = {EEC24A76-0EB3-4C67-A71B-7FF823713645} EndProjectSection EndProject Global diff --git a/Sources/Ohara/AppShell.xaml.cs b/Sources/Ohara/AppShell.xaml.cs index 250878a..85d2bde 100644 --- a/Sources/Ohara/AppShell.xaml.cs +++ b/Sources/Ohara/AppShell.xaml.cs @@ -4,10 +4,9 @@ using Model; public partial class AppShell : Shell { - public AppShell() { InitializeComponent(); - - } + + } } diff --git a/Sources/Ohara/PageBateau.xaml b/Sources/Ohara/PageBateau.xaml index b947eda..6337576 100644 --- a/Sources/Ohara/PageBateau.xaml +++ b/Sources/Ohara/PageBateau.xaml @@ -7,7 +7,7 @@ BackgroundColor="#e2edf1"> - +