public LoginUserMylistProvider(
     NiconicoSession niconicoSession,
     NicoVideoProvider nicoVideoProvider,
     LoginUserMylistItemIdRepository loginUserMylistItemIdRepository
     )
     : base(niconicoSession)
 {
     _nicoVideoProvider = nicoVideoProvider;
     _loginUserMylistItemIdRepository = loginUserMylistItemIdRepository;
 }
        public LoginUserOwnedMylistManager(
            ILoggerFactory loggerFactory,
            NiconicoSession niconicoSession,
            LoginUserMylistProvider loginUserMylistProvider,
            NotificationService notificationService,
            LoginUserMylistItemIdRepository loginUserMylistItemIdRepository
            )
        {
            _logger                          = loggerFactory.CreateLogger <LoginUserOwnedMylistManager>();
            _niconicoSession                 = niconicoSession;
            _loginUserMylistProvider         = loginUserMylistProvider;
            _notificationService             = notificationService;
            _loginUserMylistItemIdRepository = loginUserMylistItemIdRepository;
            _mylists                         = new ObservableCollection <LoginUserMylistPlaylist>();
            Mylists                          = new ReadOnlyObservableCollection <LoginUserMylistPlaylist>(_mylists);

            _niconicoSession.LogIn += async(_, e) =>
            {
                _loginUserMylistItemIdRepository.Clear();

                try
                {
                    using (await _mylistSyncLock.LockAsync(default))