C++  1.4.6
CloudBackend Software Development Kit - SDK API for C++
QueryResult.h
1 /*
2  Copyright © CloudBackend AB 2020 - 2022..
3 */
4 
5 
6 #ifndef INCLUDE_CBE_QUERY_RESULT_H_
7 #define INCLUDE_CBE_QUERY_RESULT_H_
8 
9 #include <string>
10 #include <vector>
11 #include <iostream>
12 
13 #include "CBE/Types.h"
14 #include "CBE/Item.h"
15 #include "CBE/Filter.h"
16 
17 namespace CBE {
18 
19  class QueryResult {
20  friend class DirectoryCache;
21  friend class CloudBackend;
22  public:
23  QueryResult();
24  // QueryResult(CBE::Filter f);
25  virtual ~QueryResult();
26 
28  // CBE::Filter filter;
29 
31  virtual CBE::Filter filter() const;
32 
40  virtual std::vector<CBE::ItemPtr> getItemsSnapshot();
41 
43  virtual uint64_t itemsLoaded();
44 
46  virtual uint64_t totalCount();
47 
49  virtual uint64_t objectsLoaded();
50 
52  virtual uint64_t containersLoaded();
53 
55  bool containsItem(uint64_t itemId);
56 
57  protected:
58 
60  std::vector<CBE::ItemPtr> items;
61 
63  void initItems();
64 
66  uint64_t _totalCount;
67 
68  std::vector< std::pair<uint64_t, uint64_t> > _loadedPages;
69 
70 
71  };
72 }
73 // namespace CBE
74 
75 #endif // INCLUDE_CBE_DIRECTORY_H_
CBE::QueryResult::items
std::vector< CBE::ItemPtr > items
Definition: QueryResult.h:60
CBE::QueryResult::containersLoaded
virtual uint64_t containersLoaded()
CBE::QueryResult::initItems
void initItems()
CBE::CloudBackend
Definition: CloudBackend.h:26
CBE::QueryResult::totalCount
virtual uint64_t totalCount()
total items in the cloud matching the query result. This may be more than loaded.
CBE::QueryResult::filter
virtual CBE::Filter filter() const
Filter can be used to see what has been loaded.
CBE::QueryResult::getItemsSnapshot
virtual std::vector< CBE::ItemPtr > getItemsSnapshot()
CBE::QueryResult::_totalCount
uint64_t _totalCount
Definition: QueryResult.h:66
CBE::QueryResult::containsItem
bool containsItem(uint64_t itemId)
CBE::Filter
Definition: Filter.h:28
CBE::QueryResult
Definition: QueryResult.h:19
CBE::QueryResult::objectsLoaded
virtual uint64_t objectsLoaded()
CBE::QueryResult::itemsLoaded
virtual uint64_t itemsLoaded()
items loaded in the queryResult.