public override async Task <bool> IsAvailableAsync(ListItem item) { IMediaItemListItem mediaItem = item as IMediaItemListItem; if (mediaItem != null) { return(await _action.IsAvailableAsync(mediaItem.MediaItem)); } return(false); }
public override async Task <bool> ProcessAsync(ListItem item) { IMediaItemListItem mediaItem = item as IMediaItemListItem; if (mediaItem != null) { var result = await _action.ProcessAsync(mediaItem.MediaItem); if (result.Success) { if (result.Result != ContentDirectoryMessaging.MediaItemChangeType.None) { ContentDirectoryMessaging.SendMediaItemChangedMessage(mediaItem.MediaItem, result.Result); } return(true); } } return(false); }