diff --git a/ArchiApp.docx b/ArchiApp.docx
new file mode 100644
index 0000000..720a064
Binary files /dev/null and b/ArchiApp.docx differ
diff --git a/Contexte/Diagramme_paquetage.drawio b/Contexte/Diagramme_paquetage.drawio
new file mode 100644
index 0000000..4731072
--- /dev/null
+++ b/Contexte/Diagramme_paquetage.drawio
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Contexte/Diagramme_sequence1.drawio b/Contexte/Diagramme_sequence1.drawio
new file mode 100644
index 0000000..bf55216
--- /dev/null
+++ b/Contexte/Diagramme_sequence1.drawio
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Contexte/Diagramme_sequence2.drawio b/Contexte/Diagramme_sequence2.drawio
new file mode 100644
index 0000000..fd7c56c
--- /dev/null
+++ b/Contexte/Diagramme_sequence2.drawio
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MusiLib/MusiLib/DataContractPersistance/DataContractPers.cs b/MusiLib/MusiLib/DataContractPersistance/DataContractPers.cs
index 383925a..7cc8ff0 100644
--- a/MusiLib/MusiLib/DataContractPersistance/DataContractPers.cs
+++ b/MusiLib/MusiLib/DataContractPersistance/DataContractPers.cs
@@ -1,142 +1,142 @@
-using Microsoft.Maui.Controls.PlatformConfiguration;
-using MusiLib.Model;
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Runtime.Serialization;
-using System.Text;
-using System.Threading.Tasks;
-using System.Xml;
-
-namespace MusiLib.DataContractPersistance
-{
- public class DataContractPers : IPersistanceManager
- {
+using Microsoft.Maui.Controls.PlatformConfiguration;
+using MusiLib.Model;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Threading.Tasks;
+using System.Xml;
+
+namespace MusiLib.DataContractPersistance
+{
+ public class DataContractPers : IPersistanceManager
+ {
public string FilePath { get; set; } = FileSystem.AppDataDirectory; /* FileSystem.AppDataDirectory permet de renvoyez le chemin d'accès au répertoire spécifique de donnée
- * ou l'application peut stocker des fichiers ou des données persistantes*/
- public string FileNameFU { get; set; } = "favorisUtilisateurs.xml"; /* déclaration des noms des fichiers stockés pour la persistance*/
- public string FileNameP { get; set; } = "partitions.xml";
-
- public (List, List) chargeDonnees() /*Méthode permettant de charger les données*/
- {
- var partitionsSerializer = new DataContractSerializer(typeof(List));
- var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
-
- List partitions = new List();
- List favoris = new List();
-
- using (Stream partitionsStream = File.OpenRead(Path.Combine(FilePath, "partitions.xml"))) /*Path.Combine permet de combiner plusieurs segments de chemin en une seule chaine de chemin*/
- {
- partitions = partitionsSerializer.ReadObject(partitionsStream) as List; /*Serializer permet de convertir des objets */
- }
-
- using (Stream favorisUtilisateursStream = File.OpenRead(Path.Combine(FilePath, "favorisUtilisateurs.xml")))
- {
- DataToPersist data = favorisUtilisateursSerializer.ReadObject(favorisUtilisateursStream) as DataToPersist;
- favoris = data.favoris;
- }
-
- return (partitions, favoris);
- }
-
-
- public void sauvegardeDonnees(List p, List f) /*Méthode permettant de sauvegarder les données*/
- {
- var partitionsSerializer = new DataContractSerializer(typeof(List));
- var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
-
- if (!Directory.Exists(FilePath))
- {
- Debug.WriteLine("Directory créé à l'instant");
- Debug.WriteLine(Directory.GetDirectoryRoot(FilePath));
- Debug.WriteLine(FilePath);
- Directory.CreateDirectory(FilePath);
- }
-
- using (Stream partitionsStream = File.Create(Path.Combine(FilePath, FileNameP)))
- {
- partitionsSerializer.WriteObject(partitionsStream, p);
- }
-
- DataToPersist data = new DataToPersist();
- data.favoris = f;
-
- using (Stream favorisUtilisateursStream = File.Create(Path.Combine(FilePath, FileNameFU)))
- {
- favorisUtilisateursSerializer.WriteObject(favorisUtilisateursStream, data);
- }
- }
-
- public void sauvegardeFavoriAdd(Partition fav) /*Méthode permettant la sauvegarde de favoris*/
- {
- var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
-
- if (!Directory.Exists(FilePath))
- {
- Debug.WriteLine("Directory créé à l'instant");
- Debug.WriteLine(Directory.GetDirectoryRoot(FilePath));
- Debug.WriteLine(FilePath);
- Directory.CreateDirectory(FilePath);
- }
-
- List favoris = new List();
- using (Stream favorisUtilisateursStream = File.OpenRead(Path.Combine(FilePath, FileNameFU)))
- {
- DataToPersist data = favorisUtilisateursSerializer.ReadObject(favorisUtilisateursStream) as DataToPersist;
- if (data != null && data.favoris != null)
- {
- favoris = data.favoris;
- }
- }
-
- favoris.Add(fav);
-
- using (Stream favorisUtilisateursStream = File.Create(Path.Combine(FilePath, FileNameFU)))
- {
- DataToPersist data = new DataToPersist();
- data.favoris = favoris;
- favorisUtilisateursSerializer.WriteObject(favorisUtilisateursStream, data);
- }
-
- Debug.WriteLine("Nouveau favori sauvegardé !");
- }
-
- public void sauvegardeFavoriRemove(Partition fav) /*Méthode permettant la sauvegarde de suppression de favoris */
- {
- var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
-
- if (!Directory.Exists(FilePath))
- {
- Debug.WriteLine("Directory créé à l'instant");
- Debug.WriteLine(Directory.GetDirectoryRoot(FilePath));
- Debug.WriteLine(FilePath);
- Directory.CreateDirectory(FilePath);
- }
-
- List favoris = new List();
- using (Stream favorisUtilisateursStream = File.OpenRead(Path.Combine(FilePath, FileNameFU)))
- {
- DataToPersist data = favorisUtilisateursSerializer.ReadObject(favorisUtilisateursStream) as DataToPersist;
- if (data != null && data.favoris != null)
- {
- favoris = data.favoris;
- }
- }
-
- favoris.RemoveAll(f => f.Nom == fav.Nom);
-
- using (Stream favorisUtilisateursStream = File.Create(Path.Combine(FilePath, FileNameFU)))
- {
- DataToPersist data = new DataToPersist();
- data.favoris = favoris;
- favorisUtilisateursSerializer.WriteObject(favorisUtilisateursStream, data);
- }
-
- Debug.WriteLine("Favori supprimé de la sauvegarde !");
- }
-
-
- }
+ * ou l'application peut stocker des fichiers ou des données persistantes*/
+ public string FileNameFU { get; set; } = "favorisUtilisateurs.xml"; /* déclaration des noms des fichiers stockés pour la persistance*/
+ public string FileNameP { get; set; } = "partitions.xml";
+
+ public (List, List) chargeDonnees() /*Méthode permettant de charger les données*/
+ {
+ var partitionsSerializer = new DataContractSerializer(typeof(List));
+ var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
+
+ List partitions = new List();
+ List favoris = new List();
+
+ using (Stream partitionsStream = File.OpenRead(Path.Combine(FilePath, "partitions.xml"))) /*Path.Combine permet de combiner plusieurs segments de chemin en une seule chaine de chemin*/
+ {
+ partitions = partitionsSerializer.ReadObject(partitionsStream) as List; /*Serializer permet de convertir des objets */
+ }
+
+ using (Stream favorisUtilisateursStream = File.OpenRead(Path.Combine(FilePath, "favorisUtilisateurs.xml")))
+ {
+ DataToPersist data = favorisUtilisateursSerializer.ReadObject(favorisUtilisateursStream) as DataToPersist;
+ favoris = data.favoris;
+ }
+
+ return (partitions, favoris);
+ }
+
+
+ public void sauvegardeDonnees(List p, List f) /*Méthode permettant de sauvegarder les données*/
+ {
+ var partitionsSerializer = new DataContractSerializer(typeof(List));
+ var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
+
+ if (!Directory.Exists(FilePath))
+ {
+ Debug.WriteLine("Directory créé à l'instant");
+ Debug.WriteLine(Directory.GetDirectoryRoot(FilePath));
+ Debug.WriteLine(FilePath);
+ Directory.CreateDirectory(FilePath);
+ }
+
+ using (Stream partitionsStream = File.Create(Path.Combine(FilePath, FileNameP)))
+ {
+ partitionsSerializer.WriteObject(partitionsStream, p);
+ }
+
+ DataToPersist data = new DataToPersist();
+ data.favoris = f;
+
+ using (Stream favorisUtilisateursStream = File.Create(Path.Combine(FilePath, FileNameFU)))
+ {
+ favorisUtilisateursSerializer.WriteObject(favorisUtilisateursStream, data);
+ }
+ }
+
+ public void sauvegardeFavoriAdd(Partition fav) /*Méthode permettant la sauvegarde de favoris*/
+ {
+ var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
+
+ if (!Directory.Exists(FilePath))
+ {
+ Debug.WriteLine("Directory créé à l'instant");
+ Debug.WriteLine(Directory.GetDirectoryRoot(FilePath));
+ Debug.WriteLine(FilePath);
+ Directory.CreateDirectory(FilePath);
+ }
+
+ List favoris = new List();
+ using (Stream favorisUtilisateursStream = File.OpenRead(Path.Combine(FilePath, FileNameFU)))
+ {
+ DataToPersist data = favorisUtilisateursSerializer.ReadObject(favorisUtilisateursStream) as DataToPersist;
+ if (data != null && data.favoris != null)
+ {
+ favoris = data.favoris;
+ }
+ }
+
+ favoris.Add(fav);
+
+ using (Stream favorisUtilisateursStream = File.Create(Path.Combine(FilePath, FileNameFU)))
+ {
+ DataToPersist data = new DataToPersist();
+ data.favoris = favoris;
+ favorisUtilisateursSerializer.WriteObject(favorisUtilisateursStream, data);
+ }
+
+ Debug.WriteLine("Nouveau favori sauvegardé !");
+ }
+
+ public void sauvegardeFavoriRemove(Partition fav) /*Méthode permettant la sauvegarde de suppression de favoris */
+ {
+ var favorisUtilisateursSerializer = new DataContractSerializer(typeof(DataToPersist));
+
+ if (!Directory.Exists(FilePath))
+ {
+ Debug.WriteLine("Directory créé à l'instant");
+ Debug.WriteLine(Directory.GetDirectoryRoot(FilePath));
+ Debug.WriteLine(FilePath);
+ Directory.CreateDirectory(FilePath);
+ }
+
+ List favoris = new List();
+ using (Stream favorisUtilisateursStream = File.OpenRead(Path.Combine(FilePath, FileNameFU)))
+ {
+ DataToPersist data = favorisUtilisateursSerializer.ReadObject(favorisUtilisateursStream) as DataToPersist;
+ if (data != null && data.favoris != null)
+ {
+ favoris = data.favoris;
+ }
+ }
+
+ favoris.RemoveAll(f => f.Nom == fav.Nom);
+
+ using (Stream favorisUtilisateursStream = File.Create(Path.Combine(FilePath, FileNameFU)))
+ {
+ DataToPersist data = new DataToPersist();
+ data.favoris = favoris;
+ favorisUtilisateursSerializer.WriteObject(favorisUtilisateursStream, data);
+ }
+
+ Debug.WriteLine("Favori supprimé de la sauvegarde !");
+ }
+
+
+ }
}
\ No newline at end of file
diff --git a/MusiLib/MusiLib/Model/Partition.cs b/MusiLib/MusiLib/Model/Partition.cs
index 538760d..a5b5553 100644
--- a/MusiLib/MusiLib/Model/Partition.cs
+++ b/MusiLib/MusiLib/Model/Partition.cs
@@ -10,8 +10,6 @@ namespace MusiLib.Model
[DataContract]
public class Partition
{
- [DataMember]
- public static int idTotal = 0;
[DataMember]
public string Nom { get; private set; }
[DataMember]
@@ -32,7 +30,6 @@ namespace MusiLib.Model
public Partition(string nom, string auteur, string complexite, string description, string instrument, string son)
{
Nom = nom;
- IdPartition = idTotal;
Auteur = auteur;
Complexite = complexite;
Description = description;