initial code repo
[stor4nfv.git] / src / ceph / src / rgw / rgw_asio_frontend.h
diff --git a/src/ceph/src/rgw/rgw_asio_frontend.h b/src/ceph/src/rgw/rgw_asio_frontend.h
new file mode 100644 (file)
index 0000000..4c32cad
--- /dev/null
@@ -0,0 +1,27 @@
+// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
+// vim: ts=8 sw=2 smarttab
+
+#ifndef RGW_ASIO_FRONTEND_H
+#define RGW_ASIO_FRONTEND_H
+
+#include <memory>
+#include "rgw_frontend.h"
+
+class RGWAsioFrontend : public RGWFrontend {
+  class Impl;
+  std::unique_ptr<Impl> impl;
+public:
+  RGWAsioFrontend(const RGWProcessEnv& env);
+  ~RGWAsioFrontend() override;
+
+  int init() override;
+  int run() override;
+  void stop() override;
+  void join() override;
+
+  void pause_for_new_config() override;
+  void unpause_with_new_config(RGWRados *store,
+                               rgw_auth_registry_ptr_t auth_registry) override;
+};
+
+#endif // RGW_ASIO_FRONTEND_H