comparison Agendas/trunk/src/Agendas.Repositories.Memory/PonenteRepository.cs @ 24:41b283d27e3e

Ponentes como entidad Agenda no es una entidad persistente (por ahora)
author nelo@MTEySS.neluz.int
date Tue, 15 Mar 2011 07:49:53 -0300
parents
children 475be11edf56
comparison
equal deleted inserted replaced
23:a85674a7aa7a 24:41b283d27e3e
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using AltNetHispano.Agendas.Domain;
5 using AltNetHispano.Agendas.Domain.Repositories;
6
7 namespace Agendas.Repositories.Memory
8 {
9 public class PonenteRepository : RepositoryBase<Ponente>, IPonenteRepository
10 {
11 public void Save(Ponente ponente)
12 {
13 if (Guid.Empty.Equals(ponente.Id))
14 {
15 ponente.Id = Guid.NewGuid();
16 Objects.Add(ponente.Id, ponente);
17 }
18 }
19
20 public void Update(Ponente ponente)
21 {
22 //nada que hacer en este método para este repositorio
23 }
24
25 public Ponente Get(Guid vanId)
26 {
27 Ponente ponente;
28 return Objects.TryGetValue(vanId, out ponente) ? ponente : null;
29 }
30
31
32 public Ponente GetByNombre(string nombre)
33 {
34 return Objects.Values.SingleOrDefault(p => p.Nombre == nombre);
35 }
36
37 public IList<Ponente> GetAll()
38 {
39 return Objects.Values.ToList();
40 }
41
42 public static void Clear()
43 {
44 Objects.Clear();
45 }
46 }
47 }