1 //
2 // Copyright (c) ZeroC, Inc. All rights reserved.
3 //
4 
5 #include <Ice/Ice.h>
6 #include <TestAMDI.h>
7 
8 using namespace Test;
9 using namespace IceUtil;
10 using namespace Ice;
11 using namespace std;
12 
InitialI()13 InitialI::InitialI()
14 {
15 }
16 
17 #ifdef ICE_CPP11_MAPPING
18 
19 void
shutdownAsync(::std::function<void ()> response,::std::function<void (::std::exception_ptr)>,const Ice::Current & current)20 InitialI::shutdownAsync(::std::function<void()> response,
21                         ::std::function<void(::std::exception_ptr)>, const Ice::Current& current)
22 {
23     current.adapter->getCommunicator()->shutdown();
24     response();
25 }
26 
27 void
pingPongAsync(::std::shared_ptr<::Ice::Value> obj,::std::function<void (const::std::shared_ptr<::Ice::Value> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)28 InitialI::pingPongAsync(::std::shared_ptr<::Ice::Value> obj,
29                         ::std::function<void(const ::std::shared_ptr<::Ice::Value>&)> response,
30                         ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
31 {
32     response(obj);
33     if(dynamic_pointer_cast<MultiOptional>(obj))
34     {
35         // Break cyclic reference count
36         dynamic_pointer_cast<MultiOptional>(obj)->k = shared_ptr<MultiOptional>();
37     }
38 }
39 
40 void
opOptionalExceptionAsync(Ice::optional<int> a,Ice::optional<::std::string> b,Ice::optional<::std::shared_ptr<::Test::OneOptional>> o,::std::function<void ()>,::std::function<void (::std::exception_ptr)> ex,const Ice::Current &)41 InitialI::opOptionalExceptionAsync(Ice::optional<int> a, Ice::optional<::std::string> b, Ice::optional<::std::shared_ptr<::Test::OneOptional>> o,
42                                    ::std::function<void()>,
43                                    ::std::function<void(::std::exception_ptr)> ex, const Ice::Current&)
44 {
45     ex(make_exception_ptr(OptionalException(false, a, b, o)));
46 }
47 
48 void
opDerivedExceptionAsync(Ice::optional<int> a,Ice::optional<::std::string> b,Ice::optional<::std::shared_ptr<::Test::OneOptional>> o,::std::function<void ()>,::std::function<void (::std::exception_ptr)> ex,const Ice::Current &)49 InitialI::opDerivedExceptionAsync(Ice::optional<int> a, Ice::optional<::std::string> b, Ice::optional<::std::shared_ptr<::Test::OneOptional>> o,
50                                   ::std::function<void()>,
51                                   ::std::function<void(::std::exception_ptr)> ex, const Ice::Current&)
52 {
53     ex(make_exception_ptr(DerivedException(false, a, b, o, b, o)));
54 }
55 
56 void
opRequiredExceptionAsync(Ice::optional<int> a,Ice::optional<::std::string> b,Ice::optional<::std::shared_ptr<::Test::OneOptional>> o,::std::function<void ()>,::std::function<void (::std::exception_ptr)> ex,const Ice::Current &)57 InitialI::opRequiredExceptionAsync(Ice::optional<int> a, Ice::optional<::std::string> b, Ice::optional<::std::shared_ptr<::Test::OneOptional>> o,
58                                    ::std::function<void()>,
59                                    ::std::function<void(::std::exception_ptr)> ex, const Ice::Current&)
60 {
61     RequiredException e;
62     e.a = a;
63     e.b = b;
64     e.o = o;
65     if(b)
66     {
67         e.ss = b.value();
68     }
69     if(o)
70     {
71         e.o2 = o.value();
72     }
73 
74     ex(make_exception_ptr(e));
75 }
76 
77 void
opByteAsync(Ice::optional<::Ice::Byte> p1,::std::function<void (const Ice::optional<::Ice::Byte> &,const Ice::optional<::Ice::Byte> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)78 InitialI::opByteAsync(Ice::optional<::Ice::Byte> p1,
79                       ::std::function<void(const Ice::optional<::Ice::Byte>&, const Ice::optional<::Ice::Byte>&)> response,
80                       ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
81 {
82     response(p1, p1);
83 }
84 
85 void
opBoolAsync(Ice::optional<bool> p1,::std::function<void (const Ice::optional<bool> &,const Ice::optional<bool> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)86 InitialI::opBoolAsync(Ice::optional<bool> p1,
87                       ::std::function<void(const Ice::optional<bool>&, const Ice::optional<bool>&)> response,
88                       ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
89 {
90     response(p1, p1);
91 }
92 
93 void
opShortAsync(Ice::optional<short> p1,::std::function<void (const Ice::optional<short> &,const Ice::optional<short> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)94 InitialI::opShortAsync(Ice::optional<short> p1,
95                             ::std::function<void(const Ice::optional<short>&, const Ice::optional<short>&)> response,
96                             ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
97 {
98     response(p1, p1);
99 }
100 
101 void
opIntAsync(Ice::optional<int> p1,::std::function<void (const Ice::optional<int> &,const Ice::optional<int> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)102 InitialI::opIntAsync(Ice::optional<int> p1,
103                      ::std::function<void(const Ice::optional<int>&, const Ice::optional<int>&)> response,
104                      ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
105 {
106     response(p1, p1);
107 }
108 
109 void
opLongAsync(Ice::optional<long long int> p1,::std::function<void (const Ice::optional<long long int> &,const Ice::optional<long long int> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)110 InitialI::opLongAsync(Ice::optional<long long int> p1,
111                            ::std::function<void(const Ice::optional<long long int>&, const Ice::optional<long long int>&)> response,
112                            ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
113 {
114     response(p1, p1);
115 }
116 
117 void
opFloatAsync(Ice::optional<float> p1,::std::function<void (const Ice::optional<float> &,const Ice::optional<float> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)118 InitialI::opFloatAsync(Ice::optional<float> p1,
119                             ::std::function<void(const Ice::optional<float>&, const Ice::optional<float>&)> response,
120                             ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
121 {
122     response(p1, p1);
123 }
124 
125 void
opDoubleAsync(Ice::optional<double> p1,::std::function<void (const Ice::optional<double> &,const Ice::optional<double> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)126 InitialI::opDoubleAsync(Ice::optional<double> p1,
127                              ::std::function<void(const Ice::optional<double>&, const Ice::optional<double>&)> response,
128                              ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
129 {
130     response(p1, p1);
131 }
132 
133 void
opStringAsync(Ice::optional<::std::string> p1,::std::function<void (const Ice::optional<::std::string> &,const Ice::optional<::std::string> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)134 InitialI::opStringAsync(Ice::optional<::std::string> p1,
135                              ::std::function<void(const Ice::optional<::std::string>&, const Ice::optional<::std::string>&)> response,
136                              ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
137 {
138     response(p1, p1);
139 }
140 
141 void
opCustomStringAsync(Ice::optional<Util::string_view> p1,::std::function<void (const Ice::optional<Util::string_view> &,const Ice::optional<Util::string_view> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)142 InitialI::opCustomStringAsync(Ice::optional<Util::string_view> p1,
143                                    ::std::function<void(const Ice::optional<Util::string_view>&, const Ice::optional<Util::string_view>&)> response,
144                                    ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
145 {
146     response(p1, p1);
147 }
148 
149 void
opMyEnumAsync(Ice::optional<::Test::MyEnum> p1,::std::function<void (const Ice::optional<::Test::MyEnum> &,const Ice::optional<::Test::MyEnum> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)150 InitialI::opMyEnumAsync(Ice::optional<::Test::MyEnum> p1,
151                              ::std::function<void(const Ice::optional<::Test::MyEnum>&, const Ice::optional<::Test::MyEnum>&)> response,
152                              ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
153 {
154     response(p1, p1);
155 }
156 
157 void
opSmallStructAsync(Ice::optional<::Test::SmallStruct> p1,::std::function<void (const Ice::optional<::Test::SmallStruct> &,const Ice::optional<::Test::SmallStruct> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)158 InitialI::opSmallStructAsync(Ice::optional<::Test::SmallStruct> p1,
159                                   ::std::function<void(const Ice::optional<::Test::SmallStruct>&, const Ice::optional<::Test::SmallStruct>&)> response,
160                                   ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
161 {
162     response(p1, p1);
163 }
164 
165 void
opFixedStructAsync(Ice::optional<::Test::FixedStruct> p1,::std::function<void (const Ice::optional<::Test::FixedStruct> &,const Ice::optional<::Test::FixedStruct> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)166 InitialI::opFixedStructAsync(Ice::optional<::Test::FixedStruct> p1,
167                                   ::std::function<void(const Ice::optional<::Test::FixedStruct>&, const Ice::optional<::Test::FixedStruct>&)> response,
168                                   ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
169 {
170     response(p1, p1);
171 }
172 
173 void
opVarStructAsync(Ice::optional<::Test::VarStruct> p1,::std::function<void (const Ice::optional<::Test::VarStruct> &,const Ice::optional<::Test::VarStruct> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)174 InitialI::opVarStructAsync(Ice::optional<::Test::VarStruct> p1,
175                                 ::std::function<void(const Ice::optional<::Test::VarStruct>&, const Ice::optional<::Test::VarStruct>&)> response,
176                                 ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
177 {
178     response(p1, p1);
179 }
180 
181 void
opOneOptionalAsync(Ice::optional<::std::shared_ptr<::Test::OneOptional>> p1,::std::function<void (const Ice::optional<::std::shared_ptr<::Test::OneOptional>> &,const Ice::optional<::std::shared_ptr<::Test::OneOptional>> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)182 InitialI::opOneOptionalAsync(Ice::optional<::std::shared_ptr<::Test::OneOptional>> p1,
183                                   ::std::function<void(const Ice::optional<::std::shared_ptr<::Test::OneOptional>>&, const Ice::optional<::std::shared_ptr<::Test::OneOptional>>&)> response,
184                                   ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
185 {
186     response(p1, p1);
187 }
188 
189 void
opOneOptionalProxyAsync(Ice::optional<::std::shared_ptr<::Ice::ObjectPrx>> p1,::std::function<void (const Ice::optional<::std::shared_ptr<::Ice::ObjectPrx>> &,const Ice::optional<::std::shared_ptr<::Ice::ObjectPrx>> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)190 InitialI::opOneOptionalProxyAsync(Ice::optional<::std::shared_ptr<::Ice::ObjectPrx>> p1,
191                                        ::std::function<void(const Ice::optional<::std::shared_ptr<::Ice::ObjectPrx>>&, const Ice::optional<::std::shared_ptr<::Ice::ObjectPrx>>&)> response,
192                                        ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
193 {
194     response(p1, p1);
195 }
196 
197 void
opByteSeqAsync(Ice::optional<::std::pair<const::Ice::Byte *,const::Ice::Byte * >> p1,::std::function<void (const Ice::optional<::std::pair<const::Ice::Byte *,const::Ice::Byte * >> &,const Ice::optional<::std::pair<const::Ice::Byte *,const::Ice::Byte * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)198 InitialI::opByteSeqAsync(Ice::optional<::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>> p1,
199                               ::std::function<void(const Ice::optional<::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>>&, const Ice::optional<::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>>&)> response,
200                               ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
201 {
202     response(p1, p1);
203 }
204 
205 void
opBoolSeqAsync(Ice::optional<::std::pair<const bool *,const bool * >> p1,::std::function<void (const Ice::optional<::std::pair<const bool *,const bool * >> &,const Ice::optional<::std::pair<const bool *,const bool * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)206 InitialI::opBoolSeqAsync(Ice::optional<::std::pair<const bool*, const bool*>> p1,
207                               ::std::function<void(const Ice::optional<::std::pair<const bool*, const bool*>>&, const Ice::optional<::std::pair<const bool*, const bool*>>&)> response,
208                               ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
209 {
210     response(p1, p1);
211 }
212 
213 void
opShortSeqAsync(Ice::optional<::std::pair<const short *,const short * >> p1,::std::function<void (const Ice::optional<::std::pair<const short *,const short * >> &,const Ice::optional<::std::pair<const short *,const short * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)214 InitialI::opShortSeqAsync(Ice::optional<::std::pair<const short*, const short*>> p1,
215                                ::std::function<void(const Ice::optional<::std::pair<const short*, const short*>>&, const Ice::optional<::std::pair<const short*, const short*>>&)> response,
216                                ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
217 {
218     response(p1, p1);
219 }
220 
221 void
opIntSeqAsync(Ice::optional<::std::pair<const int *,const int * >> p1,::std::function<void (const Ice::optional<::std::pair<const int *,const int * >> &,const Ice::optional<::std::pair<const int *,const int * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)222 InitialI::opIntSeqAsync(Ice::optional<::std::pair<const int*, const int*>> p1,
223                              ::std::function<void(const Ice::optional<::std::pair<const int*, const int*>>&, const Ice::optional<::std::pair<const int*, const int*>>&)> response,
224                              ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
225 {
226     response(p1, p1);
227 }
228 
229 void
opLongSeqAsync(Ice::optional<::std::pair<const long long int *,const long long int * >> p1,::std::function<void (const Ice::optional<::std::pair<const long long int *,const long long int * >> &,const Ice::optional<::std::pair<const long long int *,const long long int * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)230 InitialI::opLongSeqAsync(Ice::optional<::std::pair<const long long int*, const long long int*>> p1,
231                               ::std::function<void(const Ice::optional<::std::pair<const long long int*, const long long int*>>&, const Ice::optional<::std::pair<const long long int*, const long long int*>>&)> response,
232                               ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
233 {
234     response(p1, p1);
235 }
236 
237 void
opFloatSeqAsync(Ice::optional<::std::pair<const float *,const float * >> p1,::std::function<void (const Ice::optional<::std::pair<const float *,const float * >> &,const Ice::optional<::std::pair<const float *,const float * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)238 InitialI::opFloatSeqAsync(Ice::optional<::std::pair<const float*, const float*>> p1,
239                                ::std::function<void(const Ice::optional<::std::pair<const float*, const float*>>&, const Ice::optional<::std::pair<const float*, const float*>>&)> response,
240                                ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
241 {
242     response(p1, p1);
243 }
244 
245 void
opDoubleSeqAsync(Ice::optional<::std::pair<const double *,const double * >> p1,::std::function<void (const Ice::optional<::std::pair<const double *,const double * >> &,const Ice::optional<::std::pair<const double *,const double * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)246 InitialI::opDoubleSeqAsync(Ice::optional<::std::pair<const double*, const double*>> p1,
247                                 ::std::function<void(const Ice::optional<::std::pair<const double*, const double*>>&, const Ice::optional<::std::pair<const double*, const double*>>&)> response,
248                                 ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
249 {
250     response(p1, p1);
251 }
252 
253 void
opStringSeqAsync(Ice::optional<::Test::StringSeq> p1,::std::function<void (const Ice::optional<::Test::StringSeq> &,const Ice::optional<::Test::StringSeq> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)254 InitialI::opStringSeqAsync(Ice::optional<::Test::StringSeq> p1,
255                                 ::std::function<void(const Ice::optional<::Test::StringSeq>&, const Ice::optional<::Test::StringSeq>&)> response,
256                                 ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
257 {
258     response(p1, p1);
259 }
260 
261 void
opSmallStructSeqAsync(Ice::optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> p1,::std::function<void (const Ice::optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> &,const Ice::optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)262 InitialI::opSmallStructSeqAsync(Ice::optional<::std::pair<const ::Test::SmallStruct*, const ::Test::SmallStruct*>> p1,
263                                      ::std::function<void(const Ice::optional<::std::pair<const ::Test::SmallStruct*, const ::Test::SmallStruct*>>&, const Ice::optional<::std::pair<const ::Test::SmallStruct*, const ::Test::SmallStruct*>>&)> response,
264                                      ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
265 {
266     response(p1, p1);
267 }
268 
269 void
opSmallStructListAsync(Ice::optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> p1,::std::function<void (const Ice::optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> &,const Ice::optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)270 InitialI::opSmallStructListAsync(Ice::optional<::std::pair<const ::Test::SmallStruct*, const ::Test::SmallStruct*>> p1,
271                                       ::std::function<void(const Ice::optional<::std::pair<const ::Test::SmallStruct*, const ::Test::SmallStruct*>>&, const Ice::optional<::std::pair<const ::Test::SmallStruct*, const ::Test::SmallStruct*>>&)> response,
272                                       ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
273 {
274     response(p1, p1);
275 }
276 
277 void
opFixedStructSeqAsync(Ice::optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> p1,::std::function<void (const Ice::optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> &,const Ice::optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)278 InitialI::opFixedStructSeqAsync(Ice::optional<::std::pair<const ::Test::FixedStruct*, const ::Test::FixedStruct*>> p1,
279                                      ::std::function<void(const Ice::optional<::std::pair<const ::Test::FixedStruct*, const ::Test::FixedStruct*>>&, const Ice::optional<::std::pair<const ::Test::FixedStruct*, const ::Test::FixedStruct*>>&)> response,
280                                      ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
281 {
282     response(p1, p1);
283 }
284 
285 void
opFixedStructListAsync(Ice::optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> p1,::std::function<void (const Ice::optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> &,const Ice::optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)286 InitialI::opFixedStructListAsync(Ice::optional<::std::pair<const ::Test::FixedStruct*, const ::Test::FixedStruct*>> p1,
287                                  ::std::function<void(const Ice::optional<::std::pair<const ::Test::FixedStruct*, const ::Test::FixedStruct*>>&, const Ice::optional<::std::pair<const ::Test::FixedStruct*, const ::Test::FixedStruct*>>&)> response,
288                                  ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
289 {
290     response(p1, p1);
291 }
292 
293 void
opVarStructSeqAsync(Ice::optional<::Test::VarStructSeq> p1,::std::function<void (const Ice::optional<::Test::VarStructSeq> &,const Ice::optional<::Test::VarStructSeq> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)294 InitialI::opVarStructSeqAsync(Ice::optional<::Test::VarStructSeq> p1,
295                               ::std::function<void(const Ice::optional<::Test::VarStructSeq>&, const Ice::optional<::Test::VarStructSeq>&)> response,
296                               ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
297 {
298     response(p1, p1);
299 }
300 
301 void
opSerializableAsync(Ice::optional<::Test::Serializable> p1,::std::function<void (const Ice::optional<::Test::Serializable> &,const Ice::optional<::Test::Serializable> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)302 InitialI::opSerializableAsync(Ice::optional<::Test::Serializable> p1,
303                               ::std::function<void(const Ice::optional<::Test::Serializable>&, const Ice::optional<::Test::Serializable>&)> response,
304                               ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
305 {
306     response(p1, p1);
307 }
308 
309 void
opIntIntDictAsync(Ice::optional<::Test::IntIntDict> p1,::std::function<void (const Ice::optional<::Test::IntIntDict> &,const Ice::optional<::Test::IntIntDict> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)310 InitialI::opIntIntDictAsync(Ice::optional<::Test::IntIntDict> p1,
311                             ::std::function<void(const Ice::optional<::Test::IntIntDict>&, const Ice::optional<::Test::IntIntDict>&)> response,
312                             ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
313 {
314     response(p1, p1);
315 }
316 
317 void
opStringIntDictAsync(Ice::optional<::Test::StringIntDict> p1,::std::function<void (const Ice::optional<::Test::StringIntDict> &,const Ice::optional<::Test::StringIntDict> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)318 InitialI::opStringIntDictAsync(Ice::optional<::Test::StringIntDict> p1,
319                                ::std::function<void(const Ice::optional<::Test::StringIntDict>&, const Ice::optional<::Test::StringIntDict>&)> response,
320                                ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
321 {
322     response(p1, p1);
323 }
324 
325 void
opIntOneOptionalDictAsync(Ice::optional<::Test::IntOneOptionalDict> p1,::std::function<void (const Ice::optional<::Test::IntOneOptionalDict> &,const Ice::optional<::Test::IntOneOptionalDict> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)326 InitialI::opIntOneOptionalDictAsync(Ice::optional<::Test::IntOneOptionalDict> p1,
327                                     ::std::function<void(const Ice::optional<::Test::IntOneOptionalDict>&, const Ice::optional<::Test::IntOneOptionalDict>&)> response,
328                                     ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
329 {
330     response(p1, p1);
331 }
332 
333 void
opCustomIntStringDictAsync(Ice::optional<::std::map<int,::Util::string_view>> p1,::std::function<void (const Ice::optional<::std::map<int,::Util::string_view>> &,const Ice::optional<::std::map<int,::Util::string_view>> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)334 InitialI::opCustomIntStringDictAsync(Ice::optional<::std::map< int, ::Util::string_view>> p1,
335                                      ::std::function<void(const Ice::optional<::std::map< int, ::Util::string_view>>&, const Ice::optional<::std::map< int, ::Util::string_view>>&)> response,
336                                      ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
337 {
338     response(p1, p1);
339 }
340 
341 void
opClassAndUnknownOptionalAsync(::std::shared_ptr<::Test::A>,::std::function<void ()> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)342 InitialI::opClassAndUnknownOptionalAsync(::std::shared_ptr<::Test::A>,
343                                          ::std::function<void()> response,
344                                          ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
345 {
346     response();
347 }
348 
349 void
sendOptionalClassAsync(bool,Ice::optional<::std::shared_ptr<::Test::OneOptional>>,::std::function<void ()> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)350 InitialI::sendOptionalClassAsync(bool, Ice::optional<::std::shared_ptr<::Test::OneOptional>>,
351                                  ::std::function<void()> response,
352                                  ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
353 {
354     response();
355 }
356 
357 void
returnOptionalClassAsync(bool,::std::function<void (const Ice::optional<::std::shared_ptr<::Test::OneOptional>> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)358 InitialI::returnOptionalClassAsync(bool,
359                                    ::std::function<void(const Ice::optional<::std::shared_ptr<::Test::OneOptional>>&)> response,
360                                    ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
361 {
362     response(make_shared<OneOptional>(53));
363 }
364 
365 void
opGAsync(::std::shared_ptr<::Test::G> g,::std::function<void (const::std::shared_ptr<::Test::G> &)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)366 InitialI::opGAsync(::std::shared_ptr<::Test::G> g,
367                    ::std::function<void(const ::std::shared_ptr<::Test::G>&)> response,
368                    ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
369 {
370     response(g);
371 }
372 
373 void
opVoidAsync(::std::function<void ()> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)374 InitialI::opVoidAsync(::std::function<void()> response,
375                       ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
376 {
377     response();
378 }
379 
380 #ifdef ICE_CPP11_MAPPING
381 void
opMStruct1Async(function<void (const OpMStruct1MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)382 InitialI::opMStruct1Async(function<void(const OpMStruct1MarshaledResult&)> response,
383                           function<void(exception_ptr)>,
384                           const Ice::Current& current)
385 {
386     response(OpMStruct1MarshaledResult(Test::SmallStruct(), current));
387 }
388 
389 void
opMStruct2Async(Ice::optional<SmallStruct> p1,function<void (const OpMStruct2MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)390 InitialI::opMStruct2Async(Ice::optional<SmallStruct> p1,
391                          function<void(const OpMStruct2MarshaledResult&)> response,
392                          function<void(exception_ptr)>,
393                          const Ice::Current& current)
394 {
395     response(OpMStruct2MarshaledResult(p1, p1, current));
396 }
397 
398 void
opMSeq1Async(function<void (const OpMSeq1MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)399 InitialI::opMSeq1Async(function<void(const OpMSeq1MarshaledResult&)> response,
400                        function<void(exception_ptr)>,
401                        const Ice::Current& current)
402 {
403     response(OpMSeq1MarshaledResult(Test::StringSeq(), current));
404 }
405 
406 void
opMSeq2Async(Ice::optional<Test::StringSeq> p1,function<void (const OpMSeq2MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)407 InitialI::opMSeq2Async(Ice::optional<Test::StringSeq> p1,
408                        function<void(const OpMSeq2MarshaledResult&)> response,
409                        function<void(exception_ptr)>,
410                        const Ice::Current& current)
411 {
412     response(OpMSeq2MarshaledResult(p1, p1, current));
413 }
414 
415 void
opMDict1Async(function<void (const OpMDict1MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)416 InitialI::opMDict1Async(function<void(const OpMDict1MarshaledResult&)> response,
417                         function<void(exception_ptr)>,
418                         const Ice::Current& current)
419 {
420     response(OpMDict1MarshaledResult(StringIntDict(), current));
421 }
422 
423 void
opMDict2Async(Ice::optional<StringIntDict> p1,function<void (const OpMDict2MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)424 InitialI::opMDict2Async(Ice::optional<StringIntDict> p1,
425                         function<void(const OpMDict2MarshaledResult&)> response,
426                         function<void(exception_ptr)>,
427                         const Ice::Current& current)
428 {
429     response(OpMDict2MarshaledResult(p1, p1, current));
430 }
431 
432 void
opMG1Async(function<void (const OpMG1MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)433 InitialI::opMG1Async(function<void(const OpMG1MarshaledResult&)> response,
434                      function<void(exception_ptr)>,
435                      const Ice::Current& current)
436 {
437     response(OpMG1MarshaledResult(ICE_MAKE_SHARED(G), current));
438 }
439 
440 void
opMG2Async(Ice::optional<GPtr> p1,function<void (const OpMG2MarshaledResult &)> response,function<void (exception_ptr)>,const Ice::Current & current)441 InitialI::opMG2Async(Ice::optional<GPtr> p1,
442                      function<void(const OpMG2MarshaledResult&)> response,
443                      function<void(exception_ptr)>,
444                      const Ice::Current& current)
445 {
446     response(OpMG2MarshaledResult(p1, p1, current));
447 }
448 #else
449 void
opMStruct1Async(function<void (const Ice::optional<SmallStruct> &)> response,function<void (exception_ptr)>,const Ice::Current &)450 InitialI::opMStruct1Async(function<void(const Ice::optional<SmallStruct>&)> response,
451                           function<void(exception_ptr)>,
452                           const Ice::Current&)
453 {
454     response(Test::SmallStruct());
455 }
456 
457 void
opMStruct2Async(Ice::optional<SmallStruct> p1,function<void (const Ice::optional<SmallStruct> &,const Ice::optional<SmallStruct> &)> response,function<void (exception_ptr)>,const Ice::Current &)458 InitialI::opMStruct2Async(Ice::optional<SmallStruct> p1,
459                           function<void(const Ice::optional<SmallStruct>&, const Ice::optional<SmallStruct>&)> response,
460                           function<void(exception_ptr)>,
461                           const Ice::Current&)
462 {
463     response(p1, p1);
464 }
465 
466 void
opMSeq1Async(function<void (const Ice::optional<Test::StringSeq> &)> response,function<void (exception_ptr)>,const Ice::Current &)467 InitialI::opMSeq1Async(function<void(const Ice::optional<Test::StringSeq>&)> response,
468                        function<void(exception_ptr)>,
469                        const Ice::Current&)
470 {
471     response(Test::StringSeq());
472 }
473 
474 void
opMSeq2Async(Ice::optional<Test::StringSeq> p1,function<void (const Ice::optional<Test::StringSeq> &,const Ice::optional<Test::StringSeq> &)> response,function<void (exception_ptr)>,const Ice::Current &)475 InitialI::opMSeq2Async(Ice::optional<Test::StringSeq> p1,
476                        function<void(const Ice::optional<Test::StringSeq>&, const Ice::optional<Test::StringSeq>&)> response,
477                        function<void(exception_ptr)>,
478                        const Ice::Current&)
479 {
480     response(p1, p1);
481 }
482 
483 void
opMDict1Async(function<void (const Ice::optional<StringIntDict> &)> response,function<void (exception_ptr)>,const Ice::Current &)484 InitialI::opMDict1Async(function<void(const Ice::optional<StringIntDict>&)> response,
485                         function<void(exception_ptr)>,
486                         const Ice::Current&)
487 {
488     response(StringIntDict());
489 }
490 
491 void
opMDict2Async(Ice::optional<StringIntDict> p1,function<void (const Ice::optional<StringIntDict> &,const Ice::optional<StringIntDict> &)> response,function<void (exception_ptr)>,const Ice::Current &)492 InitialI::opMDict2Async(Ice::optional<StringIntDict> p1,
493                         function<void(const Ice::optional<StringIntDict>&, const Ice::optional<StringIntDict>&)> response,
494                         function<void(exception_ptr)>,
495                         const Ice::Current&)
496 {
497     response(p1, p1);
498 }
499 
500 void
opMG1Async(function<void (const Ice::optional<shared_ptr<G>> &)> response,function<void (exception_ptr)>,const Ice::Current &)501 InitialI::opMG1Async(function<void(const Ice::optional<shared_ptr<G>>&)> response,
502                      function<void(exception_ptr)>,
503                      const Ice::Current&)
504 {
505     response(ICE_MAKE_SHARED(G));
506 }
507 
508 void
opMG2Async(Ice::optional<GPtr> p1,function<void (const Ice::optional<shared_ptr<G>> &,const Ice::optional<shared_ptr<G>> &)> response,function<void (exception_ptr)>,const Ice::Current &)509 InitialI::opMG2Async(Ice::optional<GPtr> p1,
510                      function<void(const Ice::optional<shared_ptr<G>>&, const Ice::optional<shared_ptr<G>>&)> response,
511                      function<void(exception_ptr)>,
512                      const Ice::Current&)
513 {
514     response(p1, p1);
515 }
516 #endif
517 
518 void
supportsRequiredParamsAsync(::std::function<void (bool)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)519 InitialI::supportsRequiredParamsAsync(::std::function<void(bool)> response,
520                                       ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
521 {
522     response(false);
523 }
524 
525 void
supportsJavaSerializableAsync(::std::function<void (bool)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)526 InitialI::supportsJavaSerializableAsync(::std::function<void(bool)> response,
527                                         ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
528 {
529     response(true);
530 }
531 
532 void
supportsCsharpSerializableAsync(::std::function<void (bool)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)533 InitialI::supportsCsharpSerializableAsync(::std::function<void(bool)> response,
534                                           ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
535 {
536     response(true);
537 }
538 
539 void
supportsCppStringViewAsync(::std::function<void (bool)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)540 InitialI::supportsCppStringViewAsync(::std::function<void(bool)> response,
541                                      ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
542 {
543     response(true);
544 }
545 
546 void
supportsNullOptionalAsync(::std::function<void (bool)> response,::std::function<void (::std::exception_ptr)>,const Ice::Current &)547 InitialI::supportsNullOptionalAsync(::std::function<void(bool)> response,
548                                     ::std::function<void(::std::exception_ptr)>, const Ice::Current&)
549 {
550     response(true);
551 }
552 
553 #else // C++98 mapping
554 
555 void
shutdown_async(const::Test::AMD_Initial_shutdownPtr & cb,const Ice::Current & current)556 InitialI::shutdown_async(const ::Test::AMD_Initial_shutdownPtr& cb,
557                          const Ice::Current& current)
558 {
559     current.adapter->getCommunicator()->shutdown();
560     cb->ice_response();
561 }
562 
563 void
pingPong_async(const::Test::AMD_Initial_pingPongPtr & cb,const Ice::ObjectPtr & obj,const Ice::Current &)564 InitialI::pingPong_async(const ::Test::AMD_Initial_pingPongPtr& cb,
565                          const Ice::ObjectPtr& obj,
566                          const Ice::Current&)
567 {
568     cb->ice_response(obj);
569 }
570 
571 void
opOptionalException_async(const::Test::AMD_Initial_opOptionalExceptionPtr & cb,const IceUtil::Optional<::Ice::Int> & a,const IceUtil::Optional<::std::string> & b,const IceUtil::Optional<Test::OneOptionalPtr> & o,const Ice::Current &)572 InitialI::opOptionalException_async(const ::Test::AMD_Initial_opOptionalExceptionPtr& cb,
573                                     const IceUtil::Optional< ::Ice::Int>& a,
574                                     const IceUtil::Optional< ::std::string>& b,
575                                     const IceUtil::Optional<Test::OneOptionalPtr>& o,
576                                     const Ice::Current&)
577 {
578     OptionalException ex;
579     ex.a = a;
580     ex.b = b;
581     ex.o = o;
582     cb->ice_exception(ex);
583 }
584 
585 void
opDerivedException_async(const::Test::AMD_Initial_opDerivedExceptionPtr & cb,const IceUtil::Optional<::Ice::Int> & a,const IceUtil::Optional<::std::string> & b,const IceUtil::Optional<Test::OneOptionalPtr> & o,const Ice::Current &)586 InitialI::opDerivedException_async(const ::Test::AMD_Initial_opDerivedExceptionPtr& cb,
587                                    const IceUtil::Optional< ::Ice::Int>& a,
588                                    const IceUtil::Optional< ::std::string>& b,
589                                    const IceUtil::Optional<Test::OneOptionalPtr>& o,
590                                    const Ice::Current&)
591 {
592     DerivedException ex;
593     ex.a = a;
594     ex.b = b;
595     ex.o = o;
596     ex.ss = b;
597     ex.o2 = o;
598     cb->ice_exception(ex);
599 }
600 
601 void
opRequiredException_async(const::Test::AMD_Initial_opRequiredExceptionPtr & cb,const IceUtil::Optional<::Ice::Int> & a,const IceUtil::Optional<::std::string> & b,const IceUtil::Optional<Test::OneOptionalPtr> & o,const Ice::Current &)602 InitialI::opRequiredException_async(const ::Test::AMD_Initial_opRequiredExceptionPtr& cb,
603                                     const IceUtil::Optional< ::Ice::Int>& a,
604                                     const IceUtil::Optional< ::std::string>& b,
605                                     const IceUtil::Optional<Test::OneOptionalPtr>& o,
606                                     const Ice::Current&)
607 {
608     RequiredException ex;
609     ex.a = a;
610     ex.b = b;
611     ex.o = o;
612     if(b)
613     {
614         ex.ss = b.get();
615     }
616     if(o)
617     {
618         ex.o2 = o.get();
619     }
620     cb->ice_exception(ex);
621 }
622 
623 void
opByte_async(const::Test::AMD_Initial_opBytePtr & cb,const IceUtil::Optional<::Ice::Byte> & p1,const::Ice::Current &)624 InitialI::opByte_async(const ::Test::AMD_Initial_opBytePtr& cb,
625                        const IceUtil::Optional< ::Ice::Byte>& p1,
626                        const ::Ice::Current&)
627 {
628     cb->ice_response(p1, p1);
629 }
630 
631 void
opBool_async(const::Test::AMD_Initial_opBoolPtr & cb,const IceUtil::Optional<bool> & p1,const::Ice::Current &)632 InitialI::opBool_async(const ::Test::AMD_Initial_opBoolPtr& cb,
633                        const IceUtil::Optional<bool>& p1,
634                        const ::Ice::Current&)
635 {
636     cb->ice_response(p1, p1);
637 }
638 
639 void
opShort_async(const::Test::AMD_Initial_opShortPtr & cb,const IceUtil::Optional<::Ice::Short> & p1,const::Ice::Current &)640 InitialI::opShort_async(const ::Test::AMD_Initial_opShortPtr& cb,
641                         const IceUtil::Optional< ::Ice::Short>& p1,
642                         const ::Ice::Current&)
643 {
644     cb->ice_response(p1, p1);
645 }
646 
647 void
opInt_async(const::Test::AMD_Initial_opIntPtr & cb,const IceUtil::Optional<::Ice::Int> & p1,const::Ice::Current &)648 InitialI::opInt_async(const ::Test::AMD_Initial_opIntPtr& cb,
649                       const IceUtil::Optional< ::Ice::Int>& p1,
650                       const ::Ice::Current&)
651 {
652     cb->ice_response(p1, p1);
653 }
654 
655 void
opLong_async(const::Test::AMD_Initial_opLongPtr & cb,const IceUtil::Optional<::Ice::Long> & p1,const::Ice::Current &)656 InitialI::opLong_async(const ::Test::AMD_Initial_opLongPtr& cb,
657                        const IceUtil::Optional< ::Ice::Long>& p1,
658                        const ::Ice::Current&)
659 {
660     cb->ice_response(p1, p1);
661 }
662 
663 void
opFloat_async(const::Test::AMD_Initial_opFloatPtr & cb,const IceUtil::Optional<::Ice::Float> & p1,const::Ice::Current &)664 InitialI::opFloat_async(const ::Test::AMD_Initial_opFloatPtr& cb,
665                         const IceUtil::Optional< ::Ice::Float>& p1,
666                         const ::Ice::Current&)
667 {
668     cb->ice_response(p1, p1);
669 }
670 
671 void
opDouble_async(const::Test::AMD_Initial_opDoublePtr & cb,const IceUtil::Optional<::Ice::Double> & p1,const::Ice::Current &)672 InitialI::opDouble_async(const ::Test::AMD_Initial_opDoublePtr& cb,
673                          const IceUtil::Optional< ::Ice::Double>& p1,
674                          const ::Ice::Current&)
675 {
676     cb->ice_response(p1, p1);
677 }
678 
679 void
opString_async(const::Test::AMD_Initial_opStringPtr & cb,const IceUtil::Optional<::std::string> & p1,const::Ice::Current &)680 InitialI::opString_async(const ::Test::AMD_Initial_opStringPtr& cb,
681                          const IceUtil::Optional< ::std::string>& p1,
682                          const ::Ice::Current&)
683 {
684     cb->ice_response(p1, p1);
685 }
686 
687 void
opCustomString_async(const::Test::AMD_Initial_opCustomStringPtr & cb,const IceUtil::Optional<Util::string_view> & p1,const::Ice::Current &)688 InitialI::opCustomString_async(const ::Test::AMD_Initial_opCustomStringPtr& cb,
689                                const IceUtil::Optional< Util::string_view>& p1,
690                                const ::Ice::Current&)
691 {
692     cb->ice_response(p1, p1);
693 }
694 
695 void
opMyEnum_async(const::Test::AMD_Initial_opMyEnumPtr & cb,const IceUtil::Optional<Test::MyEnum> & p1,const::Ice::Current &)696 InitialI::opMyEnum_async(const ::Test::AMD_Initial_opMyEnumPtr& cb,
697                          const IceUtil::Optional<Test::MyEnum>& p1,
698                          const ::Ice::Current&)
699 {
700     cb->ice_response(p1, p1);
701 }
702 
703 void
opSmallStruct_async(const::Test::AMD_Initial_opSmallStructPtr & cb,const IceUtil::Optional<Test::SmallStruct> & p1,const::Ice::Current &)704 InitialI::opSmallStruct_async(const ::Test::AMD_Initial_opSmallStructPtr& cb,
705                               const IceUtil::Optional<Test::SmallStruct>& p1,
706                               const ::Ice::Current&)
707 {
708     cb->ice_response(p1, p1);
709 }
710 
711 void
opFixedStruct_async(const::Test::AMD_Initial_opFixedStructPtr & cb,const IceUtil::Optional<Test::FixedStruct> & p1,const::Ice::Current &)712 InitialI::opFixedStruct_async(const ::Test::AMD_Initial_opFixedStructPtr& cb,
713                               const IceUtil::Optional<Test::FixedStruct>& p1,
714                               const ::Ice::Current&)
715 {
716     cb->ice_response(p1, p1);
717 }
718 
719 void
opVarStruct_async(const::Test::AMD_Initial_opVarStructPtr & cb,const IceUtil::Optional<Test::VarStruct> & p1,const::Ice::Current &)720 InitialI::opVarStruct_async(const ::Test::AMD_Initial_opVarStructPtr& cb,
721                             const IceUtil::Optional<Test::VarStruct>& p1,
722                             const ::Ice::Current&)
723 {
724     cb->ice_response(p1, p1);
725 }
726 
727 void
opOneOptional_async(const::Test::AMD_Initial_opOneOptionalPtr & cb,const IceUtil::Optional<Test::OneOptionalPtr> & p1,const::Ice::Current &)728 InitialI::opOneOptional_async(const ::Test::AMD_Initial_opOneOptionalPtr& cb,
729                               const IceUtil::Optional< Test::OneOptionalPtr>& p1,
730                               const ::Ice::Current&)
731 {
732     cb->ice_response(p1, p1);
733 }
734 
735 void
opOneOptionalProxy_async(const::Test::AMD_Initial_opOneOptionalProxyPtr & cb,const IceUtil::Optional<Test::OneOptionalPrx> & p1,const::Ice::Current &)736 InitialI::opOneOptionalProxy_async(const ::Test::AMD_Initial_opOneOptionalProxyPtr& cb,
737                                    const IceUtil::Optional< Test::OneOptionalPrx>& p1,
738                                    const ::Ice::Current&)
739 {
740     cb->ice_response(p1, p1);
741 }
742 
743 void
opByteSeq_async(const::Test::AMD_Initial_opByteSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Ice::Byte *,const::Ice::Byte * >> & p1,const::Ice::Current &)744 InitialI::opByteSeq_async(const ::Test::AMD_Initial_opByteSeqPtr& cb,
745                           const IceUtil::Optional< ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*> >& p1,
746                           const ::Ice::Current&)
747 {
748     cb->ice_response(p1, p1);
749 }
750 
751 void
opBoolSeq_async(const::Test::AMD_Initial_opBoolSeqPtr & cb,const IceUtil::Optional<::std::pair<const bool *,const bool * >> & p1,const::Ice::Current &)752 InitialI::opBoolSeq_async(const ::Test::AMD_Initial_opBoolSeqPtr& cb,
753                           const IceUtil::Optional< ::std::pair<const bool*, const bool*> >& p1,
754                           const ::Ice::Current&)
755 {
756     cb->ice_response(p1, p1);
757 }
758 
759 void
opShortSeq_async(const::Test::AMD_Initial_opShortSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Ice::Short *,const::Ice::Short * >> & p1,const::Ice::Current &)760 InitialI::opShortSeq_async(const ::Test::AMD_Initial_opShortSeqPtr& cb,
761                            const IceUtil::Optional< ::std::pair<const ::Ice::Short*, const ::Ice::Short*> >& p1,
762                            const ::Ice::Current&)
763 {
764     cb->ice_response(p1, p1);
765 }
766 
767 void
opIntSeq_async(const::Test::AMD_Initial_opIntSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Ice::Int *,const::Ice::Int * >> & p1,const::Ice::Current &)768 InitialI::opIntSeq_async(const ::Test::AMD_Initial_opIntSeqPtr& cb,
769                          const IceUtil::Optional< ::std::pair<const ::Ice::Int*, const ::Ice::Int*> >& p1,
770                          const ::Ice::Current&)
771 {
772     cb->ice_response(p1, p1);
773 }
774 
775 void
opLongSeq_async(const::Test::AMD_Initial_opLongSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Ice::Long *,const::Ice::Long * >> & p1,const::Ice::Current &)776 InitialI::opLongSeq_async(const ::Test::AMD_Initial_opLongSeqPtr& cb,
777                           const IceUtil::Optional< ::std::pair<const ::Ice::Long*, const ::Ice::Long*> >& p1,
778                           const ::Ice::Current&)
779 {
780     cb->ice_response(p1, p1);
781 }
782 
783 void
opFloatSeq_async(const::Test::AMD_Initial_opFloatSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Ice::Float *,const::Ice::Float * >> & p1,const::Ice::Current &)784 InitialI::opFloatSeq_async(const ::Test::AMD_Initial_opFloatSeqPtr& cb,
785                            const IceUtil::Optional< ::std::pair<const ::Ice::Float*, const ::Ice::Float*> >& p1,
786                            const ::Ice::Current&)
787 {
788     cb->ice_response(p1, p1);
789 }
790 
791 void
opDoubleSeq_async(const::Test::AMD_Initial_opDoubleSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Ice::Double *,const::Ice::Double * >> & p1,const::Ice::Current &)792 InitialI::opDoubleSeq_async(const ::Test::AMD_Initial_opDoubleSeqPtr& cb,
793                             const IceUtil::Optional< ::std::pair<const ::Ice::Double*, const ::Ice::Double*> >& p1,
794                             const ::Ice::Current&)
795 {
796     cb->ice_response(p1, p1);
797 }
798 
799 void
opStringSeq_async(const::Test::AMD_Initial_opStringSeqPtr & cb,const IceUtil::Optional<::std::pair<::Test::StringSeq::const_iterator,::Test::StringSeq::const_iterator>> & p1,const::Ice::Current &)800 InitialI::opStringSeq_async(const ::Test::AMD_Initial_opStringSeqPtr& cb,
801                             const IceUtil::Optional< ::std::pair< ::Test::StringSeq::const_iterator,
802                                                                   ::Test::StringSeq::const_iterator> >& p1,
803                             const ::Ice::Current&)
804 {
805     cb->ice_response(p1, p1);
806 }
807 
808 void
opSmallStructSeq_async(const::Test::AMD_Initial_opSmallStructSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> & p1,const::Ice::Current &)809 InitialI::opSmallStructSeq_async(const ::Test::AMD_Initial_opSmallStructSeqPtr& cb,
810                                  const IceUtil::Optional< ::std::pair<const ::Test::SmallStruct*,
811                                                                       const ::Test::SmallStruct*> >& p1,
812                                  const ::Ice::Current&)
813 {
814     cb->ice_response(p1, p1);
815 }
816 
817 void
opSmallStructList_async(const::Test::AMD_Initial_opSmallStructListPtr & cb,const IceUtil::Optional<::std::pair<const::Test::SmallStruct *,const::Test::SmallStruct * >> & p1,const::Ice::Current &)818 InitialI::opSmallStructList_async(const ::Test::AMD_Initial_opSmallStructListPtr& cb,
819                                   const IceUtil::Optional< ::std::pair<const ::Test::SmallStruct*,
820                                                                        const ::Test::SmallStruct*> >& p1,
821                                   const ::Ice::Current&)
822 {
823     cb->ice_response(p1, p1);
824 }
825 
826 void
opFixedStructSeq_async(const::Test::AMD_Initial_opFixedStructSeqPtr & cb,const IceUtil::Optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> & p1,const::Ice::Current &)827 InitialI::opFixedStructSeq_async(const ::Test::AMD_Initial_opFixedStructSeqPtr& cb,
828                                  const IceUtil::Optional< ::std::pair<const ::Test::FixedStruct*,
829                                                                       const ::Test::FixedStruct*> >& p1,
830                                  const ::Ice::Current&)
831 {
832     cb->ice_response(p1, p1);
833 }
834 
835 void
opFixedStructList_async(const::Test::AMD_Initial_opFixedStructListPtr & cb,const IceUtil::Optional<::std::pair<const::Test::FixedStruct *,const::Test::FixedStruct * >> & p1,const::Ice::Current &)836 InitialI::opFixedStructList_async(const ::Test::AMD_Initial_opFixedStructListPtr& cb,
837                                   const IceUtil::Optional< ::std::pair<const ::Test::FixedStruct*,
838                                                                        const ::Test::FixedStruct*> >& p1,
839                                   const ::Ice::Current&)
840 {
841     cb->ice_response(p1, p1);
842 }
843 
844 void
opVarStructSeq_async(const::Test::AMD_Initial_opVarStructSeqPtr & cb,const IceUtil::Optional<::std::pair<::Test::VarStructSeq::const_iterator,::Test::VarStructSeq::const_iterator>> & p1,const::Ice::Current &)845 InitialI::opVarStructSeq_async(const ::Test::AMD_Initial_opVarStructSeqPtr& cb,
846                                const IceUtil::Optional< ::std::pair< ::Test::VarStructSeq::const_iterator,
847                                                                      ::Test::VarStructSeq::const_iterator> >& p1,
848                                const ::Ice::Current&)
849 {
850     cb->ice_response(p1, p1);
851 }
852 
853 void
opSerializable_async(const::Test::AMD_Initial_opSerializablePtr & cb,const IceUtil::Optional<::Test::Serializable> & p1,const::Ice::Current &)854 InitialI::opSerializable_async(const ::Test::AMD_Initial_opSerializablePtr& cb,
855                                const IceUtil::Optional< ::Test::Serializable>& p1,
856                                const ::Ice::Current&)
857 {
858     cb->ice_response(p1, p1);
859 }
860 
861 void
opIntIntDict_async(const::Test::AMD_Initial_opIntIntDictPtr & cb,const IceUtil::Optional<::Test::IntIntDict> & p1,const::Ice::Current &)862 InitialI::opIntIntDict_async(const ::Test::AMD_Initial_opIntIntDictPtr& cb,
863                              const IceUtil::Optional< ::Test::IntIntDict>& p1,
864                              const ::Ice::Current&)
865 {
866     cb->ice_response(p1, p1);
867 }
868 
869 void
opStringIntDict_async(const::Test::AMD_Initial_opStringIntDictPtr & cb,const IceUtil::Optional<::Test::StringIntDict> & p1,const::Ice::Current &)870 InitialI::opStringIntDict_async(const ::Test::AMD_Initial_opStringIntDictPtr& cb,
871                                 const IceUtil::Optional< ::Test::StringIntDict>& p1,
872                                 const ::Ice::Current&)
873 {
874     cb->ice_response(p1, p1);
875 }
876 
877 void
opIntOneOptionalDict_async(const::Test::AMD_Initial_opIntOneOptionalDictPtr & cb,const IceUtil::Optional<::Test::IntOneOptionalDict> & p1,const::Ice::Current &)878 InitialI::opIntOneOptionalDict_async(const ::Test::AMD_Initial_opIntOneOptionalDictPtr& cb,
879                                      const IceUtil::Optional< ::Test::IntOneOptionalDict>& p1,
880                                      const ::Ice::Current&)
881 {
882     cb->ice_response(p1, p1);
883 }
884 
885 void
opCustomIntStringDict_async(const::Test::AMD_Initial_opCustomIntStringDictPtr & cb,const IceUtil::Optional<std::map<int,Util::string_view>> & p1,const::Ice::Current &)886 InitialI::opCustomIntStringDict_async(const ::Test::AMD_Initial_opCustomIntStringDictPtr& cb,
887                                       const IceUtil::Optional<std::map<int, Util::string_view> >& p1,
888                                       const ::Ice::Current&)
889 {
890     cb->ice_response(p1, p1);
891 }
892 
893 void
opClassAndUnknownOptional_async(const::Test::AMD_Initial_opClassAndUnknownOptionalPtr & cb,const Test::APtr &,const Ice::Current &)894 InitialI::opClassAndUnknownOptional_async(const ::Test::AMD_Initial_opClassAndUnknownOptionalPtr& cb,
895                                           const Test::APtr&,
896                                           const Ice::Current&)
897 {
898     cb->ice_response();
899 }
900 
901 void
sendOptionalClass_async(const::Test::AMD_Initial_sendOptionalClassPtr & cb,bool,const IceUtil::Optional<Test::OneOptionalPtr> &,const Ice::Current &)902 InitialI::sendOptionalClass_async(const ::Test::AMD_Initial_sendOptionalClassPtr& cb,
903                                   bool,
904                                   const IceUtil::Optional<Test::OneOptionalPtr>&,
905                                   const Ice::Current&)
906 {
907     cb->ice_response();
908 }
909 
910 void
returnOptionalClass_async(const::Test::AMD_Initial_returnOptionalClassPtr & cb,bool,const Ice::Current &)911 InitialI::returnOptionalClass_async(const ::Test::AMD_Initial_returnOptionalClassPtr& cb,
912                                     bool,
913                                     const Ice::Current&)
914 {
915     Optional<OneOptionalPtr> o = new OneOptional(53);
916     cb->ice_response(o);
917 }
918 
919 void
opG_async(const::Test::AMD_Initial_opGPtr & cb,const::Test::GPtr & g,const Ice::Current &)920 InitialI::opG_async(const ::Test::AMD_Initial_opGPtr& cb,
921                     const ::Test::GPtr& g,
922                     const Ice::Current&)
923 {
924     cb->ice_response(g);
925 }
926 
927 void
opVoid_async(const::Test::AMD_Initial_opVoidPtr & cb,const Ice::Current &)928 InitialI::opVoid_async(const ::Test::AMD_Initial_opVoidPtr& cb,
929                        const Ice::Current&)
930 {
931     cb->ice_response();
932 }
933 
934 void
opMStruct1_async(const Test::AMD_Initial_opMStruct1Ptr & cb,const Ice::Current &)935 InitialI::opMStruct1_async(const Test::AMD_Initial_opMStruct1Ptr& cb, const Ice::Current&)
936 {
937     cb->ice_response(Test::SmallStruct());
938 }
939 
940 void
opMStruct2_async(const Test::AMD_Initial_opMStruct2Ptr & cb,const IceUtil::Optional<Test::SmallStruct> & p1,const Ice::Current &)941 InitialI::opMStruct2_async(const Test::AMD_Initial_opMStruct2Ptr& cb,
942                            const IceUtil::Optional< Test::SmallStruct>& p1,
943                            const Ice::Current&)
944 {
945     cb->ice_response(p1, p1);
946 }
947 
948 void
opMSeq1_async(const Test::AMD_Initial_opMSeq1Ptr & cb,const Ice::Current &)949 InitialI::opMSeq1_async(const Test::AMD_Initial_opMSeq1Ptr& cb, const Ice::Current&)
950 {
951     cb->ice_response(Test::StringSeq());
952 }
953 
954 void
opMSeq2_async(const Test::AMD_Initial_opMSeq2Ptr & cb,const IceUtil::Optional<Test::StringSeq> & p1,const Ice::Current &)955 InitialI::opMSeq2_async(const Test::AMD_Initial_opMSeq2Ptr& cb,
956                         const IceUtil::Optional< Test::StringSeq>& p1,
957                         const Ice::Current&)
958 {
959     cb->ice_response(p1, p1);
960 }
961 
962 void
opMDict1_async(const Test::AMD_Initial_opMDict1Ptr & cb,const Ice::Current &)963 InitialI::opMDict1_async(const Test::AMD_Initial_opMDict1Ptr& cb, const Ice::Current&)
964 {
965     cb->ice_response(Test::StringIntDict());
966 }
967 
968 void
opMDict2_async(const Test::AMD_Initial_opMDict2Ptr & cb,const IceUtil::Optional<Test::StringIntDict> & p1,const Ice::Current &)969 InitialI::opMDict2_async(const Test::AMD_Initial_opMDict2Ptr& cb,
970                          const IceUtil::Optional< Test::StringIntDict>& p1,
971                          const Ice::Current&)
972 {
973     cb->ice_response(p1, p1);
974 }
975 
976 void
opMG1_async(const Test::AMD_Initial_opMG1Ptr & cb,const Ice::Current &)977 InitialI::opMG1_async(const Test::AMD_Initial_opMG1Ptr& cb, const Ice::Current&)
978 {
979     cb->ice_response(new Test::G());
980 }
981 
982 void
opMG2_async(const Test::AMD_Initial_opMG2Ptr & cb,const IceUtil::Optional<Test::GPtr> & p1,const Ice::Current &)983 InitialI::opMG2_async(const Test::AMD_Initial_opMG2Ptr& cb,
984                       const IceUtil::Optional<Test::GPtr>& p1,
985                       const Ice::Current&)
986 {
987     cb->ice_response(p1, p1);
988 }
989 
990 void
supportsRequiredParams_async(const::Test::AMD_Initial_supportsRequiredParamsPtr & cb,const Ice::Current &)991 InitialI::supportsRequiredParams_async(const ::Test::AMD_Initial_supportsRequiredParamsPtr& cb,
992                                        const Ice::Current&)
993 {
994     cb->ice_response(false);
995 }
996 
997 void
supportsJavaSerializable_async(const::Test::AMD_Initial_supportsJavaSerializablePtr & cb,const Ice::Current &)998 InitialI::supportsJavaSerializable_async(const ::Test::AMD_Initial_supportsJavaSerializablePtr& cb,
999                                          const Ice::Current&)
1000 {
1001     cb->ice_response(true);
1002 }
1003 
1004 void
supportsCsharpSerializable_async(const::Test::AMD_Initial_supportsCsharpSerializablePtr & cb,const Ice::Current &)1005 InitialI::supportsCsharpSerializable_async(const ::Test::AMD_Initial_supportsCsharpSerializablePtr& cb,
1006                                            const Ice::Current&)
1007 {
1008     cb->ice_response(true);
1009 }
1010 
1011 void
supportsCppStringView_async(const::Test::AMD_Initial_supportsCppStringViewPtr & cb,const Ice::Current &)1012 InitialI::supportsCppStringView_async(const ::Test::AMD_Initial_supportsCppStringViewPtr& cb,
1013                                       const Ice::Current&)
1014 {
1015     cb->ice_response(true);
1016 }
1017 
1018 void
supportsNullOptional_async(const::Test::AMD_Initial_supportsNullOptionalPtr & cb,const Ice::Current &)1019 InitialI::supportsNullOptional_async(const ::Test::AMD_Initial_supportsNullOptionalPtr& cb, const Ice::Current&)
1020 {
1021     cb->ice_response(true);
1022 }
1023 
1024 #endif
1025