private void CleanPublications()
{
lock (this)
{
var newPublications = new List<IPublication>();
foreach (IPublication publication in this.publications)
{
if (publication.Publisher != null)
{
newPublications.Add(publication);
}
else
{
publication.Dispose();
}
}
this.publications = newPublications;
}
}