Example #1
0
 /// <inheritdoc />
 public void Dispose()
 {
     _userDataManager.UserDataSaved  -= OnUserDataSaved;
     _sessionManager.PlaybackStart   -= KernelPlaybackStart;
     _sessionManager.PlaybackStopped -= KernelPlaybackStopped;
     _libraryManager.ItemAdded       -= LibraryManagerItemAdded;
     _libraryManager.ItemRemoved     -= LibraryManagerItemRemoved;
     _traktApi = null;
     _libraryManagerEventsHelper = null;
 }
 /// <summary>
 ///
 /// </summary>
 public void Dispose()
 {
     _sessionManager.PlaybackStart    -= KernelPlaybackStart;
     _sessionManager.PlaybackProgress -= KernelPlaybackProgress;
     _sessionManager.PlaybackStopped  -= KernelPlaybackStopped;
     _libraryManager.ItemAdded        -= LibraryManagerItemAdded;
     _libraryManager.ItemRemoved      -= LibraryManagerItemRemoved;
     _service  = null;
     _traktApi = null;
     _libraryManagerEventsHelper = null;
 }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="jsonSerializer"></param>
        /// <param name="sessionManager"> </param>
        /// <param name="userDataManager"></param>
        /// <param name="libraryManager"> </param>
        /// <param name="logger"></param>
        /// <param name="httpClient"></param>
        /// <param name="appHost"></param>
        /// <param name="fileSystem"></param>
        public ServerMediator(IJsonSerializer jsonSerializer, ISessionManager sessionManager, IUserDataManager userDataManager, ILibraryManager libraryManager, ILogManager logger, IHttpClient httpClient, IServerApplicationHost appHost, IFileSystem fileSystem, ITimerFactory timerFactory)
        {
            Instance         = this;
            _sessionManager  = sessionManager;
            _libraryManager  = libraryManager;
            _userDataManager = userDataManager;
            _logger          = logger.GetLogger("Trakt");

            _traktApi = new TraktApi(jsonSerializer, _logger, httpClient, appHost, userDataManager, fileSystem);
            _service  = new TraktUriService(_traktApi, _logger, _libraryManager);
            _libraryManagerEventsHelper  = new LibraryManagerEventsHelper(_logger, _traktApi, timerFactory);
            _userDataManagerEventsHelper = new UserDataManagerEventsHelper(_logger, _traktApi, timerFactory);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="httpClient"></param>
        /// <param name="jsonSerializer"></param>
        /// <param name="userManager"></param>
        /// <param name="sessionManager"> </param>
        /// <param name="userDataRepository"></param>
        /// <param name="libraryManager"> </param>
        /// <param name="logger"></param>
        public ServerMediator(IHttpClient httpClient, IJsonSerializer jsonSerializer, IUserManager userManager, ISessionManager sessionManager, IUserDataRepository userDataRepository, ILibraryManager libraryManager, ILogger logger)
        {
            _jsonSerializer     = jsonSerializer;
            _httpClient         = httpClient;
            _userManager        = userManager;
            _sessionManager     = sessionManager;
            _userDataRepository = userDataRepository;
            _libraryManager     = libraryManager;
            _logger             = logger;

            _traktApi = new TraktApi(_httpClient, _jsonSerializer, _logger);
            _service  = new TraktUriService(_traktApi, _userManager);
            _libraryManagerEventsHelper = new LibraryManagerEventsHelper(_logger, _traktApi);
        }
Example #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="jsonSerializer"></param>
        /// <param name="sessionManager"> </param>
        /// <param name="userDataManager"></param>
        /// <param name="libraryManager"> </param>
        /// <param name="logger"></param>
        /// <param name="httpClient"></param>
        /// <param name="appHost"></param>
        /// <param name="fileSystem"></param>
        public ServerMediator(IJsonSerializer jsonSerializer, ISessionManager sessionManager, IUserDataManager userDataManager, ILibraryManager libraryManager, ILogManager logger, IHttpClient httpClient, IServerApplicationHost appHost, IFileSystem fileSystem)
        {
            Instance        = this;
            _sessionManager = sessionManager;
            _libraryManager = libraryManager;
            _logger         = logger.GetLogger("Trakt");

            _traktApi = new TraktApi(jsonSerializer, _logger, httpClient, appHost, userDataManager, fileSystem);
            _service  = new TraktUriService(_traktApi, _logger, _libraryManager);
            _libraryManagerEventsHelper  = new LibraryManagerEventsHelper(_logger, _traktApi);
            _progressEvents              = new List <ProgressEvent>();
            _userDataManagerEventsHelper = new UserDataManagerEventsHelper(_logger, _traktApi);

            userDataManager.UserDataSaved += _userDataManager_UserDataSaved;
        }
 protected virtual void Dispose(bool disposing)
 {
     if (disposing)
     {
         _userDataManager.UserDataSaved  -= OnUserDataSaved;
         _sessionManager.PlaybackStart   -= KernelPlaybackStart;
         _sessionManager.PlaybackStopped -= KernelPlaybackStopped;
         _libraryManager.ItemAdded       -= LibraryManagerItemAdded;
         _libraryManager.ItemRemoved     -= LibraryManagerItemRemoved;
         _traktApi = null;
         _libraryManagerEventsHelper.Dispose();
         _libraryManagerEventsHelper = null;
         _userDataManagerEventsHelper.Dispose();
     }
 }
Example #7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="jsonSerializer"></param>
        /// <param name="sessionManager"> </param>
        /// <param name="userDataManager"></param>
        /// <param name="libraryManager"> </param>
        /// <param name="logger"></param>
        /// <param name="httpClient"></param>
        /// <param name="appHost"></param>
        /// <param name="fileSystem"></param>
        public ServerMediator(
            IJsonSerializer jsonSerializer,
            ISessionManager sessionManager,
            IUserDataManager userDataManager,
            ILibraryManager libraryManager,
            ILoggerFactory logger,
            IHttpClient httpClient,
            IServerApplicationHost appHost,
            IFileSystem fileSystem)
        {
            _sessionManager  = sessionManager;
            _libraryManager  = libraryManager;
            _userDataManager = userDataManager;
            _logger          = logger.CreateLogger("Trakt");

            _traktApi = new TraktApi(jsonSerializer, _logger, httpClient, appHost, userDataManager, fileSystem);
            _libraryManagerEventsHelper  = new LibraryManagerEventsHelper(_logger, _traktApi);
            _userDataManagerEventsHelper = new UserDataManagerEventsHelper(_logger, _traktApi);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="sessionManager"> </param>
        /// <param name="userDataManager"></param>
        /// <param name="libraryManager"> </param>
        /// <param name="logger"></param>
        /// <param name="httpClient"></param>
        /// <param name="appHost"></param>
        /// <param name="fileSystem"></param>
        public ServerMediator(
            ISessionManager sessionManager,
            IUserDataManager userDataManager,
            ILibraryManager libraryManager,
            ILoggerFactory loggerFactory,
            IHttpClientFactory httpClientFactory,
            IServerApplicationHost appHost,
            IFileSystem fileSystem)
        {
            _sessionManager  = sessionManager;
            _libraryManager  = libraryManager;
            _userDataManager = userDataManager;

            _logger = loggerFactory.CreateLogger <ServerMediator>();

            _traktApi = new TraktApi(loggerFactory.CreateLogger <TraktApi>(), httpClientFactory, appHost, userDataManager, fileSystem);
            _libraryManagerEventsHelper  = new LibraryManagerEventsHelper(loggerFactory.CreateLogger <LibraryManagerEventsHelper>(), _traktApi);
            _userDataManagerEventsHelper = new UserDataManagerEventsHelper(loggerFactory.CreateLogger <UserDataManagerEventsHelper>(), _traktApi);
        }
Example #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="jsonSerializer"></param>
        /// <param name="sessionManager"> </param>
        /// <param name="userDataManager"></param>
        /// <param name="libraryManager"> </param>
        /// <param name="logger"></param>
        /// <param name="httpClient"></param>
        /// <param name="fileSystem"></param>
        public ServerMediator(IJsonSerializer jsonSerializer, ISessionManager sessionManager, IUserDataManager userDataManager,
                              ILibraryManager libraryManager, ILogManager logger, IHttpClient httpClient, IFileSystem fileSystem)
        {
            Instance         = this;
            _sessionManager  = sessionManager;
            _userDataManager = userDataManager;
            _libraryManager  = libraryManager;
            _logger          = logger.GetLogger("Trakt");
            _fileSystem      = fileSystem;

            _traktApi = new TraktApi(jsonSerializer, _logger, httpClient);
            _service  = new TraktUriService(_traktApi, _logger, _libraryManager);
            _libraryManagerEventsHelper  = new LibraryManagerEventsHelper(_logger, _fileSystem, _traktApi);
            _progressEvents              = new List <ProgressEvent>();
            _userDataManagerEventsHelper = new UserDataManagerEventsHelper(_logger, _traktApi);

            // TODO This should probably be elsewhere.
            UpdateUserRatingFormat();

            EnableUserDataSavedEventListener();
        }