Mercurial > altnet-hispano
diff Agendas/trunk/src/Agendas.Blog/Impl/BlogPublicador.cs @ 120:c3573defd18f
Agregado de Fecha, Usuario y Successful en TrackLog
Modificacion de publicador de blog para usar TrackLog
Agregado de TrackLog en el test de crud de eventos
Fix en publicador de twitter para que no twitee si ya se encuentra en TrackLog pero con Successful en true
author | Jorge@Jorge-PC |
---|---|
date | Fri, 24 Jun 2011 21:18:21 -0300 |
parents | 1d820f17fc75 |
children | 1e47bf408073 734d3f0853bf |
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Blog/Impl/BlogPublicador.cs Sat Jun 11 12:50:44 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Blog/Impl/BlogPublicador.cs Fri Jun 24 21:18:21 2011 -0300 @@ -1,21 +1,35 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; +using System.Linq; using AltNetHispano.Agendas.Domain; namespace Agendas.Blog.Impl { - public class BlogPublicador : IPublicador - { - private readonly IPostWriterFactory _postWriterFactory; + public class BlogPublicador : IPublicador + { + private readonly IPostWriterFactory _postWriterFactory; + + public BlogPublicador(IPostWriterFactory postWriterFactory) + { + _postWriterFactory = postWriterFactory; + } - public BlogPublicador(IPostWriterFactory postWriterFactory) - { - _postWriterFactory = postWriterFactory; - } + public void Publicar(IEnumerable<Track> tracks) + { + foreach (var track in tracks) + { + if (track.Logs.Any(l => l.Propietario == TrackLogPropietario.Blog && l.Successful)) continue; - public void Publicar(IEnumerable<Track> tracks) - { - foreach (var track in tracks) - _postWriterFactory.GetPostWriter(track.Accion).WritePost(track); - } - } + try + { + _postWriterFactory.GetPostWriter(track.Accion).WritePost(track); + track.LogAdd(new TrackLog(TrackLogPropietario.Blog, string.Empty, track.Usuario, true)); + } + catch (Exception ex) + { + track.LogAdd(new TrackLog(TrackLogPropietario.Blog, ex.Message, track.Usuario, false)); + } + } + } + } }