public Task <UpdatedPostBusinessObjectMediaVM> ObjectMediaUpdatePostBusinessAsync(IFormFile File, Guid objectId, string objectType, string mediaType) { try { Logger.LogWarning("UpdatePostBusiness Object Media"); Task <Media> mediaCreated = _mediaLogic.CreateMediaAsync(File); //Task.WaitAll(mediaCreated); UpdatedPostBusinessObjectMediaVM objectMediaUpdatedInfo = new UpdatedPostBusinessObjectMediaVM(); if (mediaCreated.Result.Id != null && mediaCreated.Result.Name != null && mediaCreated.Result.Size > 0) { ObjectMedia objectMediaInfo = _uow.GetRepository <ObjectMedia>() .GetByFilter(om => om.ObjectId == objectId && om.ObjectType == objectType && om.MediaType == mediaType) .FirstOrDefault(); if (objectMediaInfo != null) { objectMediaInfo.MediaId = mediaCreated.Result.Id; _uow.GetRepository <ObjectMedia>().Update(objectMediaInfo); _uow.SaveChanges(); objectMediaUpdatedInfo = new UpdatedPostBusinessObjectMediaVM(objectMediaInfo); } } objectMediaUpdatedInfo.MediaInfo = mediaCreated.Result; return(Task.FromResult(objectMediaUpdatedInfo)); } catch (Exception ex) { Logger.LogError(ex.Message.ToString()); throw ex; } }
public async Task <ObjectMedia> CreateObjectMediaAsync(IFormFile File, Guid objectId, string objectType, string mediaType) { try { Logger.LogWarning("Create Object Media"); // Created Media Task <Media> mediaCreated = _mediaLogic.CreateMediaAsync(File); Task.WaitAll(mediaCreated); ObjectMedia objectMedia = new ObjectMedia { MediaId = mediaCreated.Result.Id, ObjectId = objectId, ObjectType = objectType, MediaType = mediaType }; await _uow.GetRepository <ObjectMedia>().AddAsync(objectMedia); return(objectMedia); } catch (Exception ex) { Logger.LogError(ex.Message.ToString()); throw ex; } }
public UpdatedPostBusinessObjectMediaVM(ObjectMedia objectMedia) { Id = objectMedia.Id; ObjectId = objectMedia.ObjectId; MediaId = objectMedia.MediaId; MediaType = objectMedia.MediaType; ObjectType = objectMedia.ObjectType; }
public ObjectMedia AddMediaTag(Media media, Guid onObjectID) { var alreadyTagged = media.ObjectMedias.Where(om => om.OnOjectID == onObjectID).Count() > 0; if (media.AddedByUserID != CfIdentity.UserID & !CfPrincipal.IsGod()) { throw new AccessViolationException("Cannot tag media that was not added by you"); } if (alreadyTagged) { throw new AccessViolationException("Cannot tag media that already has tag with objID " + onObjectID); } var tag = new ObjectMedia() { MediaID = media.ID, OnOjectID = onObjectID }; medRepo.AddMediaTag(tag); return(tag); }
public void RemoveMediaTag(ObjectMedia tag) { Ctx.ObjectMedias.DeleteObject(tag); SaveChanges(); }
public void AddMediaTag(ObjectMedia tag) { Ctx.ObjectMedias.AddObject(tag); SaveChanges(); }