Grassroots Infrastructure
The Grassroots Infrastructure is a suite of computing tools to help users and developers use scientific data infrastructure that can easily be interconnected.
|
Connection * AllocateWebServerConnection(const char *const full_uri_s, CurlMode curl_mode)
Allocate a WebConnection to a Server.
void FreeConnection(Connection *connection_p)
Free a Connection.
ConnectionType co_type
The ConnectionType for this Connection.
Definition: connection.h:71
CurlMode
An enum specifying where any resultant data from running a CurlTool will be stored.
Definition: curl_tools.h:41
Connection * AllocaterRawClientConnection(int server_socket_fd)
Allocate a RawConnection to a Client.
bool SetConnectionCredentials(Connection *connection_p, const char *username_s, const char *password_s)
#define GRASSROOTS_NETWORK_API
Definition: network_library.h:46
bool InitConnection(Connection *connection_p, ConnectionType type)
void ReleaseConnection(Connection *connection_p)
The number of possible ConnectionTypes.
Definition: connection.h:56
A Connection that uses http(s) communication.
Definition: connection.h:84
The base class for building a Server-Client connection.
Definition: connection.h:65
CurlTool * wc_curl_p
The CurlTool that encapsulates the web-based calls.
Definition: connection.h:90
A raw socket-based connection.
Definition: connection.h:50
Connection wc_base
The base Connection.
Definition: connection.h:87
uint32 co_id
The internal id for this Connection.
Definition: connection.h:68
char * wc_uri_s
The URI that the WebConnection is to.
Definition: connection.h:93
const char * GetConnectionData(Connection *connection_p)
Get the data stored in a Connection's buffer.
const char * MakeRemoteJsonCallViaConnection(Connection *connection_p, const json_t *req_p)
Send JSON-based data over a Connection.
ConnectionType
An enumeration listing the different types of Connections.
Definition: connection.h:47
A connection using http(s)
Definition: connection.h:53