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.
servers_manager.h File Reference
#include "uuid_defs.h"
#include "connection.h"
#include "grassroots_service_manager_library.h"
#include "linked_list.h"
#include "operation.h"
#include "memory_allocations.h"
#include "string_utils.h"
Include dependency graph for servers_manager.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ExternalServer
 A datatype to allow access to an external Grassroots Server. More...
 
struct  ExternalServerNode
 A datatype for storing ExternalServers in a LinkedList. More...
 
struct  ServersManager
 A datatype for monitoring ExternalServers. More...
 

Typedefs

typedef ExternalServer *(* ExternalServerDeserialiser) (const unsigned char *data_p)
 A function to take a raw binary data representation of a previously stored ExternalServer and recreate it. More...
 
typedef unsigned char *(* ExternalServerSerialiser) (ExternalServer *server_p, uint32 *length_p)
 A function to generate a raw binary data representation of a ExternalServer allowing it to be recreated at a later time. More...
 

Functions

ServersManagerLoadServersManager (const char *servers_manager_s, struct GrassrootsServer *server_p)
 
GRASSROOTS_SERVICE_MANAGER_LOCAL ServersManagerGetServersManagerFromPlugin (struct Plugin *const plugin_p)
 
uuid_tGetLocalServerId (struct GrassrootsServer *grassroots_p)
 Get the current Server uuid. More...
 
const char * GetLocalServerIdAsString (struct GrassrootsServer *grassroots_p)
 Get the current Server uuid as a c-style string. More...
 
const char * GetRemotePairedServiceName (const ExternalServer *const src_p, const char *const local_service_name_s)
 Get the name of the remote paired service corresponding to a given local service name. More...
 

Function Documentation

◆ LoadServersManager()

ServersManager* LoadServersManager ( const char *  servers_manager_s,
struct GrassrootsServer server_p 
)

◆ GetServersManagerFromPlugin()

GRASSROOTS_SERVICE_MANAGER_LOCAL ServersManager* GetServersManagerFromPlugin ( struct Plugin *const  plugin_p)

◆ GetRemotePairedServiceName()

const char* GetRemotePairedServiceName ( const ExternalServer *const  src_p,
const char *const  local_service_name_s 
)

Get the name of the remote paired service corresponding to a given local service name.

Parameters
src_pThe ExternalServer which has the remote Service.
local_service_name_sThe name of the local Service.
Returns
The name of the remote paired service or NULL upon error.