All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
BuildingFootprintResourceStore.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "BuildingFootprints.h"
6 #include "Streaming.h"
7 
8 #include <string>
9 
10 namespace Eegeo
11 {
12  namespace BuildingFootprints
13  {
15  {
16  public:
17  BuildingFootprintResourceStore(const std::string& serverBaseUrl,
18  const std::string& featureRelativePath,
19  const std::string& resourceName,
20  const std::string& resourceExtension,
21  const std::string& authPolicy,
22  const std::string& authSignature,
23  const std::string& authKeyPairId
24  )
25  : m_serverBaseUrl(serverBaseUrl)
26  , m_featureRelativePath(featureRelativePath)
27  , m_resourceName(resourceName)
28  , m_resourceExtension(resourceExtension)
29  , m_authPolicy(authPolicy)
30  , m_authSignature(authSignature)
31  , m_authKeyPairId(authKeyPairId)
32  {}
33 
34  std::string UrlFor(const Eegeo::Streaming::MortonKey& key, const std::string& storePrefix) const;
35 
36  private:
37  std::string AuthQueryString() const;
38 
39  const std::string m_serverBaseUrl;
40  const std::string m_featureRelativePath;
41  const std::string m_resourceName;
42  const std::string m_resourceExtension;
43 
44  const std::string m_authPolicy;
45  const std::string m_authSignature;
46  const std::string m_authKeyPairId;
47  };
48  }
49 }