/// <summary>
        /// Deletes media from Cloud storage that was previously associated with item
        /// </summary>
        /// <param name="args"></param>
        public void Process(AttachArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (!args.MediaItem.FileBased)
            {
                return;
            }

            _logManager.LogAudit("Deleting '{0}' from Cloud storage".FormatWith(args.MediaItem.FilePath), GetType());

            PipelineHelper.AddContainerNameToArgs(args, GetContainerNameFromFilePath(args.MediaItem.FilePath));
            _cloudStorage.Delete(args.MediaItem);
        }
        public void Process(UploadArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (args.Destination != UploadDestination.Database)
            {
                return;
            }

            var containerName = GetContainerName(args.Folder);

            if (string.IsNullOrEmpty(containerName))
            {
                return;
            }

            args.Destination = UploadDestination.File;
            PipelineHelper.AddContainerNameToArgs(args, containerName);
        }