RAPP Platform API
 All Classes Namespaces Files Functions Variables Typedefs
rapp::cloud::email_fetch Class Reference

fetch email(s) More...

#include <email.hpp>

Inheritance diagram for rapp::cloud::email_fetch:
Collaboration diagram for rapp::cloud::email_fetch:

Public Member Functions

 email_fetch (const std::string email, const std::string pwd, const std::string server, const std::string port, const std::string email_status, const unsigned int from_date, const unsigned int to_date, const unsigned int num_emails, const std::string token, std::function< void(std::string)> callback)
 construct in order to acquire email(s) More...
 
- Public Member Functions inherited from rapp::cloud::asio_service_http
 asio_service_http (const std::string token)
 
void schedule (boost::asio::ip::tcp::resolver::query &query, boost::asio::ip::tcp::resolver &resolver, boost::asio::io_service &io_service)
 

Private Member Functions

void handle_reply (std::string json)
 handle platform's JSON reply More...
 

Private Attributes

std::function< void(std::string)> delegate_
 

Additional Inherited Members

- Protected Member Functions inherited from rapp::cloud::asio_service_http
void check_timeout ()
 check timed-out More...
 
void handle_connect (const boost::system::error_code &err, boost::asio::ip::tcp::resolver::iterator endpoint_iterator)
 
void handle_read_content (const boost::system::error_code &err, std::size_t bytes)
 Callback for Handling Actual Data Contents. More...
 
void handle_read_headers (const boost::system::error_code &err)
 Callback for Handling Headers. More...
 
void handle_read_status_line (const boost::system::error_code &err)
 Callback for handling HTTP Header Response Data. More...
 
void handle_resolve (const boost::system::error_code &err, boost::asio::ip::tcp::resolver::iterator endpoint_iterator)
 Callback for Handling Address Resolution. More...
 
void handle_write_request (const boost::system::error_code &err)
 Callback for handling request and waiting for response. More...
 
void reset ()
 reset handler (clear data, bytes, etc) and stop connection More...
 
- Protected Member Functions inherited from rapp::cloud::asio_handler
 asio_handler (const std::string token)
 ctor More...
 
void content_length (std::string response, std::size_t &length)
 get the content leangth from More...
 
std::string decode64 (const std::string &val)
 decode base64 More...
 
std::string encode64 (const std::string &val)
 encode base64 More...
 
void error_handler (const boost::system::error_code &error)
 Handle an Error. More...
 
std::string escape_string (const std::string &str)
 escape JSON strings when sending them over the socket More...
 
bool has_content_length (std::string response)
 examine if the header response contains a content-length filed More...
 
void invalid_request (const std::string message)
 Handle Invalid Query - e.g.: response which states our query was invalid. More...
 
std::string random_boundary () const
 Create a random boundary for the multipart/form in HTTP. More...
 
std::string strip_header (std::string response)
 remove/strip the HTTP header and More...
 
- Protected Attributes inherited from rapp::cloud::asio_handler
std::size_t bytes_transferred_ = 0
 Bytes Transferred. More...
 
std::function< void(std::string)> callback_
 Callback Handler - use with std::bind or boost variant. More...
 
std::size_t content_length_ = 0
 Content-Length. More...
 
std::atomic< bool > flag_ = {false}
 flag used to extract header More...
 
std::string header_
 Header that will be used. More...
 
std::string json_
 JSON reply. More...
 
std::string post_
 Actual post Data. More...
 
boost::asio::streambuf request_
 Request Container. More...
 
boost::asio::streambuf response_
 Response Container. More...
 
std::unique_ptr
< boost::asio::deadline_timer > 
timer_
 time-out timer More...
 
const std::string token_
 user authentication token More...
 

Detailed Description

fetch email(s)

Version
0.6.0
Date
May 2016

Definition at line 12 of file email.hpp.

Constructor & Destructor Documentation

rapp::cloud::email_fetch::email_fetch ( const std::string  email,
const std::string  pwd,
const std::string  server,
const std::string  port,
const std::string  email_status,
const unsigned int  from_date,
const unsigned int  to_date,
const unsigned int  num_emails,
const std::string  token,
std::function< void(std::string)>  callback 
)

construct in order to acquire email(s)

Parameters
emailuser's email address
pwduser's plain-text password
serveremail imap address
portemail imap port
email_statuswhich mail is requested (ALL, UNSEEN)
from_datefetch emails since date (unix timestamp)
to_datefetch emails to date (unix timestamp)
num_emailsnumber of emails requested
tokenrapp platform auth token
callbackwill receive a JSON string with acquired email(s)

Definition at line 28 of file email.hpp.

Member Function Documentation

void rapp::cloud::email_fetch::handle_reply ( std::string  json)
private

handle platform's JSON reply

Definition at line 63 of file email.hpp.

Member Data Documentation

std::function<void(std::string)> rapp::cloud::email_fetch::delegate_
private

Definition at line 70 of file email.hpp.


The documentation for this class was generated from the following file: