Add serialization of CheckResponse object 41/24441/3
authorAdam Malinowski <a.malinowsk2@partner.samsung.com>
Mon, 14 Jul 2014 11:48:19 +0000 (13:48 +0200)
committerAdam Malinowski <a.malinowsk2@partner.samsung.com>
Wed, 16 Jul 2014 06:36:19 +0000 (08:36 +0200)
Change-Id: I78c0b69dd6502e3d1067f8e75da90324ff8d61da

src/common/protocol/ProtocolClient.cpp
src/common/protocol/ProtocolClient.h

index 9ad801d..d87d7e7 100644 (file)
@@ -134,4 +134,18 @@ void ProtocolClient::execute(RequestContextPtr context, CheckRequestPtr request)
     ProtocolFrameSerializer::finishSerialization(frame, context->responseQueue());
 }
 
+void ProtocolClient::execute(RequestContextPtr context, CheckResponsePtr response) {
+    ProtocolFramePtr frame = ProtocolFrameSerializer::startSerialization(response->sequenceNumber());
+
+    LOGD("Serializing CheckResponse: op [%d], policyType [%d], metadata <%s>",
+         (int)OpCheckPolicy, (int)response->m_resultRef.policyType(),
+         response->m_resultRef.metadata().c_str());
+
+    ProtocolSerialization::serialize(*frame, OpCheckPolicy);
+    ProtocolSerialization::serialize(*frame, response->m_resultRef.policyType());
+    ProtocolSerialization::serialize(*frame, response->m_resultRef.metadata());
+
+    ProtocolFrameSerializer::finishSerialization(frame, context->responseQueue());
+}
+
 } // namespace Cynara
index 5f20547..408b0a6 100644 (file)
@@ -42,6 +42,7 @@ public:
     virtual ResponsePtr extractResponseFromBuffer(BinaryQueue &bufferQueue);
 
     virtual void execute(RequestContextPtr context, CheckRequestPtr request);
+    virtual void execute(RequestContextPtr context, CheckResponsePtr response);
 
 private:
     RequestPtr deserializeCheckRequest(ProtocolFrameHeader &frame);