Archived
1
0
This repository has been archived on 2023-08-12. You can view files and clone it, but cannot push or open issues or pull requests.
nntpchan/contrib/backends/nntpchan-daemon/include/nntpchan/frontend.hpp

28 lines
741 B
C++
Raw Normal View History

2016-10-18 16:03:51 +05:00
#ifndef NNTPCHAN_FRONTEND_HPP
#define NNTPCHAN_FRONTEND_HPP
#include <experimental/filesystem>
2017-10-17 19:29:56 +05:00
#include <memory>
#include <string>
2016-10-18 16:03:51 +05:00
namespace nntpchan
{
2017-10-17 19:29:56 +05:00
namespace fs = std::experimental::filesystem;
/** @brief nntpchan frontend ui interface */
class Frontend
{
public:
/** @brief process an inbound message stored at fpath that we have accepted. */
virtual void ProcessNewMessage(const fs::path &fpath) = 0;
2016-10-18 16:03:51 +05:00
2017-10-17 19:29:56 +05:00
/** @brief return true if we take posts in a newsgroup */
virtual bool AcceptsNewsgroup(const std::string &newsgroup) = 0;
2016-10-18 16:03:51 +05:00
2017-10-17 19:29:56 +05:00
/** @brief return true if we will accept a message given its message-id */
virtual bool AcceptsMessage(const std::string &msgid) = 0;
};
2017-10-17 19:29:56 +05:00
typedef std::unique_ptr<Frontend> Frontend_ptr;
2016-10-18 16:03:51 +05:00
}
#endif