1// SingleReplyRequestHandler.cpp 2 3#include "SingleReplyRequestHandler.h" 4 5#include "Compatibility.h" 6#include "Debug.h" 7#include "Request.h" 8 9// constructor 10SingleReplyRequestHandler::SingleReplyRequestHandler() 11 : RequestHandler(), 12 fAcceptAnyRequest(true), 13 fExpectedReply(0) 14{ 15} 16 17// constructor 18SingleReplyRequestHandler::SingleReplyRequestHandler(uint32 expectedReply) 19 : RequestHandler(), 20 fAcceptAnyRequest(false), 21 fExpectedReply(expectedReply) 22{ 23} 24 25// HandleRequest 26status_t 27SingleReplyRequestHandler::HandleRequest(Request* request) 28{ 29 if (!fAcceptAnyRequest && request->GetType() != fExpectedReply) { 30 PRINT(("SingleReplyRequestHandler::HandleRequest(): unexpected " 31 "request: %" B_PRIu32 " expected was: %" B_PRIu32 "\n", 32 request->GetType(), fExpectedReply)); 33#if USER 34 debugger("SingleReplyRequestHandler::HandleRequest(): unexpected " 35 "request!"); 36#endif 37 return B_BAD_DATA; 38 } 39 fDone = true; 40 return B_OK; 41} 42 43