BPicture: Fix archive constructor.
[haiku.git] / src / add-ons / kernel / file_systems / nfs4 / RequestInterpreter.h
bloba17f2cebd78734265f49f4a9b1391cae7a508903
1 /*
2 * Copyright 2012 Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
5 * Authors:
6 * Paweł Dziepak, pdziepak@quarnos.org
7 */
8 #ifndef REQUESTINTERPRETER_H
9 #define REQUESTINTERPRETER_H
12 #include <SupportDefs.h>
14 #include "FileInfo.h"
15 #include "NFS4Defs.h"
16 #include "RPCCallbackRequest.h"
19 class RequestInterpreter {
20 public:
21 RequestInterpreter(RPC::CallbackRequest* request);
22 ~RequestInterpreter();
24 inline uint32 OperationCount();
25 inline uint32 Operation();
27 status_t GetAttr(FileHandle* handle, int* mask);
28 status_t Recall(FileHandle* handle, bool& truncate,
29 uint32* stateSeq, uint32* stateID);
31 private:
32 uint32 fOperationCount;
33 uint32 fLastOperation;
35 RPC::CallbackRequest* fRequest;
39 inline uint32
40 RequestInterpreter::OperationCount()
42 return fOperationCount;
46 inline uint32
47 RequestInterpreter::Operation()
49 fLastOperation = fRequest->Stream().GetUInt();
50 return fLastOperation;
54 #endif // REQUESTINTERPRETER_H