Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
afw_adaptor_journal_impl_declares.h
Go to the documentation of this file.
1 // See the 'COPYING' file in the project root for licensing information.
2 /*
3  * Interface afw_interface Implementation Declares
4  *
5  * Copyright (c) 2010-2023 Clemson University
6  *
7  */
8 
10 
12 
75 #ifdef __AFW_ADAPTOR_JOURNAL_IMPL_DECLARES_H__
76 #ifndef AFW_ADAPTOR_JOURNAL_INF_ONLY
77 #error "afw_adaptor_journal_impl_declares.h already included."
78 #endif
79 #endif
80 #ifndef __AFW_ADAPTOR_JOURNAL_IMPL_DECLARES_H__
81 #ifdef AFW_ADAPTOR_JOURNAL_INF_ONLY
82 #error "afw_adaptor_journal_impl_declares.h must be included before AFW_ADAPTOR_JOURNAL_INF_ONLY."
83 #endif
84 #define __AFW_ADAPTOR_JOURNAL_IMPL_DECLARES_H__ 1
85 #endif
86 
87 #ifdef AFW_IMPLEMENTATION_ID
88 #define _AFW_IMPLEMENTATION_ID_ AFW_IMPLEMENTATION_ID
89 #else
90 #define _AFW_IMPLEMENTATION_ID_ "unspecified"
91 #endif
92 #ifdef AFW_IMPLEMENTATION_SPECIFIC
93 #define _AFW_IMPLEMENTATION_SPECIFIC_ AFW_IMPLEMENTATION_SPECIFIC
94 #else
95 #define _AFW_IMPLEMENTATION_SPECIFIC_ NULL
96 #endif
97 #ifndef AFW_ADAPTOR_JOURNAL_INF_ONLY
98 
99 #ifndef impl_afw_adaptor_journal_add_entry
100 /* Declare method add_entry */
101 AFW_DECLARE_STATIC(const afw_utf8_t *)
103  const afw_adaptor_journal_t * instance,
104  const afw_adaptor_impl_request_t * impl_request,
105  const afw_object_t * entry,
106  afw_xctx_t * xctx);
107 #endif
108 
109 #ifndef impl_afw_adaptor_journal_get_entry
110 /* Declare method get_entry */
111 AFW_DECLARE_STATIC(void)
113  const afw_adaptor_journal_t * instance,
114  const afw_adaptor_impl_request_t * impl_request,
116  const afw_utf8_t * consumer_id,
117  const afw_utf8_t * entry_cursor,
118  afw_size_t limit,
119  const afw_object_t * response,
120  afw_xctx_t * xctx);
121 #endif
122 
123 #ifndef impl_afw_adaptor_journal_mark_entry_consumed
124 /* Declare method mark_entry_consumed */
125 AFW_DECLARE_STATIC(void)
127  const afw_adaptor_journal_t * instance,
128  const afw_adaptor_impl_request_t * impl_request,
129  const afw_utf8_t * consumer_id,
130  const afw_utf8_t * entry_cursor,
131  afw_xctx_t * xctx);
132 #endif
133 #endif
134 
135 /* inf for interface afw_adaptor_journal */
136 #ifdef __BASE_FILE__
137 #define _AFW_IMPLEMENTATION_SOURCE_FILE_ __BASE_FILE__
138 #else
139 #define _AFW_IMPLEMENTATION_SOURCE_FILE_ __FILE__
140 #endif
141 #ifdef AFW_IMPLEMENTATION_INF_SPECIFIER
142 AFW_IMPLEMENTATION_INF_SPECIFIER(afw_adaptor_journal_inf_t)
143 #else
144 static const afw_adaptor_journal_inf_t
145 #endif
146 #ifdef AFW_IMPLEMENTATION_INF_LABEL
147 AFW_IMPLEMENTATION_INF_LABEL = {
148 #else
149 impl_afw_adaptor_journal_inf = {
150 #endif
151  {
152  AFW_UTF8_LITERAL("afw_adaptor_journal"),
153  AFW_UTF8_LITERAL(_AFW_IMPLEMENTATION_SOURCE_FILE_),
154  AFW_UTF8_LITERAL(_AFW_IMPLEMENTATION_ID_),
155  _AFW_IMPLEMENTATION_SPECIFIC_
156  },
160 };
161 
162 #undef _AFW_IMPLEMENTATION_ID_
163 #undef _AFW_IMPLEMENTATION_SPECIFIC_
164 #undef _AFW_IMPLEMENTATION_SOURCE_FILE_
165 
#define AFW_BEGIN_DECLARES
Interface afw_interface opaque typedefs.
impl_afw_adaptor_journal_get_entry(const afw_adaptor_journal_t *instance, const afw_adaptor_impl_request_t *impl_request, afw_adaptor_journal_option_t option, const afw_utf8_t *consumer_id, const afw_utf8_t *entry_cursor, afw_size_t limit, const afw_object_t *response, afw_xctx_t *xctx)
impl_afw_adaptor_journal_add_entry(const afw_adaptor_journal_t *instance, const afw_adaptor_impl_request_t *impl_request, const afw_object_t *entry, afw_xctx_t *xctx)
impl_afw_adaptor_journal_mark_entry_consumed(const afw_adaptor_journal_t *instance, const afw_adaptor_impl_request_t *impl_request, const afw_utf8_t *consumer_id, const afw_utf8_t *entry_cursor, afw_xctx_t *xctx)
#define AFW_UTF8_LITERAL(A_STRING)
String literal initializer.
Definition: afw_common.h:582
apr_size_t afw_size_t
size_t.
Definition: afw_common.h:151
enum afw_adaptor_journal_option_e afw_adaptor_journal_option_t
Typedef for afw_adaptor_journal get_entry options enum.
Internal request info used by afw_adaptor_impl*() functions.
Interface afw_adaptor_journal_inf_s struct.
Interface afw_adaptor_journal public struct.
Interface afw_object public struct.
NFC normalized UTF-8 string.
Definition: afw_common.h:545
Interface afw_xctx public struct.