VMware Tanzu GemFire Native C++ Reference  10.1.5
RegionEntry.hpp
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #pragma once
19 
20 #ifndef GEODE_REGIONENTRY_H_
21 #define GEODE_REGIONENTRY_H_
22 
23 #include "CacheStatistics.hpp"
24 #include "CacheableKey.hpp"
25 #include "internal/geode_globals.hpp"
26 
31 namespace apache {
32 namespace geode {
33 namespace client {
34 
35 class RegionInternal;
36 class Region;
37 
51 class APACHE_GEODE_EXPORT RegionEntry {
52  public:
57  RegionEntry(const std::shared_ptr<Region>& region,
58  const std::shared_ptr<CacheableKey>& key,
59  const std::shared_ptr<Cacheable>& value);
60  virtual ~RegionEntry() noexcept;
61 
66  std::shared_ptr<CacheableKey> getKey();
67 
73  std::shared_ptr<Cacheable> getValue();
74 
79  std::shared_ptr<Region> getRegion();
80 
87  std::shared_ptr<CacheStatistics> getStatistics();
88 
96  bool isDestroyed() const;
97 
98  private:
99  std::shared_ptr<Region> m_region;
100  std::shared_ptr<CacheableKey> m_key;
101  std::shared_ptr<Cacheable> m_value;
102  std::shared_ptr<CacheStatistics> m_statistics;
103  bool m_destroyed;
104  friend class RegionInternal;
105 };
106 } // namespace client
107 } // namespace geode
108 } // namespace apache
109 
110 #endif // GEODE_REGIONENTRY_H_
CacheStatistics.hpp
CacheableKey.hpp
apache::geode::client::Serializable
This base class is the superclass of all user objects in the cache that can be serialized.
Definition: Serializable.hpp:53
apache::geode::client::CacheStatistics
Defines common statistical information for both the region and its entries.
Definition: CacheStatistics.hpp:48
apache::geode::client::CacheableKey
Represents a cacheable key.
Definition: CacheableKey.hpp:40
apache::geode::client::RegionEntry
An object in a Region that represents an entry, i.e., a key-value pair.
Definition: RegionEntry.hpp:51
apache::geode::client::Region
This class manages subregions and cached data.
Definition: Region.hpp:95
apache::geode::client::RegionEntry::RegionEntry
RegionEntry(const std::shared_ptr< Region > &region, const std::shared_ptr< CacheableKey > &key, const std::shared_ptr< Cacheable > &value)
constructors created by region

Apache Geode C++ Cache API Documentation