Hazelcast C++ Client
MapEvent.h
1 /*
2  * Copyright (c) 2008-2019, Hazelcast, Inc. All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 //
17 // Created by sancar koyunlu on 04/09/14.
18 //
19 
20 
21 #ifndef HAZELCAST_MapEvent
22 #define HAZELCAST_MapEvent
23 
24 #include "hazelcast/util/HazelcastDll.h"
25 #include "hazelcast/client/Member.h"
26 #include "hazelcast/client/EntryEvent.h"
27 #include <string>
28 #include <ostream>
29 
30 #if defined(WIN32) || defined(_WIN32) || defined(WIN64) || defined(_WIN64)
31 #pragma warning(push)
32 #pragma warning(disable: 4251) //for dll export
33 #endif
34 
35 namespace hazelcast {
36  namespace client {
40  class HAZELCAST_API MapEvent {
41  public:
45  MapEvent(const Member& member, EntryEventType eventType, const std::string& name, int numberOfEntriesAffected);
46 
52  Member getMember() const;
53 
59  EntryEventType getEventType() const;
60 
66  const std::string& getName() const;
67 
73  int getNumberOfEntriesAffected() const;
74 
75  friend std::ostream HAZELCAST_API &operator<<(std::ostream &os, const MapEvent &event);
76 
77  private:
78  Member member;
79  EntryEventType eventType;
80  std::string name;
81  int numberOfEntriesAffected;
82  };
83  }
84 }
85 
86 #if defined(WIN32) || defined(_WIN32) || defined(WIN64) || defined(_WIN64)
87 #pragma warning(pop)
88 #endif
89 
90 #endif //HAZELCAST_MapEvent
Map events common contract.
Definition: MapEvent.h:40
Cluster member class.
Definition: Member.h:43
PN (Positive-Negative) CRDT counter.
Definition: MapEntryView.h:32
Type of entry event.
Definition: EntryEvent.h:37