public ListEntry(IOnlineSource source, bool isBuiltIn)
            {
                _source   = source;
                IsBuiltIn = isBuiltIn;

                Id          = _source.Id;
                DisplayName = _source.DisplayName;
                Information = IsBuiltIn ? new OnlineSourceInformation(Id) : FileBasedOnlineSources.Instance.GetInformation(Id);
            }
Beispiel #2
0
        public void Initialize()
        {
            Watcher().Update += OnUpdate;
            Rescan();

            RecentInstance     = GetSource(RecentKey);
            FavouritesInstance = GetSource(FavouritesKey);
            HiddenInstance     = GetSource(HiddenKey);
        }
        public static void Register(IOnlineSource source)
        {
            if (Sources.ContainsKey(source.Id))
            {
                Logging.Warning($"Source “{source.Id}” already registered");
                return;
            }

            Sources[source.Id] = source;
        }
Beispiel #4
0
        public OnlineSourceWrapper([NotNull] IList <ServerEntry> list, [NotNull] IOnlineSource source)
        {
            _list   = list;
            _source = source;
            IsBackgroundLoadable = _source is IOnlineBackgroundSource;

            if (OptionWeakListening)
            {
                WeakEventManager <IOnlineSource, EventArgs> .AddHandler(_source, nameof(IOnlineSource.Obsolete), OnSourceObsolete);
            }
            else
            {
                _source.Obsolete += OnSourceObsolete;
            }
        }