r2corba 1.5.2 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (183) hide show
  1. checksums.yaml +4 -4
  2. data/README.rdoc +8 -5
  3. data/ext/libr2tao/any.cpp +12 -11
  4. data/ext/libr2tao/exception.cpp +6 -8
  5. data/ext/libr2tao/exception.h +1 -2
  6. data/ext/libr2tao/longdouble.cpp +5 -9
  7. data/ext/libr2tao/object.cpp +37 -53
  8. data/ext/libr2tao/orb.cpp +46 -73
  9. data/ext/libr2tao/r2tao_export.h +1 -1
  10. data/ext/libr2tao/r2tao_ext.h +8 -19
  11. data/ext/libr2tao/required.cpp +4 -28
  12. data/ext/libr2tao/required.h +23 -80
  13. data/ext/libr2tao/values.cpp +97 -98
  14. data/ext/libr2tao/values.h +36 -40
  15. data/ext/librpoa/iortable.cpp +6 -7
  16. data/ext/librpoa/poa.cpp +29 -32
  17. data/ext/librpoa/servant.cpp +39 -113
  18. data/ext/librpoa/servant.h +18 -40
  19. data/lib/corba.rb +1 -1
  20. data/lib/corba/cbase/ORB.rb +26 -23
  21. data/lib/corba/cbase/Request.rb +3 -3
  22. data/lib/corba/cbase/Streams.rb +2 -2
  23. data/lib/corba/cbase/Typecode.rb +6 -6
  24. data/lib/corba/cbase/Values.rb +4 -2
  25. data/lib/corba/cbase/exception.rb +6 -4
  26. data/lib/corba/cbase/poa.rb +1 -1
  27. data/lib/corba/cbase/policies.rb +2 -2
  28. data/lib/corba/cbase/require.rb +8 -1
  29. data/lib/corba/cmds/base.rb +1 -1
  30. data/lib/corba/common/Any.rb +3 -2
  31. data/lib/corba/common/IDL.rb +4 -7
  32. data/lib/corba/common/ORB.rb +22 -22
  33. data/lib/corba/common/Object.rb +14 -14
  34. data/lib/corba/common/Servant.rb +4 -4
  35. data/lib/corba/common/Stub.rb +6 -6
  36. data/lib/corba/common/Typecode.rb +72 -45
  37. data/lib/corba/common/Union.rb +5 -0
  38. data/lib/corba/common/Values.rb +1 -0
  39. data/lib/corba/common/const.rb +2 -2
  40. data/lib/corba/common/exception.rb +2 -1
  41. data/lib/corba/common/require.rb +8 -0
  42. data/lib/corba/common/version.rb +2 -2
  43. data/lib/corba/idl/IDL.rb +1 -1
  44. data/lib/corba/jbase/Any.rb +28 -26
  45. data/lib/corba/jbase/ORB.rb +5 -5
  46. data/lib/corba/jbase/Object.rb +13 -13
  47. data/lib/corba/jbase/Request.rb +8 -8
  48. data/lib/corba/jbase/Servant.rb +10 -10
  49. data/lib/corba/jbase/ServerRequest.rb +7 -7
  50. data/lib/corba/jbase/Streams.rb +67 -3
  51. data/lib/corba/jbase/Typecode.rb +17 -16
  52. data/lib/corba/jbase/Values.rb +2 -0
  53. data/lib/corba/jbase/exception.rb +2 -1
  54. data/lib/corba/jbase/poa.rb +20 -20
  55. data/lib/corba/jbase/policies.rb +32 -32
  56. data/lib/corba/jbase/require.rb +4 -0
  57. data/lib/corba/poa.rb +1 -1
  58. data/lib/corba/policies.rb +1 -1
  59. data/lib/corba/require.rb +2 -2
  60. data/lib/corba/svcs/ins/cos_naming.rb +37 -28
  61. data/lib/corba/svcs/ins/ins.rb +51 -51
  62. data/lib/corba/svcs/ins/naming_service.rb +8 -8
  63. data/lib/ridlbe/ruby/config.rb +78 -72
  64. data/lib/ridlbe/ruby/walker.rb +295 -272
  65. data/mkrf_conf_srcgem.rb +6 -6
  66. data/rakelib/bin.rake +1 -1
  67. data/rakelib/bin.rb +3 -3
  68. data/rakelib/build.rake +16 -16
  69. data/rakelib/config.rake +1 -1
  70. data/rakelib/config.rb +24 -25
  71. data/rakelib/ext.rake +7 -68
  72. data/rakelib/ext.rb +13 -13
  73. data/rakelib/ext_r2tao.rb +11 -54
  74. data/rakelib/gem.rake +40 -24
  75. data/rakelib/gem.rb +6 -6
  76. data/rakelib/package.rake +1 -1
  77. data/test/BiDirectional/client.rb +17 -17
  78. data/test/BiDirectional/run_test.rb +11 -11
  79. data/test/BiDirectional/server.rb +24 -25
  80. data/test/CORBA_Services/Naming/BindingIterator/client.rb +17 -17
  81. data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +13 -13
  82. data/test/CORBA_Services/Naming/BindingIterator/server.rb +19 -19
  83. data/test/CORBA_Services/Naming/Corbaname/client.rb +15 -15
  84. data/test/CORBA_Services/Naming/Corbaname/run_test.rb +13 -13
  85. data/test/CORBA_Services/Naming/Corbaname/server.rb +30 -30
  86. data/test/CORBA_Services/Naming/Simple/client.rb +16 -16
  87. data/test/CORBA_Services/Naming/Simple/run_test.rb +13 -13
  88. data/test/CORBA_Services/Naming/Simple/server.rb +19 -19
  89. data/test/Collocation/run_test.rb +10 -10
  90. data/test/Collocation/test.rb +27 -20
  91. data/test/Connect_Timeout/client.rb +16 -17
  92. data/test/Connect_Timeout/run_test.rb +10 -10
  93. data/test/DII/client.rb +30 -30
  94. data/test/DII/run_test.rb +11 -11
  95. data/test/DII/server.rb +16 -16
  96. data/test/DSI/client.rb +16 -16
  97. data/test/DSI/run_test.rb +11 -11
  98. data/test/DSI/server.rb +17 -17
  99. data/test/Exceptions/client.rb +21 -21
  100. data/test/Exceptions/run_test.rb +11 -11
  101. data/test/Exceptions/server.rb +16 -16
  102. data/test/Hello/client.rb +16 -16
  103. data/test/Hello/run_test.rb +11 -11
  104. data/test/Hello/server.rb +17 -17
  105. data/test/IDL_Test/client.rb +21 -21
  106. data/test/IDL_Test/run_test.rb +11 -11
  107. data/test/IDL_Test/server.rb +19 -19
  108. data/test/IORMap/client.rb +14 -14
  109. data/test/IORMap/run_test.rb +11 -11
  110. data/test/IORMap/server.rb +26 -26
  111. data/test/IORTable/client.rb +14 -14
  112. data/test/IORTable/run_test.rb +11 -11
  113. data/test/IORTable/server.rb +26 -26
  114. data/test/Implicit_Conversion/client.rb +20 -17
  115. data/test/Implicit_Conversion/run_test.rb +11 -11
  116. data/test/Implicit_Conversion/server.rb +16 -16
  117. data/test/Multi_Threading/Multiple_ORB/client.rb +14 -14
  118. data/test/Multi_Threading/Multiple_ORB/run_test.rb +12 -12
  119. data/test/Multi_Threading/Multiple_ORB/server.rb +17 -17
  120. data/test/Multi_Threading/Simple/client.rb +17 -17
  121. data/test/Multi_Threading/Simple/run_test.rb +11 -11
  122. data/test/Multi_Threading/Simple/server.rb +16 -16
  123. data/test/Multi_Threading/Threads/client.rb +16 -16
  124. data/test/Multi_Threading/Threads/run_test.rb +11 -11
  125. data/test/Multi_Threading/Threads/server.rb +22 -22
  126. data/test/Multi_Threading/Threads/watchdog.rb +16 -16
  127. data/test/Multiple_Servant_Interfaces/client.rb +14 -14
  128. data/test/Multiple_Servant_Interfaces/run_test.rb +11 -11
  129. data/test/Multiple_Servant_Interfaces/server.rb +18 -18
  130. data/test/Nil/run_test.rb +10 -10
  131. data/test/Nil/test.rb +22 -19
  132. data/test/OBV/AbstractInterface/client.rb +14 -14
  133. data/test/OBV/AbstractInterface/run_test.rb +11 -11
  134. data/test/OBV/AbstractInterface/server.rb +20 -19
  135. data/test/OBV/Custom/OBV_impl.rb +2 -0
  136. data/test/OBV/Custom/client.rb +14 -14
  137. data/test/OBV/Custom/run_test.rb +11 -11
  138. data/test/OBV/Custom/server.rb +16 -16
  139. data/test/OBV/Simple/OBV_impl.rb +1 -0
  140. data/test/OBV/Simple/client.rb +14 -14
  141. data/test/OBV/Simple/run_test.rb +11 -11
  142. data/test/OBV/Simple/server.rb +16 -16
  143. data/test/OBV/Simple_Event/Event_impl.rb +1 -0
  144. data/test/OBV/Simple_Event/client.rb +14 -14
  145. data/test/OBV/Simple_Event/run_test.rb +11 -11
  146. data/test/OBV/Simple_Event/server.rb +16 -16
  147. data/test/OBV/Supports/client.rb +19 -19
  148. data/test/OBV/Supports/run_test.rb +11 -11
  149. data/test/OBV/Supports/server.rb +15 -15
  150. data/test/OBV/Supports/supports_impl.rb +3 -0
  151. data/test/OBV/Tree/client.rb +14 -14
  152. data/test/OBV/Tree/run_test.rb +11 -11
  153. data/test/OBV/Tree/server.rb +19 -19
  154. data/test/OBV/Truncatable/Truncatable_impl.rb +1 -1
  155. data/test/OBV/Truncatable/client.rb +57 -57
  156. data/test/OBV/Truncatable/run_test.rb +11 -11
  157. data/test/OBV/Truncatable/server.rb +15 -15
  158. data/test/OBV/ValueBox/client.rb +154 -153
  159. data/test/OBV/ValueBox/run_test.rb +11 -11
  160. data/test/OBV/ValueBox/server.rb +42 -42
  161. data/test/Object/client.rb +15 -15
  162. data/test/Object/run_test.rb +11 -11
  163. data/test/Object/server.rb +19 -19
  164. data/test/POA/run_test.rb +10 -10
  165. data/test/POA/test.rb +16 -16
  166. data/test/Param_Test/client.rb +51 -51
  167. data/test/Param_Test/run_test.rb +11 -11
  168. data/test/Param_Test/server.rb +59 -59
  169. data/test/Performance/Simple/client.rb +16 -16
  170. data/test/Performance/Simple/run_test.rb +11 -11
  171. data/test/Performance/Simple/server.rb +16 -16
  172. data/test/Policies/run_test.rb +10 -10
  173. data/test/Policies/test.rb +23 -24
  174. data/test/Timeout/client.rb +21 -21
  175. data/test/Timeout/run_test.rb +11 -11
  176. data/test/Timeout/server.rb +22 -22
  177. data/test/lib/assert.rb +0 -1
  178. data/test/lib/test.rb +27 -22
  179. data/test/test_runner.rb +20 -21
  180. metadata +11 -13
  181. data/ext/extload/extload.c +0 -60
  182. data/ext/librpoa/srvreq_fix.cpp +0 -282
  183. data/ext/librpoa/srvreq_fix.h +0 -148
data/ext/libr2tao/orb.cpp CHANGED
@@ -20,7 +20,7 @@
20
20
  #include "ace/Reactor.h"
21
21
  #include "ace/Signal.h"
22
22
  #include "ace/Sig_Handler.h"
23
- #include "ace/Auto_Ptr.h"
23
+ #include <memory>
24
24
 
25
25
  #define RUBY_INVOKE_FUNC RUBY_ALLOC_FUNC
26
26
 
@@ -61,8 +61,8 @@ public:
61
61
  virtual ~R2CSigGuard();
62
62
 
63
63
  virtual int handle_signal (int signum,
64
- siginfo_t * = 0,
65
- ucontext_t * = 0);
64
+ siginfo_t * = nullptr,
65
+ ucontext_t * = nullptr);
66
66
 
67
67
  bool has_caught_signal () { return this->m_signal_caught; }
68
68
 
@@ -71,9 +71,9 @@ private:
71
71
  {
72
72
  public:
73
73
  Signal(int signum) : m_signum (signum) {}
74
- virtual ~Signal() {}
74
+ ~Signal() override = default;
75
75
 
76
- virtual int handle_exception (ACE_HANDLE fd = ACE_INVALID_HANDLE);
76
+ int handle_exception (ACE_HANDLE fd = ACE_INVALID_HANDLE) override;
77
77
 
78
78
  private:
79
79
  int inner_handler ();
@@ -85,7 +85,7 @@ private:
85
85
 
86
86
  static VALUE c_signums;
87
87
  static int c_nsig;
88
- static ACE_Auto_Ptr<ACE_SIGACTION> c_sa;
88
+ static ACE_Auto_Ptr<ACE_SIGACTION> c_sa;
89
89
 
90
90
  static void init_ ();
91
91
 
@@ -103,7 +103,7 @@ public:
103
103
  };
104
104
 
105
105
  #if defined (WIN32)
106
- R2CSigGuard* R2CSigGuard::c_sig_guard = 0;
106
+ R2CSigGuard* R2CSigGuard::c_sig_guard = nullptr;
107
107
 
108
108
  BOOL WINAPI CtrlHandlerRoutine (DWORD /*dwCtrlType*/)
109
109
  {
@@ -124,11 +124,8 @@ _orb_free(void *ptr)
124
124
  R2TAO_EXPORT VALUE
125
125
  r2tao_ORB_t2r(CORBA::ORB_ptr obj)
126
126
  {
127
- VALUE ret;
128
- CORBA::ORB_ptr _orb;
129
-
130
- _orb = CORBA::ORB::_duplicate(obj);
131
- ret = Data_Wrap_Struct(r2tao_cORB, 0, _orb_free, _orb);
127
+ CORBA::ORB_ptr _orb = CORBA::ORB::_duplicate(obj);
128
+ VALUE ret = Data_Wrap_Struct(r2tao_cORB, 0, _orb_free, _orb);
132
129
 
133
130
  return ret;
134
131
  }
@@ -222,11 +219,9 @@ VALUE r2tao_ORB_hash(VALUE self)
222
219
  static
223
220
  VALUE r2tao_ORB_eql(VALUE self, VALUE _other)
224
221
  {
225
- CORBA::ORB_ptr other, obj;
226
-
227
- obj = r2tao_ORB_r2t (self);
222
+ CORBA::ORB_ptr obj = r2tao_ORB_r2t (self);
228
223
  r2tao_check_type (_other, r2tao_cORB);
229
- other = r2tao_ORB_r2t (_other);
224
+ CORBA::ORB_ptr other = r2tao_ORB_r2t (_other);
230
225
 
231
226
  if (obj == other)
232
227
  return Qtrue;
@@ -242,7 +237,7 @@ VALUE rCORBA_ORB_init(int _argc, VALUE *_argv, VALUE /*klass*/) {
242
237
  char **argv;
243
238
  int i;
244
239
  CORBA::ORB_var orb;
245
- ACE_Auto_Basic_Ptr<char*> argv_safe;
240
+ std::unique_ptr<char*> argv_safe;
246
241
 
247
242
  rb_scan_args(_argc, _argv, "02", &v0, &v1);
248
243
 
@@ -306,12 +301,10 @@ VALUE rCORBA_ORB_init(int _argc, VALUE *_argv, VALUE /*klass*/) {
306
301
  static
307
302
  VALUE rCORBA_ORB_object_to_string(VALUE self, VALUE _obj)
308
303
  {
309
- CORBA::Object_ptr obj;
310
- char *str=0;
311
- CORBA::ORB_ptr orb;
304
+ char *str = nullptr;
312
305
 
313
- orb = r2tao_ORB_r2t (self);
314
- obj = r2tao_Object_r2t (_obj);
306
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
307
+ CORBA::Object_ptr obj = r2tao_Object_r2t (_obj);
315
308
 
316
309
  if (obj->_is_local ())
317
310
  {
@@ -331,10 +324,9 @@ static
331
324
  VALUE rCORBA_ORB_string_to_object(VALUE self, VALUE _str)
332
325
  {
333
326
  CORBA::Object_var obj;
334
- char *str=0;
335
- CORBA::ORB_ptr orb;
327
+ char *str = nullptr;
336
328
 
337
- orb = r2tao_ORB_r2t (self);
329
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
338
330
  Check_Type(_str, T_STRING);
339
331
  str = RSTRING_PTR (_str);
340
332
 
@@ -364,12 +356,8 @@ VALUE rCORBA_ORB_get_current(VALUE /*self*/)
364
356
  static
365
357
  VALUE rCORBA_ORB_list_initial_services(VALUE self)
366
358
  {
367
- CORBA::ULong i;
368
- VALUE ary;
369
359
  CORBA::ORB::ObjectIdList_var list;
370
- CORBA::ORB_ptr orb;
371
-
372
- orb = r2tao_ORB_r2t (self);
360
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
373
361
 
374
362
  R2TAO_TRY
375
363
  {
@@ -377,8 +365,8 @@ VALUE rCORBA_ORB_list_initial_services(VALUE self)
377
365
  }
378
366
  R2TAO_CATCH;
379
367
 
380
- ary = rb_ary_new2(list->length ());
381
- for (i=0; i<list->length (); i++)
368
+ VALUE ary = rb_ary_new2(list->length ());
369
+ for (CORBA::ULong i = 0; i < list->length (); i++)
382
370
  {
383
371
  char const * id = list[i];
384
372
  rb_ary_push (ary, rb_str_new2 (id));
@@ -391,13 +379,10 @@ static
391
379
  VALUE rCORBA_ORB_resolve_initial_references(VALUE self, VALUE _id)
392
380
  {
393
381
  CORBA::Object_var obj;
394
- char *id;
395
- CORBA::ORB_ptr orb;
396
-
397
- orb = r2tao_ORB_r2t (self);
382
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
398
383
 
399
384
  Check_Type(_id, T_STRING);
400
- id = RSTRING_PTR (_id);
385
+ char *id = RSTRING_PTR (_id);
401
386
 
402
387
  R2TAO_TRY
403
388
  {
@@ -418,15 +403,11 @@ VALUE rCORBA_ORB_resolve_initial_references(VALUE self, VALUE _id)
418
403
  static
419
404
  VALUE rCORBA_ORB_register_initial_reference(VALUE self, VALUE _id, VALUE _obj)
420
405
  {
421
- CORBA::Object_var obj;
422
- char *id;
423
- CORBA::ORB_ptr orb;
424
-
425
- orb = r2tao_ORB_r2t (self);
406
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
426
407
 
427
408
  Check_Type(_id, T_STRING);
428
- id = RSTRING_PTR (_id);
429
- obj = r2tao_Object_r2t(_obj);
409
+ char *id = RSTRING_PTR (_id);
410
+ CORBA::Object_var obj = r2tao_Object_r2t(_obj);
430
411
 
431
412
  R2TAO_TRY
432
413
  {
@@ -448,16 +429,11 @@ class R2TAO_ORB_BlockedRegionCaller
448
429
  {
449
430
  public:
450
431
  R2TAO_ORB_BlockedRegionCaller (CORBA::ORB_ptr orb)
451
- : orb_ (orb),
452
- timeout_ (0),
453
- exception_ (false),
454
- corba_ex_ (0) {}
432
+ : orb_ (orb) {}
455
433
  R2TAO_ORB_BlockedRegionCaller (CORBA::ORB_ptr orb, ACE_Time_Value& to)
456
434
  : orb_ (orb),
457
- timeout_ (&to),
458
- exception_ (false),
459
- corba_ex_ (0) {}
460
- virtual ~R2TAO_ORB_BlockedRegionCaller () R2CORBA_NO_EXCEPT_FALSE;
435
+ timeout_ (std::addressof(to)) {}
436
+ virtual ~R2TAO_ORB_BlockedRegionCaller () noexcept(false);
461
437
 
462
438
  VALUE call (bool with_unblock=true);
463
439
 
@@ -472,18 +448,18 @@ protected:
472
448
  virtual VALUE do_exec () = 0;
473
449
 
474
450
  CORBA::ORB_ptr orb_;
475
- ACE_Time_Value* timeout_;
476
- bool exception_;
477
- CORBA::Exception* corba_ex_;
451
+ ACE_Time_Value* timeout_ {};
452
+ bool exception_ {};
453
+ CORBA::Exception* corba_ex_ {};
478
454
  };
479
455
 
480
- R2TAO_ORB_BlockedRegionCaller::~R2TAO_ORB_BlockedRegionCaller() R2CORBA_NO_EXCEPT_FALSE
456
+ R2TAO_ORB_BlockedRegionCaller::~R2TAO_ORB_BlockedRegionCaller() noexcept(false)
481
457
  {
482
458
  if (this->exception_)
483
459
  {
484
460
  if (corba_ex_)
485
461
  {
486
- ACE_Auto_Basic_Ptr<CORBA::Exception> e_ptr(corba_ex_);
462
+ std::unique_ptr<CORBA::Exception> e_ptr(corba_ex_);
487
463
  corba_ex_->_raise ();
488
464
  }
489
465
  else
@@ -546,10 +522,10 @@ public:
546
522
  : R2TAO_ORB_BlockedRegionCaller (orb) {}
547
523
  R2TAO_ORB_BlockedRun (CORBA::ORB_ptr orb, ACE_Time_Value& to)
548
524
  : R2TAO_ORB_BlockedRegionCaller (orb, to) {}
549
- virtual ~R2TAO_ORB_BlockedRun () {}
525
+ ~R2TAO_ORB_BlockedRun () override = default;
550
526
 
551
527
  protected:
552
- virtual VALUE do_exec ();
528
+ VALUE do_exec () override;
553
529
  };
554
530
 
555
531
  VALUE R2TAO_ORB_BlockedRun::do_exec ()
@@ -568,16 +544,16 @@ public:
568
544
  : R2TAO_ORB_BlockedRegionCaller (orb), sg_(sg) {}
569
545
  R2TAO_ORB_BlockedWorkPending (R2CSigGuard& sg, CORBA::ORB_ptr orb, ACE_Time_Value& to)
570
546
  : R2TAO_ORB_BlockedRegionCaller (orb, to), sg_(sg) {}
571
- virtual ~R2TAO_ORB_BlockedWorkPending () R2CORBA_NO_EXCEPT_FALSE;
547
+ virtual ~R2TAO_ORB_BlockedWorkPending () noexcept(false);
572
548
 
573
549
  protected:
574
- virtual VALUE do_exec ();
550
+ VALUE do_exec () override;
575
551
 
576
552
  private:
577
553
  R2CSigGuard& sg_;
578
554
  };
579
555
 
580
- R2TAO_ORB_BlockedWorkPending::~R2TAO_ORB_BlockedWorkPending() R2CORBA_NO_EXCEPT_FALSE
556
+ R2TAO_ORB_BlockedWorkPending::~R2TAO_ORB_BlockedWorkPending() noexcept(false)
581
557
  {
582
558
  if (this->exception_)
583
559
  {
@@ -585,7 +561,7 @@ R2TAO_ORB_BlockedWorkPending::~R2TAO_ORB_BlockedWorkPending() R2CORBA_NO_EXCEPT_
585
561
  try {
586
562
  if (corba_ex_)
587
563
  {
588
- ACE_Auto_Basic_Ptr<CORBA::Exception> e_ptr(corba_ex_);
564
+ std::unique_ptr<CORBA::Exception> e_ptr(corba_ex_);
589
565
  corba_ex_->_raise ();
590
566
  }
591
567
  else
@@ -623,10 +599,10 @@ public:
623
599
  : R2TAO_ORB_BlockedRegionCaller (orb) {}
624
600
  R2TAO_ORB_BlockedPerformWork (CORBA::ORB_ptr orb, ACE_Time_Value& to)
625
601
  : R2TAO_ORB_BlockedRegionCaller (orb, to) {}
626
- virtual ~R2TAO_ORB_BlockedPerformWork () {}
602
+ ~R2TAO_ORB_BlockedPerformWork () override = default;
627
603
 
628
604
  protected:
629
- virtual VALUE do_exec ();
605
+ VALUE do_exec () override;
630
606
  };
631
607
 
632
608
  VALUE R2TAO_ORB_BlockedPerformWork::do_exec ()
@@ -641,10 +617,10 @@ VALUE R2TAO_ORB_BlockedPerformWork::do_exec ()
641
617
  class R2TAO_ORB_BlockedShutdown : public R2TAO_ORB_BlockedRegionCaller
642
618
  {
643
619
  public:
644
- R2TAO_ORB_BlockedShutdown (CORBA::ORB_ptr orb, bool wait=false)
620
+ R2TAO_ORB_BlockedShutdown (CORBA::ORB_ptr orb, bool wait = false)
645
621
  : R2TAO_ORB_BlockedRegionCaller (orb),
646
622
  wait_ (wait) {}
647
- virtual ~R2TAO_ORB_BlockedShutdown () {}
623
+ ~R2TAO_ORB_BlockedShutdown () override = default;
648
624
 
649
625
  protected:
650
626
  virtual VALUE do_exec ();
@@ -662,7 +638,6 @@ VALUE R2TAO_ORB_BlockedShutdown::do_exec ()
662
638
  static
663
639
  VALUE rCORBA_ORB_run(int _argc, VALUE *_argv, VALUE self)
664
640
  {
665
- CORBA::ORB_ptr orb;
666
641
  VALUE rtimeout = Qnil;
667
642
  ACE_Time_Value timeout;
668
643
  double tmleft=0.0;
@@ -682,7 +657,7 @@ VALUE rCORBA_ORB_run(int _argc, VALUE *_argv, VALUE self)
682
657
  // convert to ACE_Time_Value
683
658
  }
684
659
 
685
- orb = r2tao_ORB_r2t (self);
660
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
686
661
 
687
662
  R2TAO_TRY
688
663
  {
@@ -715,7 +690,6 @@ VALUE rCORBA_ORB_run(int _argc, VALUE *_argv, VALUE self)
715
690
  static
716
691
  VALUE rCORBA_ORB_work_pending(int _argc, VALUE *_argv, VALUE self)
717
692
  {
718
- CORBA::ORB_ptr orb;
719
693
  VALUE rtimeout = Qnil;
720
694
  ACE_Time_Value timeout;
721
695
  double tmleft=0.0;
@@ -735,7 +709,7 @@ VALUE rCORBA_ORB_work_pending(int _argc, VALUE *_argv, VALUE self)
735
709
  // convert to ACE_Time_Value
736
710
  }
737
711
 
738
- orb = r2tao_ORB_r2t (self);
712
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
739
713
 
740
714
  VALUE _rc = Qfalse;
741
715
 
@@ -858,8 +832,7 @@ VALUE rCORBA_ORB_shutdown(int _argc, VALUE *_argv, VALUE self)
858
832
  static
859
833
  VALUE rCORBA_ORB_destroy(VALUE self)
860
834
  {
861
- CORBA::ORB_ptr orb;
862
- orb = r2tao_ORB_r2t (self);
835
+ CORBA::ORB_ptr orb = r2tao_ORB_r2t (self);
863
836
  R2TAO_TRY
864
837
  {
865
838
  orb->destroy ();
@@ -1,6 +1,6 @@
1
1
  // -*- C++ -*-
2
2
  /*--------------------------------------------------------------------
3
- # r2tao_ext.h - R2TAO CORBA basic support
3
+ # r2tao_export.h - R2TAO CORBA basic support
4
4
  #
5
5
  # Author: Martin Corino
6
6
  #
@@ -12,25 +12,14 @@
12
12
  #ifndef __R2TAO_EXT_H
13
13
  #define __R2TAO_EXT_H
14
14
 
15
- #if defined (__cplusplus)
16
- };
17
- #endif
18
-
19
- #if defined (OLD_MSC_VER)
20
- // un-fudge the version macro here that was fudged
21
- // in required.h otherwise ACE will complain
22
- #undef _MSC_VER
23
- #define _MSC_VER OLD_MSC_VER
24
- #endif
25
-
26
- #include <ace/pre.h>
27
-
28
- #include <ace/config-all.h>
29
-
30
- #include <ace/post.h>
31
-
32
- #if defined (__cplusplus)
33
- extern "C" {
15
+ #include <ace/config-lite.h>
16
+ #if defined (WIN32) || defined (_MSC_VER) || defined (__MINGW32__)
17
+ // Ruby ships its own msghdr
18
+ # undef ACE_LACKS_MSGHDR
19
+ // Ruby ships its own iovec
20
+ # undef ACE_LACKS_IOVEC
21
+ // Resolve conflict between mingw and ruby gettimeofday
22
+ # define ACE_LACKS_SYS_TIME_H
34
23
  #endif
35
24
 
36
25
  #endif
@@ -17,10 +17,10 @@
17
17
  #include "ace/Null_Mutex.h"
18
18
  #include "ace/Singleton.h"
19
19
  #include "ace/TSS_T.h"
20
- #include "ace/Auto_Ptr.h"
21
20
  #include "tao/AnyTypeCode/Any.h"
22
21
  #include "tao/DynamicInterface/Unknown_User_Exception.h"
23
22
  #include "tao/debug.h"
23
+ #include <memory>
24
24
 
25
25
  #define RUBY_INVOKE_FUNC RUBY_ALLOC_FUNC
26
26
 
@@ -113,7 +113,6 @@ private:
113
113
  objreg->clear_registry ();
114
114
  }
115
115
  }
116
-
117
116
  };
118
117
 
119
118
  VALUE R2TAO_ObjectRegistry::registry_anchor_ = Qnil;
@@ -145,7 +144,7 @@ extern "C" R2TAO_EXPORT void Init_libr2tao()
145
144
  VALUE klass = rb_define_module_under (rb_eval_string ("::R2CORBA"), "TAO");
146
145
  rb_define_const (klass, "MAJOR_VERSION", INT2NUM (TAO_MAJOR_VERSION));
147
146
  rb_define_const (klass, "MINOR_VERSION", INT2NUM (TAO_MINOR_VERSION));
148
- rb_define_const (klass, "BETA_VERSION", INT2NUM (TAO_BETA_VERSION));
147
+ rb_define_const (klass, "MICRO_VERSION", INT2NUM (TAO_MICRO_VERSION));
149
148
  rb_define_const (klass, "VERSION", rb_str_new2 (TAO_VERSION));
150
149
  rb_define_const (klass, "RUBY_THREAD_SUPPORT",
151
150
  #ifdef R2TAO_THREAD_SAFE
@@ -204,7 +203,6 @@ R2TAO_EXPORT void r2tao_unregister_object(VALUE rbobj)
204
203
  }
205
204
 
206
205
  #if defined (R2TAO_THREAD_SAFE)
207
-
208
206
  class R2TAO_GVLGuard
209
207
  {
210
208
  public:
@@ -232,7 +230,7 @@ private:
232
230
  ~TSSManager ()
233
231
  {
234
232
  delete gvl_indicator_;
235
- gvl_indicator_ = 0;
233
+ gvl_indicator_ = nullptr;
236
234
  }
237
235
 
238
236
  static void set_indicator (bool val)
@@ -279,21 +277,12 @@ void* r2tao_call_with_gvl (void *data)
279
277
  return (*arg.func_) (arg.data_);
280
278
  }
281
279
 
282
- # if RUBY_VER_MAJOR < 2
283
- VALUE r2tao_call_without_gvl (void *data)
284
- {
285
- R2TAO_GVLGuard gvl_guard_ (false);
286
- r2tao_gvl_call_arg<VALUE(*)(void*)>& arg = *reinterpret_cast<r2tao_gvl_call_arg<VALUE(*)(void*)>*> (data);
287
- return (*arg.func_) (arg.data_);
288
- }
289
- # else
290
280
  void* r2tao_call_without_gvl (void *data)
291
281
  {
292
282
  R2TAO_GVLGuard gvl_guard_ (false);
293
283
  r2tao_gvl_call_arg<void*(*)(void*)>& arg = *reinterpret_cast<r2tao_gvl_call_arg<void*(*)(void*)>*> (data);
294
284
  return (*arg.func_) (arg.data_);
295
285
  }
296
- # endif
297
286
  #endif
298
287
 
299
288
  R2TAO_EXPORT void* r2tao_call_thread_safe (void *(*func)(void *), void *data)
@@ -314,12 +303,8 @@ R2TAO_EXPORT VALUE r2tao_blocking_call (VALUE (*func)(void*), void*data)
314
303
  if (R2TAO_GVLGuard::gvl_locked (true))
315
304
  {
316
305
  r2tao_gvl_call_arg<VALUE(*)(void*)> arg(func, data);
317
- # if RUBY_VER_MAJOR < 2
318
- return rb_thread_call_without_gvl(r2tao_call_without_gvl, &arg, RUBY_UBF_IO, 0);
319
- # else
320
306
  void *rc = rb_thread_call_without_gvl(r2tao_call_without_gvl, &arg, RUBY_UBF_IO, 0);
321
307
  return reinterpret_cast<VALUE> (rc);
322
- # endif
323
308
  }
324
309
  #endif
325
310
  return (*func) (data);
@@ -332,14 +317,9 @@ R2TAO_EXPORT VALUE r2tao_blocking_call_ex (VALUE (*func)(void*), void*data,
332
317
  if (R2TAO_GVLGuard::gvl_locked (true))
333
318
  {
334
319
  r2tao_gvl_call_arg<VALUE(*)(void*)> arg(func, data);
335
- # if RUBY_VER_MAJOR < 2
336
- return rb_thread_call_without_gvl(r2tao_call_without_gvl, &arg,
337
- unblock_func, unblock_data);
338
- # else
339
320
  void *rc = rb_thread_call_without_gvl(r2tao_call_without_gvl, &arg,
340
321
  unblock_func, unblock_data);
341
322
  return reinterpret_cast<VALUE> (rc);
342
- # endif
343
323
  }
344
324
  #else
345
325
  ACE_UNUSED_ARG(unblock_func);
@@ -362,10 +342,6 @@ R2TAO_RBFuncall::R2TAO_RBFuncall (const char* fn, bool throw_on_ex)
362
342
  {
363
343
  }
364
344
 
365
- R2TAO_RBFuncall::~R2TAO_RBFuncall ()
366
- {
367
- }
368
-
369
345
  VALUE R2TAO_RBFuncall::invoke (VALUE rcvr, VALUE args)
370
346
  {
371
347
  return this->_invoke (FuncArgArray (rcvr, args));
@@ -420,7 +396,7 @@ VALUE R2TAO_RBFuncall::_invoke (const FuncArgs& fa)
420
396
  _exc->completed (
421
397
  static_cast<CORBA::CompletionStatus> (NUM2ULONG (rb_iv_get (rexc, "@completed"))));
422
398
 
423
- ACE_Auto_Basic_Ptr<CORBA::SystemException> e_ptr(_exc);
399
+ std::unique_ptr<CORBA::SystemException> e_ptr(_exc);
424
400
  _exc->_raise ();
425
401
  }
426
402
  else