2 * Copyright (C) 2014-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
9 #include "ResourceDirectory.h"
13 #include "filesystem/Directory.h"
14 #include "filesystem/ResourceFile.h"
15 #include "utils/URIUtils.h"
17 using namespace XFILE
;
19 CResourceDirectory::CResourceDirectory() = default;
21 CResourceDirectory::~CResourceDirectory() = default;
23 bool CResourceDirectory::GetDirectory(const CURL
& url
, CFileItemList
&items
)
25 const std::string
pathToUrl(url
.Get());
26 std::string translatedPath
;
27 if (!CResourceFile::TranslatePath(url
, translatedPath
))
30 if (CDirectory::GetDirectory(translatedPath
, items
, m_strFileMask
, m_flags
| DIR_FLAG_GET_HIDDEN
))
31 { // replace our paths as necessary
33 for (int i
= 0; i
< items
.Size(); i
++)
35 CFileItemPtr item
= items
[i
];
36 if (URIUtils::PathHasParent(item
->GetPath(), translatedPath
))
37 item
->SetPath(URIUtils::AddFileToFolder(pathToUrl
, item
->GetPath().substr(translatedPath
.size())));
46 std::string
CResourceDirectory::TranslatePath(const CURL
&url
)
48 std::string translatedPath
;
49 if (!CResourceFile::TranslatePath(url
, translatedPath
))
52 return translatedPath
;