| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- using AppliWebANA.Models;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- namespace AppliWebANA.Repositories.Messagerie {
- public class MessagerieRepositoryEnMemoire : MessagerieRepositoryBase {
- private static Dictionary<string, List<Message>> Messageries = new Dictionary<string, List<Message>>();
- public override IList<Message> AjouterUtilisateur( string nomUtilisateur ) {
- nomUtilisateur = nomUtilisateur.ToUpper();
- lock( MessagerieRepositoryEnMemoire.Messageries ) {
- List<Message> messages;
- if( !MessagerieRepositoryEnMemoire.Messageries.TryGetValue( nomUtilisateur, out messages ) ) {
- messages = new List<Models.Message>() {
- new Message() {
- Expediteur = "SYSTÈME",
- Corps = "Bienvenue sur la messagerie"
- }
- };
- MessagerieRepositoryEnMemoire.Messageries.Add( nomUtilisateur, messages );
- }
- return messages.ToList();
- }
- }
- public override void Envoyer( string destinataire, Message message ) {
- List<Message> messages;
- lock( MessagerieRepositoryEnMemoire.Messageries ) {
- messages = MessagerieRepositoryEnMemoire.Messageries[destinataire.ToUpper()];
- }
- lock( messages ) {
- messages.Insert( 0, message );
- }
- }
- public override IList<Message> ListerMessages( string nomUtilisateur ) {
- List<Message> messages;
- lock( MessagerieRepositoryEnMemoire.Messageries ) {
- messages = MessagerieRepositoryEnMemoire.Messageries[nomUtilisateur.ToUpper()];
- }
- lock( messages ) {
- return messages.ToList();
- }
- }
- public override IList<string> ListerUtilisateurs() {
- lock( MessagerieRepositoryEnMemoire.Messageries ) {
- return MessagerieRepositoryEnMemoire.Messageries.Keys.ToList();
- }
- }
- }
- }
|