annotate Agendas/trunk/src/Agendas.Blog/Impl/BlogPublicador.cs @ 298:9bc60d166c8a

Se corrigieron los tests por el cambio de Patrocinador, para que no persista el logo en disco. Se comentó el código de PatrocinadorApiController, que no se utiliza.
author juanjose.montesdeocaarbos
date Sun, 19 Feb 2012 16:00:38 -0300
parents 2a336a6a76b5
children
rev   line source
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
1 using System;
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
2 using System.Collections.Generic;
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
3 using System.Linq;
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
4 using AltNetHispano.Agendas.Configurations;
87
26d0513a8410 A los publicadores les llega la lista de tracks producidos en la acción realizada
nelopauselli
parents: 65
diff changeset
5 using AltNetHispano.Agendas.Domain;
65
ebce59b45b50 Agregado de version inicial del publicador para el blog
ROWIES@ardejorxp.inworx.corp
parents:
diff changeset
6
ebce59b45b50 Agregado de version inicial del publicador para el blog
ROWIES@ardejorxp.inworx.corp
parents:
diff changeset
7 namespace Agendas.Blog.Impl
ebce59b45b50 Agregado de version inicial del publicador para el blog
ROWIES@ardejorxp.inworx.corp
parents:
diff changeset
8 {
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
9 public class BlogPublicador : IPublicador
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
10 {
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
11 private readonly IPostWriterFactory _postWriterFactory;
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
12
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
13 public BlogPublicador()
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
14 : this(
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
15 new PostWriterFactory(
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
16 new PostWriterWebServiceAdapter(
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
17 new BlogPublicadorConfig(AgendasConfigurationManager.Publicadores.Blog.Writer.PostWriterServiceUrl,
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
18 AgendasConfigurationManager.Publicadores.Blog.Writer.BlogName,
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
19 AgendasConfigurationManager.Publicadores.Blog.Writer.BlogWriterMasterKey))))
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
20 {
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
21 }
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
22
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
23 public BlogPublicador(IPostWriterFactory postWriterFactory)
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
24 {
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
25 _postWriterFactory = postWriterFactory;
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
26 }
65
ebce59b45b50 Agregado de version inicial del publicador para el blog
ROWIES@ardejorxp.inworx.corp
parents:
diff changeset
27
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
28 public void Publicar(IEnumerable<Track> tracks)
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
29 {
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
30 if (!AgendasConfigurationManager.Publicadores.Blog.Enabled) return;
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
31
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
32 foreach (var track in tracks)
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
33 {
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
34 if (track.Logs.Any(l => l.Propietario == TrackLogPropietario.Blog && l.Successful)) continue;
65
ebce59b45b50 Agregado de version inicial del publicador para el blog
ROWIES@ardejorxp.inworx.corp
parents:
diff changeset
35
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
36 try
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
37 {
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
38 _postWriterFactory.GetPostWriter(track.Accion).WritePost(track);
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
39 track.LogAdd(new TrackLog(TrackLogPropietario.Blog, string.Empty, track.Usuario, true));
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
40 }
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
41 catch (Exception ex)
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
42 {
184
2a336a6a76b5 Agregando log al track cuando fallan los publicadores
nelopauselli
parents: 158
diff changeset
43 track.LogAdd(new TrackLog(TrackLogPropietario.Blog, track.Usuario, ex));
120
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
44 }
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
45 }
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
46 }
c3573defd18f Agregado de Fecha, Usuario y Successful en TrackLog
Jorge@Jorge-PC
parents: 105
diff changeset
47 }
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 120
diff changeset
48 }