Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Blog/Impl/BlogPublicador.cs @ 254:478656b70afb
Tag deploy 2011-10-07 v1.0.3 para conjunto de cambios 7cf64cd790ab añadido
author | Administrador@DESA-WIN-002.cpe.telecentro.net.ar |
---|---|
date | Mon, 17 Oct 2011 07:41:32 -0300 |
parents | 2a336a6a76b5 |
children |
line wrap: on
line source
using System; using System.Collections.Generic; using System.Linq; using AltNetHispano.Agendas.Configurations; using AltNetHispano.Agendas.Domain; namespace Agendas.Blog.Impl { public class BlogPublicador : IPublicador { private readonly IPostWriterFactory _postWriterFactory; public BlogPublicador() : this( new PostWriterFactory( new PostWriterWebServiceAdapter( new BlogPublicadorConfig(AgendasConfigurationManager.Publicadores.Blog.Writer.PostWriterServiceUrl, AgendasConfigurationManager.Publicadores.Blog.Writer.BlogName, AgendasConfigurationManager.Publicadores.Blog.Writer.BlogWriterMasterKey)))) { } public BlogPublicador(IPostWriterFactory postWriterFactory) { _postWriterFactory = postWriterFactory; } public void Publicar(IEnumerable<Track> tracks) { if (!AgendasConfigurationManager.Publicadores.Blog.Enabled) return; foreach (var track in tracks) { if (track.Logs.Any(l => l.Propietario == TrackLogPropietario.Blog && l.Successful)) continue; 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, track.Usuario, ex)); } } } } }