Qpid Proton C API  0.37.0
condition.h
Go to the documentation of this file.
1 #ifndef PROTON_CONDITION_H
2 #define PROTON_CONDITION_H 1
3 
4 /*
5  *
6  * Licensed to the Apache Software Foundation (ASF) under one
7  * or more contributor license agreements. See the NOTICE file
8  * distributed with this work for additional information
9  * regarding copyright ownership. The ASF licenses this file
10  * to you under the Apache License, Version 2.0 (the
11  * "License"); you may not use this file except in compliance
12  * with the License. You may obtain a copy of the License at
13  *
14  * http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing,
17  * software distributed under the License is distributed on an
18  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19  * KIND, either express or implied. See the License for the
20  * specific language governing permissions and limitations
21  * under the License.
22  *
23  */
24 
25 #include <proton/import_export.h>
26 #include <proton/codec.h>
27 #include <proton/type_compat.h>
28 #include <stddef.h>
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
64 typedef struct pn_condition_t pn_condition_t;
65 
74 PN_EXTERN bool pn_condition_is_set(pn_condition_t *condition);
75 
86 PN_EXTERN void pn_condition_clear(pn_condition_t *condition);
87 
95 PN_EXTERN const char *pn_condition_get_name(pn_condition_t *condition);
96 
104 PN_EXTERN int pn_condition_set_name(pn_condition_t *condition, const char *name);
105 
112 PN_EXTERN const char *pn_condition_get_description(pn_condition_t *condition);
113 
121 PN_EXTERN int pn_condition_set_description(pn_condition_t *condition, const char *description);
122 
133 
137 PN_EXTERN int pn_condition_vformat(pn_condition_t *, const char *name, const char *fmt, va_list ap);
138 
142 PN_EXTERN int pn_condition_format(pn_condition_t *, const char *name, const char *fmt, ...);
143 
150 PN_EXTERN bool pn_condition_is_redirect(pn_condition_t *condition);
151 
160 PN_EXTERN const char *pn_condition_redirect_host(pn_condition_t *condition);
161 
170 PN_EXTERN int pn_condition_redirect_port(pn_condition_t *condition);
171 
176 
180 PN_EXTERN pn_condition_t *pn_condition(void);
181 
186 
191 #ifdef __cplusplus
192 }
193 #endif
194 
195 #endif /* condition.h */
AMQP data encoding and decoding.
const char * pn_condition_get_name(pn_condition_t *condition)
Returns the name associated with the exceptional condition, or NULL if there is no conditional inform...
bool pn_condition_is_set(pn_condition_t *condition)
Returns true if the condition object is holding some information, i.e.
struct pn_condition_t pn_condition_t
An AMQP Condition object.
Definition: condition.h:64
pn_data_t * pn_condition_info(pn_condition_t *condition)
Returns a data object that holds the additional information associated with the condition.
int pn_condition_format(pn_condition_t *, const char *name, const char *fmt,...)
Set the name and printf-style formatted description.
const char * pn_condition_redirect_host(pn_condition_t *condition)
Retrieves the redirect host from the additional information associated with the condition.
int pn_condition_set_description(pn_condition_t *condition, const char *description)
Sets the description associated with the exceptional condition.
const char * pn_condition_get_description(pn_condition_t *condition)
Gets the description associated with the exceptional condition.
int pn_condition_set_name(pn_condition_t *condition, const char *name)
Sets the name associated with the exceptional condition.
void pn_condition_clear(pn_condition_t *condition)
Clears the condition object of any exceptional information.
pn_condition_t * pn_condition(void)
Create a condition object.
int pn_condition_vformat(pn_condition_t *, const char *name, const char *fmt, va_list ap)
Set the name and printf-style formatted description.
void pn_condition_free(pn_condition_t *)
Free a condition object.
int pn_condition_copy(pn_condition_t *dest, pn_condition_t *src)
Copy the src condition to the dst condition.
bool pn_condition_is_redirect(pn_condition_t *condition)
Returns true if the condition is a redirect.
int pn_condition_redirect_port(pn_condition_t *condition)
Retrieves the redirect port from the additional information associated with the condition.
struct pn_data_t pn_data_t
An AMQP Data object.
Definition: codec.h:375