4 #include "IInteriorMetaDataService.h"
8 #include "WebLoadRequestCompletionCallback.h"
11 #include <unordered_map>
27 const std::string& indoorMapsApiBaseUrl,
36 bool Exists(
const std::string& indoorMapId)
const override;
38 void Request(
const std::string& indoorMapId)
override;
40 bool IsRequesting(
const std::string& indoorMapId)
const override;
42 bool TryRemove(
const std::string& indoorMapId)
override;
44 bool TryGetUserData(
const std::string& indoorMapId, std::string& out_userData)
const override;
46 bool TryGetAccessPermission(
const std::string& indoorMapId, AccessPermission::Type& out_accessPermission)
const override;
48 bool TryGetLocation(
const std::string& indoorMapId,
Space::LatLong& out_location)
const override;
58 typedef std::unordered_map<Web::TWebRequestId, Web::IWebLoadRequest*> TIdToWebLoadRequest;
61 void FetchInteriorMetaData(
const std::string& indoorMapId);
62 void CleanUpRequest(
const Web::TWebRequestId webRequestId);
64 void OnInteriorMetaDataModelEvicted(
const std::string& indoorMapId);
67 void Delete(
const std::string& indoorMapId);
68 TIdToWebLoadRequest::const_iterator FindPendingRequestForIndoorMapId(
const std::string& indoorMapId)
const;
72 const std::string m_indoorMapsApiBaseUrl;
79 TIdToWebLoadRequest m_pendingWebRequests;
80 std::unordered_map<std::string, InteriorMetaDataModel*> m_store;