| #include "zmq.hpp" |
| #include "TZmqServer.h" |
| #include "Storage.h" |
| |
| using boost::shared_ptr; |
| using apache::thrift::TProcessor; |
| using apache::thrift::server::TZmqServer; |
| using apache::thrift::server::TZmqMultiServer; |
| |
| class StorageHandler : virtual public StorageIf { |
| public: |
| StorageHandler() |
| : value_(0) |
| {} |
| |
| void incr(const int32_t amount) { |
| value_ += amount; |
| printf("value_: %i\n", value_) ; |
| } |
| |
| int32_t get() { |
| return value_; |
| } |
| |
| private: |
| int32_t value_; |
| |
| }; |
| |
| |
| int main(int argc, char *argv[]) { |
| shared_ptr<StorageHandler> handler(new StorageHandler()); |
| shared_ptr<TProcessor> processor(new StorageProcessor(handler)); |
| |
| zmq::context_t ctx(1); |
| TZmqServer oneway_server(processor, ctx, "epgm://eth0;239.192.1.1:5555", ZMQ_SUB); |
| oneway_server.serve(); |
| |
| return 0; |
| } |