Mercurial > altnet-hispano
annotate Agendas/trunk/src/Agendas.Google/GooglePublicador.cs @ 130:0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
author | alabra |
---|---|
date | Sun, 10 Jul 2011 18:50:11 -0400 |
parents | 26d0513a8410 |
children | 80156ae1493f |
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 { |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
32 if (track.Accion == Accion.Agendar) |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
33 PublicarAccionAgendar(track); |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
34 } |
0
3f7dbb633b71
Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff
changeset
|
35 } |
130
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
36 |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
37 private void PublicarAccionAgendar(Track track) |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
38 { |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
39 string message; |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
40 _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
|
41 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
|
42 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
|
43 } |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
44 |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
45 public GooglePublicador() |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
46 : 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
|
47 { |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
48 } |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
49 |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
50 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
|
51 { |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
52 _adapter = gCalendarAdapter; |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
53 |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
54 _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
|
55 { |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
56 {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
|
57 {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
|
58 {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
|
59 }; |
0ea32a748453
Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
alabra
parents:
87
diff
changeset
|
60 } |
0
3f7dbb633b71
Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff
changeset
|
61 } |
3f7dbb633b71
Test sobre la publicación de Eventos al registrarlos en la Agenda
nelopauselli
parents:
diff
changeset
|
62 } |