protected override async Task AfterSaveAsync(Core.Posts.Entities.Post <string> domainModel,
                                                     PropertyChange[] changes         = null,
                                                     PostRequestItem <string> request = null)
        {
            await base.AfterSaveAsync(domainModel, changes, request);

            await _publisher.PublishOrDeleteAsync(domainModel, changes);
        }
        protected override async Task <Posts.Entities.Post <TUserPk> > MapDomainModelAsync(
            PostRequestItem <TUserPk> restModel, Posts.Entities.Post <TUserPk> domainModel = null)
        {
            domainModel = await base.MapDomainModelAsync(restModel, domainModel);

            if (domainModel.AuthorId == null)
            {
                domainModel.AuthorId = _currentUserProvider.CurrentUser.Id;
            }

            return(domainModel);
        }
 public override Task <ActionResult <Post <TUserPk> > > UpdateAsync(Guid id, PostRequestItem <TUserPk> item)
 {
     return(base.UpdateAsync(id, item));
 }
 public override Task <ActionResult <Post <TUserPk> > > AddAsync(PostRequestItem <TUserPk> item)
 {
     return(base.AddAsync(item));
 }