#ifndef SERVER_ABSTRACT_REQUEST_HANDLER_HH_
#define SERVER_ABSTRACT_REQUEST_HANDLER_HH_
+#include "abstract_parcelable.hh"
+
#include <string>
#include <sys/types.h>
class EXPORT_API AbstractRequestHandler {
public:
virtual ~AbstractRequestHandler() = default;
- virtual bool HandleRequest(unsigned char* data, int size,
+ virtual bool HandleRequest(unsigned char* data, size_t size,
const std::string& locale) = 0;
- virtual std::vector<uint8_t> ExtractResult() = 0;
+ virtual tizen_base::Parcel ExtractResult();
virtual void PreExec();
virtual void PostExec();
void SetPID(pid_t pid);
+ void SetUID(uid_t uid);
protected:
+ std::shared_ptr<pkgmgr_common::parcel::AbstractParcelable> result_;
pid_t GetPID();
+ uid_t GetUID();
private:
- pid_t pid_;
+ pid_t pid_ = -1;
+ uid_t uid_ = 0;
};
} // namespace request_handler