diff options
author | Nicolas "Pixel" Noble <pixel@nobis-crew.org> | 2016-01-28 20:45:39 +0100 |
---|---|---|
committer | Nicolas "Pixel" Noble <pixel@nobis-crew.org> | 2016-01-28 20:45:39 +0100 |
commit | d899dce5e1e356ff3e7ba6b595bdad87ec476fb6 (patch) | |
tree | ce131e829599befabd209064581137beb215a25d /src/ruby/lib | |
parent | c1a89b8d7635c20f50506730a43bd1469bde9ea7 (diff) |
Few more fixes to the Ruby installation.
-) properly depending on libraries.
-) adding an independent 'loader' class to use instead of require 'grpc/grpc'.
Diffstat (limited to 'src/ruby/lib')
-rw-r--r-- | src/ruby/lib/grpc.rb | 6 | ||||
-rw-r--r-- | src/ruby/lib/grpc/generic/bidi_call.rb | 2 | ||||
-rw-r--r-- | src/ruby/lib/grpc/generic/rpc_desc.rb | 2 | ||||
-rw-r--r-- | src/ruby/lib/grpc/generic/rpc_server.rb | 2 | ||||
-rw-r--r-- | src/ruby/lib/grpc/loader.rb | 34 |
5 files changed, 38 insertions, 8 deletions
diff --git a/src/ruby/lib/grpc.rb b/src/ruby/lib/grpc.rb index 7890e17551..8512856259 100644 --- a/src/ruby/lib/grpc.rb +++ b/src/ruby/lib/grpc.rb @@ -32,11 +32,7 @@ unless ENV['GRPC_DEFAULT_SSL_ROOTS_FILE_PATH'] ENV['GRPC_DEFAULT_SSL_ROOTS_FILE_PATH'] = ssl_roots_path end -begin - require "grpc/#{RUBY_VERSION.sub(/\.\d$/, '')}/grpc" -rescue LoadError - require 'grpc/grpc' -end +require 'grpc/loader' require 'grpc/errors' require 'grpc/logconfig' diff --git a/src/ruby/lib/grpc/generic/bidi_call.rb b/src/ruby/lib/grpc/generic/bidi_call.rb index 6b9b785693..b907393fd2 100644 --- a/src/ruby/lib/grpc/generic/bidi_call.rb +++ b/src/ruby/lib/grpc/generic/bidi_call.rb @@ -28,7 +28,7 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. require 'forwardable' -require 'grpc/grpc' +require 'grpc/loader' # GRPC contains the General RPC module. module GRPC diff --git a/src/ruby/lib/grpc/generic/rpc_desc.rb b/src/ruby/lib/grpc/generic/rpc_desc.rb index dd90d8d91d..5dfb5c96fe 100644 --- a/src/ruby/lib/grpc/generic/rpc_desc.rb +++ b/src/ruby/lib/grpc/generic/rpc_desc.rb @@ -27,7 +27,7 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -require 'grpc/grpc' +require 'grpc/loader' # GRPC contains the General RPC module. module GRPC diff --git a/src/ruby/lib/grpc/generic/rpc_server.rb b/src/ruby/lib/grpc/generic/rpc_server.rb index 410156ff03..22490567f9 100644 --- a/src/ruby/lib/grpc/generic/rpc_server.rb +++ b/src/ruby/lib/grpc/generic/rpc_server.rb @@ -27,7 +27,7 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -require 'grpc/grpc' +require 'grpc/loader' require 'grpc/generic/active_call' require 'grpc/generic/service' require 'thread' diff --git a/src/ruby/lib/grpc/loader.rb b/src/ruby/lib/grpc/loader.rb new file mode 100644 index 0000000000..9e04908d88 --- /dev/null +++ b/src/ruby/lib/grpc/loader.rb @@ -0,0 +1,34 @@ +# Copyright 2015-2016, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +begin + require "grpc/#{RUBY_VERSION.sub(/\.\d$/, '')}/grpc" +rescue LoadError + require 'grpc/grpc' +end |