summaryrefslogtreecommitdiffstats
path: root/include/axis2_const.h
blob: bc8d86258a64a2e222705107e38c8ff692142ae5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef AXIS2_CONST_H
#define AXIS2_CONST_H

/**
 * @file axis2.h
 * @brief Axis2c specific global declarations
 */

#include <axutil_env.h>
#include <axutil_utils.h>

#ifdef __cplusplus
extern "C"
{
#endif

    /** @defgroup axis2 Axis2/C project
      * @{
      * @}
      */

    /** \mainpage Axis2/C API Documentation
      *
      * \section intro_sec Introduction
      *
      * This is the API documetation of Axis2/C, a SOAP engine written in C.
      * This implementation is based on the popular Axis2 architecture.
      * <p>We welcome your feedback on this implementation and documentation.
      * Please send your feedback to <a href="mailto:axis-c-user@ws.apache.org">
      * axis-c-user@ws.apache.org</a> and please remember to prefix the subject
      * of the mail with [Axis2].
      *
      */

    /******************************************************************************/

    /********************Axis2 specific constants**********************************/

    /******************************************************************************/

    /**
     * Field SOAP_STYLE_RPC_ENCODED
     */
#define AXIOM_SOAP_STYLE_RPC_ENCODED 1000

    /**
     * Field SOAP_STYLE_RPC_LITERAL
     */

    /*#define AXIOM_SOAP_STYLE_RPC_LITERAL 1001 */

    /**
     * Field SOAP_STYLE_DOC_LITERAL_WRAPPED
     */
#define AXIOM_SOAP_STYLE_DOC_LITERAL_WRAPPED 1002

#define AXIS2_SCOPE "scope"

    /**
     * Field APPLICATION_SCOPE
     */
#define AXIS2_APPLICATION_SCOPE "application"

    /**
     * Field SESSION_SCOPE
     */
#define AXIS2_SESSION_SCOPE "session"

    /**
     * Field GLOBAL_SCOPE
     */
#define AXIS2_MESSAGE_SCOPE "message"

    /**
     * Field PHASE_SERVICE
     */
#define AXIS2_PHASE_SERVICE "service"

    /**
     * Field PHASE_TRANSPORT
     */
#define AXIS2_PHASE_TRANSPORT "transport"

    /**
     * Field PHASE_GLOBAL
     */
#define AXIS2_PHASE_GLOBAL "global"

    /**
     * Field SESSION_CONTEXT_PROPERTY
     */
#define AXIS2_SESSION_CONTEXT_PROPERTY "SessionContext"

    /**
     * TRANSPORT constants
     */
#define AXIS2_TRANSPORT_HTTP	"http"
#define AXIS2_TRANSPORT_SMTP	"smtp"
#define AXIS2_TRANSPORT_TCP		"tcp"
#define AXIS2_TRANSPORT_XMPP	"xmpp"
#define AXIS2_TRANSPORT_HTTPS	"https"
#define AXIS2_TRANSPORT_AMQP	"amqp"
#define AXIS2_TRANSPORT_UDP		"soap.udp"
    typedef enum
    {
        AXIS2_TRANSPORT_ENUM_HTTP = 0,
        AXIS2_TRANSPORT_ENUM_SMTP,
        AXIS2_TRANSPORT_ENUM_TCP,
        AXIS2_TRANSPORT_ENUM_XMPP,
        AXIS2_TRANSPORT_ENUM_HTTPS,
        AXIS2_TRANSPORT_ENUM_AMQP,
		AXIS2_TRANSPORT_ENUM_UDP,
        AXIS2_TRANSPORT_ENUM_MAX
    } AXIS2_TRANSPORT_ENUMS;

    /** Service URL prefix */
#ifndef AXIS2_REQUEST_URL_PREFIX
#define AXIS2_REQUEST_URL_PREFIX "/services"
#endif

#define AXIS2_LISTSERVICES "listServices"

#define AXIS2_LIST_SERVICE_FOR_MODULE_ENGAMNET "listop"

    /**
     * List service for admin page
     */
#define AXIS2_ADMIN_LISTSERVICES "listService"

#define AXIS2_LIST_MODULES "listModules"

#define AXIS2_LIST_GLOABLLY_ENGAGED_MODULES "globalModules"

#define AXIS2_LIST_PHASES "listPhases"

#define AXIS2_ENGAGE_GLOBAL_MODULE "engagingglobally"
#define AXIS2_ENGAGE_MODULE_TO_SERVICE "engageToService"

#define AXIS2_ENGAGE_MODULE_TO_SERVICE_GROUP "engageToServiceGroup"

#define AXIS2_ADMIN_LOGIN "adminlogin"

#define AXIS2_LIST_CONTEXTS "listContexts"
#define AXIS2_LOGOUT "logout"

#define AXIS2_VIEW_GLOBAL_HANDLERS "viewGlobalHandlers"
#define AXIS2_SELECT_SERVICE "selectService"
#define AXIS2_EDIR_SERVICE_PARA "editServicepara"
#define AXIS2_SELECT_SERVICE_FOR_PARA_EDIT "selectServiceParaEdit"
#define AXIS2_VIEW_SERVICE_HANDLERS "viewServiceHandlers"
#define AXIS2_LIST_SERVIC_GROUPS "listServciceGroups"

    /**
     * Field SERVICE_MAP
     */
#define AXIS2_SERVICE_MAP "servicemap"
#define AXIS2_SERVICE_GROUP_MAP "serviceGroupmap"

#define AXIS2_CONFIG_CONTEXT "config_context"
#define AXIS2_ACTION_MAPPING "actionMapping"
#define AXIS2_OUTPUT_ACTION_MAPPING "outputActionMapping"
#define AXI2_FAULT_ACTION_MAPPING "faultActionMapping"

#define AXIS2_SERVICE "service"

#define AXIS2_OPEARTION_MAP "opmap"

    /**
     * Field Available modules
     */
#define AXIS2_MODULE_MAP "modulemap"

#define AXIS2_SELECT_SERVICE_TYPE "SELECT_SERVICE_TYPE"

#define AXIS2_GLOBAL_HANDLERS "axisconfig"
#define AXIS2_SERVICE_HANDLERS "serviceHandlers"

#define AXIS2_PHASE_LIST "phaseList"

#define AXIS2_LIST_OPS_FOR_THE_SERVICE "listOperations"

#define AXIS2_REMOVE_SERVICE "removeService"

#define AXIS2_ENGAGE_STATUS "engagestatus"

    /**
     * Errorness servcie
     */
#define AXIS2_ERROR_SERVICE_MAP "errprservicemap"
#define AXIS2_ERROR_MODULE_MAP "errormodulesmap"

#define AXIS2_IS_FAULTY "Fault"

#define AXIS2_MODULE_ADDRESSING "addressing"

#define AXIS2_USE_SEPARATE_LISTENER "use_listener"

#define AXIS2_USER_NAME "userName"
#define AXIS2_PASSWORD "password"

    /**
     * Field SINGLE_SERVICE
     */
#define AXIS2_SINGLE_SERVICE "singleservice"
#define AXIS2_WSDL_CONTENT "wsdl"
#define AXIS2_REQUEST_WSDL "?wsdl"

#define AXIS2_STYLE_RPC  "rpc"
#define AXIS2_STYLE_DOC  "doc"
#define AXIS2_STYLE_MSG  "msg"

    typedef enum axis2_wsdl_msg_labels
    {
        AXIS2_WSDL_MESSAGE_LABEL_IN = 0,
        AXIS2_WSDL_MESSAGE_LABEL_OUT,
        AXIS2_WSDL_MESSAGE_LABEL_MAX
    } axis2_wsdl_msg_labels_t;

    /*********************Message Exchange Pattern Constants***********************/

    /**
     * Field MEP_URI_IN_ONLY
     */
#define AXIS2_MEP_URI_IN_ONLY "http://www.w3.org/2004/08/wsdl/in-only"

#define AXIS2_MEP_URI_IN_ONLY_WSDL2 "http://www.w3.org/ns/wsdl/in-only"

#define AXIS2_MEP_CONSTANT_IN_ONLY 10

    /**
     * Field MEP_URI_ROBUST_IN_ONLY
     */
#define AXIS2_MEP_URI_ROBUST_IN_ONLY "http://www.w3.org/2004/08/wsdl/robust-in-only"
#define AXIS2_MEP_URI_ROBUST_IN_ONLY_WSDL2 "http://www.w3.org/ns/wsdl/robust-in-only"


#define AXIS2_MEP_CONSTANT_ROBUST_IN_ONLY 11

    /**
     * Field MEP_URI_IN_OUT
     */
#define AXIS2_MEP_URI_IN_OUT "http://www.w3.org/2004/08/wsdl/in-out"

#define AXIS2_MEP_URI_IN_OUT_WSDL2 "http://www.w3.org/ns/wsdl/in-out"

#define AXIS2_MEP_CONSTANT_IN_OUT 12

    /**
     * Field MEP_URI_IN_OPTIONAL_OUT
     */
#define AXIS2_MEP_URI_IN_OPTIONAL_OUT "http://www.w3.org/2004/08/wsdl/in-opt-out"

#define AXIS2_MEP_URI_IN_OPTIONAL_OUT_WSDL2 "http://www.w3.org/ns/wsdl/in-opt-out"

#define AXIS2_MEP_CONSTANT_IN_OPTIONAL_OUT 13

    /**
     * Field MEP_URI_OUT_ONLY
     */
#define AXIS2_MEP_URI_OUT_ONLY "http://www.w3.org/2004/08/wsdl/out-only"

#define AXIS2_MEP_URI_OUT_ONLY_WSDL2 "http://www.w3.org/ns/wsdl/out-only"

#define AXIS2_MEP_CONSTANT_OUT_ONLY 14

    /**
     * Field MEP_URI_ROBUST_OUT_ONLY
     */
#define AXIS2_MEP_URI_ROBUST_OUT_ONLY "http://www.w3.org/2004/08/wsdl/robust-out-only"

#define AXIS2_MEP_URI_ROBUST_OUT_ONLY_WSDL2 "http://www.w3.org/ns/wsdl/robust-out-only"

#define AXIS2_MEP_CONSTANT_ROBUST_OUT_ONLY 15

    /**
     * Field MEP_URI_OUT_IN
     */
#define AXIS2_MEP_URI_OUT_IN "http://www.w3.org/2004/08/wsdl/out-in"

#define AXIS2_MEP_URI_OUT_IN_WSDL2 "http://www.w3.org/ns/wsdl/out-in"

#define AXIS2_MEP_CONSTANT_OUT_IN 16

    /**
     * Field MEP_URI_OUT_OPTIONL_IN
     */
#define AXIS2_MEP_URI_OUT_OPTIONAL_IN "http://www.w3.org/2004/08/wsdl/out-opt-in"

#define AXIS2_MEP_URI_OUT_OPTIONAL_IN_WSDL2 "http://www.w3.org/ns/wsdl/out-opt-in"

#define AXIS2_MEP_CONSTANT_OUT_OPTIONAL_IN 17

#define AXIS2_MEP_CONSTANT_INVALID -1

    /**
     * Field WSDL_MESSAGE_DIRECTION_IN
     */
#define AXIS2_WSDL_MESSAGE_DIRECTION_IN "in"

    /**
     * Field WSDL_MESSAGE_DIRECTION_OUT
     */
#define AXIS2_WSDL_MESSAGE_DIRECTION_OUT "out"

    /**
     * Field AXIS2_REST_HTTP_LOCATION
     */
#define AXIS2_REST_HTTP_LOCATION "RESTLocation"

    /**
     * Field AXIS2_REST_HTTP_METHOD
     */
#define AXIS2_REST_HTTP_METHOD "RESTMethod"

    /**
     * Field AXIS2_DEFAULT_REST_HTTP_METHOD
     */
#define AXIS2_DEFAULT_REST_HTTP_METHOD "defaultRESTMethod"

    /**
     * Field METHOD_NAME_ESCAPE_CHARACTOR
     */

    /* static const char METHOD_NAME_ESCAPE_CHARACTOR '?' */

#define AXIS2_LOGGED "Logged"

    /* static const char SERVICE_NAME_SPLIT_CHAR':' */

    /*********************Configuration *******************************************/

#define AXIS2_ENABLE_REST "enableREST"
#define AXIS2_ENABLE_REST_THROUGH_GET "restThroughGet"

#define AXIS2_FORCE_PROXY_AUTH "forceProxyAuth"
#define AXIS2_FORCE_HTTP_AUTH "forceHTTPAuth"

#define AXIS2_PROXY_AUTH_TYPE "proxyAuthType"
#define AXIS2_HTTP_AUTH_TYPE "HTTPAuthType"

    /**
     * Constant for Testing Proxy Authentication
     */
#define AXIS2_TEST_PROXY_AUTH "testProxyAuth"

    /**
     * Constant for Testing HTTP Authentication
     */
#define AXIS2_TEST_HTTP_AUTH "testHTTPAuth"

    /* add xml declaration */
#define AXIS2_XML_DECLARATION "xml-declaration"
#define AXIS2_ADD_XML_DECLARATION "insert"

    /* globally enable MTOM */
#define AXIS2_ENABLE_MTOM "enableMTOM"
#define AXIS2_ATTACHMENT_DIR "attachmentDIR"
#define AXIS2_MTOM_BUFFER_SIZE "MTOMBufferSize"
#define AXIS2_MTOM_MAX_BUFFERS "MTOMMaxBuffers"
#define AXIS2_MTOM_CACHING_CALLBACK "MTOMCachingCallback"
#define AXIS2_MTOM_SENDING_CALLBACK "MTOMSendingCallback"
#define AXIS2_ENABLE_MTOM_SERVICE_CALLBACK "EnableMTOMServiceCallback"

    /* op_ctx persistance */
#define AXIS2_PERSIST_OP_CTX "persistOperationContext"

#define AXIS2_EXPOSE_HEADERS "exposeHeaders"

    /******************************************************************************/

#define AXIS2_VALUE_TRUE "true"
#define AXIS2_VALUE_FALSE "false"
#define AXIS2_CONTAINER_MANAGED "ContainerManaged"
#define AXIS2_RESPONSE_WRITTEN "CONTENT_WRITTEN"

#define AXIS2_TESTING_PATH "target/test-resources/"

#define AXIS2_TESTING_REPOSITORY "target/test-resources/samples"

    /* Indicate whether the axis2 service should be loaded at start up */
#define AXIS2_LOAD_SVC_STARTUP "loadServiceAtStartup"

    /*************************** REST_WITH_GET ************************************/

#define AXIS2_GET_PARAMETER_OP "op"
#define AXIS2_GET_PARAMETER_URL "http://ws.apache.org/goGetWithREST"

    /******************************************************************************/

#define AXIS2_NAMESPACE_PREFIX "axis2"
#define AXIS2_NAMESPACE_URI "http://ws.apache.org/namespaces/axis2"

#define AXIS2_SVC_GRP_ID "ServiceGroupId"

#define AXIS2_RESPONSE_SOAP_ENVELOPE "Axis2ResponseEnvelope"
#define AXIS2_HANDLER_ALREADY_VISITED "handler_already_visited"
#define AXIS2_IS_SVR_SIDE "axis2_is_svr_side"

#define AXIS2_SERVICE_DIR "servicesDir"
#define AXIS2_MODULE_DIR "moduleDir"

#define AXIS2_MESSAGE_ID_PREFIX "urn:uuid:"

/** Name of anonymous service */
#define AXIS2_ANON_SERVICE  "__ANONYMOUS_SERVICE__"

/** out-only MEP operation name */
#define AXIS2_ANON_OUT_ONLY_OP "__OPERATION_OUT_ONLY__"

/** out-only robust MEP operation name */
#define AXIS2_ANON_ROBUST_OUT_ONLY_OP "__OPERATION_ROBUST_OUT_ONLY__"

/** out-in MEP operation name */
#define AXIS2_ANON_OUT_IN_OP "__OPERATION_OUT_IN__"

/** wsdl location in repo*/
#define AXIS2_WSDL_LOCATION_IN_REPO "woden"

#define AXIS2_SVC_CLIENT_CLOSED "closed"    

#define AXIS2_STATISTICS_COUNT_ARG "stat_count_arg"    

#ifdef __cplusplus
}
#endif

#endif                          /* AXIS2_CONST_H */