Merge pull request #5095 from koying/fixdroidappcrash
[vuplus_xbmc] / xbmc / filesystem / RSSDirectory.h
1 /*
2  *      Copyright (C) 2005-2013 Team XBMC
3  *      http://xbmc.org
4  *
5  *  This Program is free software; you can redistribute it and/or modify
6  *  it under the terms of the GNU General Public License as published by
7  *  the Free Software Foundation; either version 2, or (at your option)
8  *  any later version.
9  *
10  *  This Program is distributed in the hope that it will be useful,
11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  *  GNU General Public License for more details.
14  *
15  *  You should have received a copy of the GNU General Public License
16  *  along with XBMC; see the file COPYING.  If not, see
17  *  <http://www.gnu.org/licenses/>.
18  *
19  */
20
21 #ifndef CRSSDIRECTORY_H_
22 #define CRSSDIRECTORY_H_
23
24 #include "IFileDirectory.h"
25 #include "FileItem.h"
26
27 namespace XFILE
28 {
29   class CRSSDirectory : public IFileDirectory
30   {
31   public:
32     CRSSDirectory();
33     virtual ~CRSSDirectory();
34     virtual bool GetDirectory(const CStdString& strPath, CFileItemList &items);
35     virtual bool Exists(const char* strPath);
36     virtual bool IsAllowed(const CStdString &strFile) const { return true; };
37     virtual bool ContainsFiles(const CStdString& strPath);
38     virtual DIR_CACHE_TYPE GetCacheType(const CStdString& strPath) const { return DIR_CACHE_ONCE; };
39   protected:
40     // key is path, value is cache invalidation date
41     static std::map<CStdString,CDateTime> m_cache;
42     static CCriticalSection m_section;
43   };
44 }
45
46 #endif /*CRSSDIRECTORY_H_*/