mirror of
				https://github.com/Telecominfraproject/wlan-cloud-lib-cppkafka.git
				synced 2025-10-31 02:27:46 +00:00 
			
		
		
		
	Use std::chrono::milliseconds for message timestamp
This commit is contained in:
		| @@ -32,6 +32,7 @@ | ||||
|  | ||||
| #include <memory> | ||||
| #include <cstdint> | ||||
| #include <chrono> | ||||
| #include <boost/optional.hpp> | ||||
| #include <librdkafka/rdkafka.h> | ||||
| #include "buffer.h" | ||||
| @@ -163,19 +164,19 @@ public: | ||||
|     /** | ||||
|      * Constructs a timestamp object | ||||
|      */ | ||||
|     MessageTimestamp(int64_t timestamp, TimestampType type); | ||||
|     MessageTimestamp(std::chrono::milliseconds timestamp, TimestampType type); | ||||
|  | ||||
|     /** | ||||
|      * Gets the timestamp value | ||||
|      */ | ||||
|     int64_t get_timestamp() const; | ||||
|     std::chrono::milliseconds get_timestamp() const; | ||||
|  | ||||
|     /** | ||||
|      * Gets the timestamp type | ||||
|      */ | ||||
|     TimestampType get_type() const; | ||||
| private: | ||||
|     int64_t timestamp_; | ||||
|     std::chrono::milliseconds timestamp_; | ||||
|     TimestampType type_; | ||||
| }; | ||||
|  | ||||
|   | ||||
| @@ -31,6 +31,8 @@ | ||||
|  | ||||
| using std::string; | ||||
|  | ||||
| using std::chrono::milliseconds; | ||||
|  | ||||
| using boost::optional; | ||||
| using boost::none_t; | ||||
|  | ||||
| @@ -104,7 +106,8 @@ optional<MessageTimestamp> Message::get_timestamp() const { | ||||
|     if (timestamp == -1 || type == RD_KAFKA_TIMESTAMP_NOT_AVAILABLE) { | ||||
|         return {}; | ||||
|     } | ||||
|     return MessageTimestamp(timestamp, static_cast<MessageTimestamp::TimestampType>(type)); | ||||
|     return MessageTimestamp(milliseconds(timestamp), | ||||
|                             static_cast<MessageTimestamp::TimestampType>(type)); | ||||
| } | ||||
|  | ||||
| Message::operator bool() const { | ||||
| @@ -117,12 +120,12 @@ rd_kafka_message_t* Message::get_handle() const { | ||||
|  | ||||
| // MessageTimestamp | ||||
|  | ||||
| MessageTimestamp::MessageTimestamp(int64_t timestamp, TimestampType type) | ||||
| MessageTimestamp::MessageTimestamp(milliseconds timestamp, TimestampType type) | ||||
| : timestamp_(timestamp), type_(type) { | ||||
|  | ||||
| } | ||||
|  | ||||
| int64_t MessageTimestamp::get_timestamp() const { | ||||
| milliseconds MessageTimestamp::get_timestamp() const { | ||||
|     return timestamp_; | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Matias Fontanini
					Matias Fontanini