Пример #1
0
        private void RiseItemPublished(object sender, PublishedItem e)
        {
            e.Publisher = sender as Publisher;

            var temp = System.Threading.Volatile.Read(ref ItemPublished);

            ItemPublished?.Invoke(sender, e);

            exportRepository?.Add(e);
        }
Пример #2
0
        public async Task <bool> RemovePublishedAsync(PublishedItem publishedItem)
        {
            if (!CanPublishSubjects)
            {
                throw new InvalidOperationException("The database of exported items is not available");
            }

            if (!await publishedItem.Publisher?.RemoveAsync(publishedItem))
            {
                return(false);
            }

            exportRepository?.RemoveAsync(publishedItem);

            await exportRepository?.SaveChangesAsync();

            return(true);
        }
Пример #3
0
        protected virtual void OnItemPublished(PublishedItem e)
        {
            var temp = System.Threading.Volatile.Read(ref ItemPublished);

            ItemPublished?.Invoke(this, e);
        }
Пример #4
0
 internal protected abstract Task <bool> RemoveAsync(PublishedItem publishedItem);