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/libnntpchan/frontend.hpp

30 lines
780 B
C++
Raw Normal View History

2016-10-18 16:03:51 +05:00
#ifndef NNTPCHAN_FRONTEND_HPP
#define NNTPCHAN_FRONTEND_HPP
2016-10-18 17:17:40 +05:00
#include <string>
#include <memory>
#include <experimental/filesystem>
2016-10-18 16:03:51 +05:00
namespace nntpchan
{
namespace fs = std::experimental::filesystem;
2016-10-18 16:03:51 +05:00
/** @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
/** @brief return true if we take posts in a newsgroup */
2016-10-18 17:17:40 +05:00
virtual bool AcceptsNewsgroup(const std::string & newsgroup) = 0;
2016-10-18 16:03:51 +05:00
/** @brief return true if we will accept a message given its message-id */
2016-10-18 17:17:40 +05:00
virtual bool AcceptsMessage(const std::string & msgid) = 0;
2016-10-18 16:03:51 +05:00
};
typedef std::unique_ptr<Frontend> Frontend_ptr;
2016-10-18 16:03:51 +05:00
}
#endif