#ifndef REQUESTSTORAGEDATAWORK_H_ #define REQUESTSTORAGEDATAWORK_H_ #include #include #include #include #include class StatsCollector; class RequestStorageDataWork : public Work { public: struct Result { std::shared_ptr node; StorageNodeDataContent data; HighResStatsList highResStatsList; StorageTargetInfoList storageTargetList; ClientOpsRequestor::IdOpsUnorderedMap ipOpsUnorderedMap; ClientOpsRequestor::IdOpsUnorderedMap userOpsUnorderedMap; }; RequestStorageDataWork(std::shared_ptr node, StatsCollector* statsCollector, bool collectClientOpsByNode, bool collectClientOpsByUser) : node(std::move(node)), statsCollector(statsCollector), collectClientOpsByNode(collectClientOpsByNode), collectClientOpsByUser(collectClientOpsByUser) {} void process(char* bufIn, unsigned bufInLen, char* bufOut, unsigned bufOutLen); private: std::shared_ptr node; StatsCollector* statsCollector; bool collectClientOpsByNode; bool collectClientOpsByUser; }; #endif /*REQUESTSTORAGEDATAWORK_H_*/