P2P File Share
A simple peer-to-peer file sharing system.
Loading...
Searching...
No Matches
transaction.hpp File Reference
#include <variant>
#include "../models/endpoint.hpp"
#include "../network/tcp_socket.hpp"
Include dependency graph for transaction.hpp:
This graph shows which files directly or indirectly include this file:

Classes

class  UnknownRequest
 
struct  Result
 
struct  always_false< T >
 Workaround for static_assert(false, ...) More...
 
struct  Transaction
 Every request is a transaction. More...
 

Typedefs

using Request = std::variant<UserRequest, GroupRequest, FileRequest, TrackerRequest>
 

Enumerations

enum class  RequestType { USER , GROUP }
 
enum class  UserRequest {
  CREATE , DELETE , LIST , LOGIN ,
  LOGOUT
}
 
enum class  GroupRequest {
  CREATE , JOIN , LEAVE , LIST ,
  LIST_JOIN_REQUESTS , ACCEPT_JOIN_REQUEST
}
 
enum class  FileRequest { LIST , UPLOAD , DOWNLOAD }
 
enum class  TrackerRequest { SYNC }
 

Typedef Documentation

◆ Request

Enumeration Type Documentation

◆ FileRequest

enum class FileRequest
strong
Enumerator
LIST 
UPLOAD 
DOWNLOAD 

◆ GroupRequest

enum class GroupRequest
strong
Enumerator
CREATE 
JOIN 
LEAVE 
LIST 
LIST_JOIN_REQUESTS 
ACCEPT_JOIN_REQUEST 

◆ RequestType

enum class RequestType
strong
Enumerator
USER 
GROUP 

◆ TrackerRequest

enum class TrackerRequest
strong
Enumerator
SYNC 

◆ UserRequest

enum class UserRequest
strong
Enumerator
CREATE 
DELETE 
LIST 
LOGIN 
LOGOUT