ARI: Added new functionality to load a single module.
[asterisk/asterisk.git] / res / ari / resource_asterisk.h
1 /*
2  * Asterisk -- An open source telephony toolkit.
3  *
4  * Copyright (C) 2012 - 2013, Digium, Inc.
5  *
6  * David M. Lee, II <dlee@digium.com>
7  *
8  * See http://www.asterisk.org for more information about
9  * the Asterisk project. Please do not directly contact
10  * any of the maintainers of this project for assistance;
11  * the project provides a web site, mailing lists and IRC
12  * channels for your use.
13  *
14  * This program is free software, distributed under the terms of
15  * the GNU General Public License Version 2. See the LICENSE file
16  * at the top of the source tree.
17  */
18
19 /*! \file
20  *
21  * \brief Generated file - declares stubs to be implemented in
22  * res/ari/resource_asterisk.c
23  *
24  * Asterisk resources
25  *
26  * \author David M. Lee, II <dlee@digium.com>
27  */
28
29 /*
30  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
31  * !!!!!                               DO NOT EDIT                        !!!!!
32  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
33  * This file is generated by a mustache template. Please see the original
34  * template in rest-api-templates/ari_resource.h.mustache
35  */
36
37 #ifndef _ASTERISK_RESOURCE_ASTERISK_H
38 #define _ASTERISK_RESOURCE_ASTERISK_H
39
40 #include "asterisk/ari.h"
41
42 /*! Argument struct for ast_ari_asterisk_get_info() */
43 struct ast_ari_asterisk_get_info_args {
44         /*! Array of Filter information returned */
45         const char **only;
46         /*! Length of only array. */
47         size_t only_count;
48         /*! Parsing context for only. */
49         char *only_parse;
50 };
51 /*!
52  * \brief Body parsing function for /asterisk/info.
53  * \param body The JSON body from which to parse parameters.
54  * \param[out] args The args structure to parse into.
55  * \retval zero on success
56  * \retval non-zero on failure
57  */
58 int ast_ari_asterisk_get_info_parse_body(
59         struct ast_json *body,
60         struct ast_ari_asterisk_get_info_args *args);
61
62 /*!
63  * \brief Gets Asterisk system information.
64  *
65  * \param headers HTTP headers
66  * \param args Swagger parameters
67  * \param[out] response HTTP response
68  */
69 void ast_ari_asterisk_get_info(struct ast_variable *headers, struct ast_ari_asterisk_get_info_args *args, struct ast_ari_response *response);
70 /*! Argument struct for ast_ari_asterisk_list_modules() */
71 struct ast_ari_asterisk_list_modules_args {
72 };
73 /*!
74  * \brief List Asterisk modules.
75  *
76  * \param headers HTTP headers
77  * \param args Swagger parameters
78  * \param[out] response HTTP response
79  */
80 void ast_ari_asterisk_list_modules(struct ast_variable *headers, struct ast_ari_asterisk_list_modules_args *args, struct ast_ari_response *response);
81 /*! Argument struct for ast_ari_asterisk_get_module() */
82 struct ast_ari_asterisk_get_module_args {
83         /*! Module's name */
84         const char *module_name;
85 };
86 /*!
87  * \brief Get Asterisk module information.
88  *
89  * \param headers HTTP headers
90  * \param args Swagger parameters
91  * \param[out] response HTTP response
92  */
93 void ast_ari_asterisk_get_module(struct ast_variable *headers, struct ast_ari_asterisk_get_module_args *args, struct ast_ari_response *response);
94 /*! Argument struct for ast_ari_asterisk_load_module() */
95 struct ast_ari_asterisk_load_module_args {
96         /*! Module's name */
97         const char *module_name;
98 };
99 /*!
100  * \brief Load an Asterisk module.
101  *
102  * \param headers HTTP headers
103  * \param args Swagger parameters
104  * \param[out] response HTTP response
105  */
106 void ast_ari_asterisk_load_module(struct ast_variable *headers, struct ast_ari_asterisk_load_module_args *args, struct ast_ari_response *response);
107 /*! Argument struct for ast_ari_asterisk_get_global_var() */
108 struct ast_ari_asterisk_get_global_var_args {
109         /*! The variable to get */
110         const char *variable;
111 };
112 /*!
113  * \brief Body parsing function for /asterisk/variable.
114  * \param body The JSON body from which to parse parameters.
115  * \param[out] args The args structure to parse into.
116  * \retval zero on success
117  * \retval non-zero on failure
118  */
119 int ast_ari_asterisk_get_global_var_parse_body(
120         struct ast_json *body,
121         struct ast_ari_asterisk_get_global_var_args *args);
122
123 /*!
124  * \brief Get the value of a global variable.
125  *
126  * \param headers HTTP headers
127  * \param args Swagger parameters
128  * \param[out] response HTTP response
129  */
130 void ast_ari_asterisk_get_global_var(struct ast_variable *headers, struct ast_ari_asterisk_get_global_var_args *args, struct ast_ari_response *response);
131 /*! Argument struct for ast_ari_asterisk_set_global_var() */
132 struct ast_ari_asterisk_set_global_var_args {
133         /*! The variable to set */
134         const char *variable;
135         /*! The value to set the variable to */
136         const char *value;
137 };
138 /*!
139  * \brief Body parsing function for /asterisk/variable.
140  * \param body The JSON body from which to parse parameters.
141  * \param[out] args The args structure to parse into.
142  * \retval zero on success
143  * \retval non-zero on failure
144  */
145 int ast_ari_asterisk_set_global_var_parse_body(
146         struct ast_json *body,
147         struct ast_ari_asterisk_set_global_var_args *args);
148
149 /*!
150  * \brief Set the value of a global variable.
151  *
152  * \param headers HTTP headers
153  * \param args Swagger parameters
154  * \param[out] response HTTP response
155  */
156 void ast_ari_asterisk_set_global_var(struct ast_variable *headers, struct ast_ari_asterisk_set_global_var_args *args, struct ast_ari_response *response);
157
158 #endif /* _ASTERISK_RESOURCE_ASTERISK_H */