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.
referred_service.h
Go to the documentation of this file.
1 /*
2 ** Copyright 2014-2016 The Earlham Institute
3 **
4 ** Licensed under the Apache License, Version 2.0 (the "License");
5 ** you may not use this file except in compliance with the License.
6 ** You may obtain a copy of the License at
7 **
8 ** http://www.apache.org/licenses/LICENSE-2.0
9 **
10 ** Unless required by applicable law or agreed to in writing, software
11 ** distributed under the License is distributed on an "AS IS" BASIS,
12 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 ** See the License for the specific language governing permissions and
14 ** limitations under the License.
15 */
16 
21 #ifndef GRASSROOTS_REFERRED_SERVICE_H
22 #define GRASSROOTS_REFERRED_SERVICE_H
23 
25 
26 #include "linked_list.h"
27 #include "parameter_set.h"
28 #include "typedefs.h"
29 #include "handler.h"
30 #include "user_details.h"
31 
32 #include "jansson.h"
33 #include "tag_item.h"
34 
35 
42 /* forward declarations */
43 struct Plugin;
44 struct Service;
45 
50 typedef struct ReferredServiceData
51 {
55 
56 
63 typedef struct ReferredService
64 {
67 
69  json_t *rs_config_p;
71 
72 
79 typedef struct
80 {
83 
87 
88 
89 
90 #endif /* #ifndef GRASSROOTS_REFERRED_SERVICE_H */
grassroots_service_library.h
parameter_set.h
handler.h
ReferredService::rs_config_p
json_t * rs_config_p
The configuration for this ReferredService.
Definition: referred_service.h:69
Service
A datatype which defines an available service, its capabilities and its parameters.
Definition: service.h:153
typedefs.h
ReferredService::rs_service_p
Service * rs_service_p
The Service that this ReferredService is using.
Definition: referred_service.h:66
Plugin
A Plugin is a dynamically-loaded component to provide a piece of functionality.
Definition: plugin.h:150
ReferredServiceData::rsd_service_p
struct Service * rsd_service_p
The service that owns this data.
Definition: referred_service.h:53
user_details.h
linked_list.h
A doubly-linked list.
ReferredServiceNode::rsn_service_p
ReferredService * rsn_service_p
The ReferredService.
Definition: referred_service.h:85
ReferredServiceNode
A datatype for storing a ReferredService on a LinkedList.
Definition: referred_service.h:79
ReferredService
A datatype which defines an available service, its capabilities and its parameters.
Definition: referred_service.h:63
ReferredServiceData
The base structure for storing Service configuration data.
Definition: referred_service.h:50
ReferredServiceNode::rsn_node
ListItem rsn_node
The base Listnode.
Definition: referred_service.h:82
ListItem
A doubly-linked node that points to its predecessor and successor.
Definition: linked_list.h:43