File indexing completed on 2024-04-28 05:11:01
0001 /* 0002 This file is part of Akregator. 0003 0004 SPDX-FileCopyrightText: 2005 Frank Osterfeld <osterfeld@kde.org> 0005 0006 SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0 0007 */ 0008 0009 #include "kernel.h" 0010 0011 #include "feedlist.h" 0012 #include "fetchqueue.h" 0013 #include "framemanager.h" 0014 #ifdef WITH_KUSERFEEDBACK 0015 #include "userfeedback/userfeedbackmanager.h" 0016 #endif 0017 0018 using namespace Akregator; 0019 0020 Kernel *Kernel::m_self = nullptr; 0021 0022 Kernel *Kernel::self() 0023 { 0024 static Kernel self; 0025 if (!m_self) { 0026 m_self = &self; 0027 } 0028 return m_self; 0029 } 0030 0031 Kernel::Kernel() 0032 { 0033 m_fetchQueue = new FetchQueue(); 0034 m_frameManager = new FrameManager(); 0035 m_storage = nullptr; 0036 #ifdef WITH_KUSERFEEDBACK 0037 // Initialize 0038 (void)UserFeedBackManager::self(); 0039 #endif 0040 } 0041 0042 Kernel::~Kernel() 0043 { 0044 delete m_fetchQueue; 0045 delete m_frameManager; 0046 } 0047 0048 Backend::Storage *Kernel::storage() 0049 { 0050 return m_storage; 0051 } 0052 0053 void Kernel::setStorage(Backend::Storage *storage) 0054 { 0055 m_storage = storage; 0056 } 0057 0058 QSharedPointer<FeedList> Kernel::feedList() const 0059 { 0060 return m_feedList; 0061 } 0062 0063 void Kernel::setFeedList(const QSharedPointer<FeedList> &feedList) 0064 { 0065 m_feedList = feedList; 0066 } 0067 0068 FetchQueue *Kernel::fetchQueue() const 0069 { 0070 return m_fetchQueue; 0071 } 0072 0073 FrameManager *Kernel::frameManager() const 0074 { 0075 return m_frameManager; 0076 }