annotate Agendas/trunk/src/Agendas.Google/GooglePublicador.cs @ 135:80156ae1493f

Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los test se encontraban fallidos.
author alabra
date Sun, 17 Jul 2011 14:13:30 -0400
parents 0ea32a748453
children 734d3f0853bf
rev   line source
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
1 using System.Collections.Generic;
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
2 using System.Configuration;
0
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
3 using AltNetHispano.Agendas.Domain;
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
4 using AltNetHispano.Agendas.Google.DetailsEvents;
0
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
5
34
475be11edf56 Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents: 3
diff changeset
6 namespace AltNetHispano.Agendas.Google
0
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
7 {
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
8 public class GooglePublicador : IPublicador
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
9 {
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
10 private readonly IGCalendarAdapter _adapter;
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
11 private readonly IDictionary<TipoEvento, IGEventDetail> _gEventDetails;
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
12
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
13 private static string GetUserName
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
14 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
15 get { return ConfigurationManager.AppSettings["userNameGoogleCalendar"]; }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
16 }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
17
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
18 private static string GetPassword
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
19 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
20 get { return ConfigurationManager.AppSettings["passwordGoogleCalendar"]; }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
21 }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
22
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
23 private static string GetCalendarId
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
24 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
25 get { return ConfigurationManager.AppSettings["calendarIdGoogleCalendar"]; }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
26 }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
27
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
28 public void Publicar(IEnumerable<Track> tracks)
0
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
29 {
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
30 foreach (var track in tracks)
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
31 {
135
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
32 switch (track.Accion)
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
33 {
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
34 case Accion.Agendar:
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
35 PublicarAccionAgendar(track);
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
36 break;
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
37 case Accion.Cancelar:
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
38 PublicarAccionCancelar(track);
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
39 break;
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
40 }
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
41 }
0
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
42 }
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
43
135
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
44 private void PublicarAccionCancelar(Track track)
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
45 {
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
46 string message;
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
47 var result= _adapter.DeleteEvent(track.Evento.Fecha.Value, track.Evento.Fecha.Value.AddHours(2), out message);
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
48 track.LogAdd(new TrackLog(TrackLogPropietario.Calendario, message, track.Usuario, result));
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
49 }
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
50
80156ae1493f Se agrega la eliminación de un evento cuando la acción sea Cancelar. Además se arregla la descripción de los eventos Alt.Net Café y Grupo de estudio debido a que los
alabra
parents: 130
diff changeset
51 private void PublicarAccionAgendar(Track track)
130
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
52 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
53 string message;
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
54 _gEventDetails[track.Evento.Tipo].Generate(track.Evento);
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
55 var result = _adapter.CreateEvent(_gEventDetails[track.Evento.Tipo], out message);
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
56 track.LogAdd(new TrackLog(TrackLogPropietario.Calendario, message, track.Usuario, result));
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
57 }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
58
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
59 public GooglePublicador()
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
60 : this(new GCalendarAdapter("VAN", GetUserName, GetPassword, GetCalendarId))
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
61 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
62 }
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
63
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
64 public GooglePublicador(IGCalendarAdapter gCalendarAdapter)
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
65 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
66 _adapter = gCalendarAdapter;
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
67
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
68 _gEventDetails = new Dictionary<TipoEvento, IGEventDetail>
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
69 {
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
70 {TipoEvento.Van, new VanGEventDetail()},
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
71 {TipoEvento.Cafe, new CafeGEventDetail()},
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
72 {TipoEvento.GrupoEstudio, new EstudioGEventDetail()}
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
73 };
0ea32a748453 Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents: 87
diff changeset
74 }
0
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
75 }
3f7dbb633b71 Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff changeset
76 }