Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Blog/Impl/BlogPublicador.cs @ 299:8522d6a25888
Domain, Patrocinador: Eliminando referencias.
author | juanjose.montesdeocaarbos |
---|---|
date | Mon, 27 Feb 2012 13:14:57 -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)); } } } } }