restpack_service 0.0.39 → 0.0.40
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/restpack_service/loader.rb +17 -2
- data/lib/restpack_service/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d1a717f260611d80b88a09d2c79ed3adff7dc9cb
|
4
|
+
data.tar.gz: 8f1955994f64a5b072224966dadcc11838f0ed50
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54399ef7a7039deff285a647b6d64c36a0b18c8f8208a3798bdabba255e1eea7673775255974efa70e4098bd170118d0fe1ae6e16266c2fc1485467d637218b1
|
7
|
+
data.tar.gz: 9b562157b7cb48c8dc6b1c67506b210947afc75ba7d94e09fae33e8f000f15c5b23d984ac48bc30cb4188667f17133d708003daf01df723527346cf6978fc855
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module RestPack::Service
|
2
2
|
class Loader
|
3
|
-
|
3
|
+
|
4
|
+
def self.load(name)
|
4
5
|
require 'require_all'
|
5
6
|
|
6
7
|
require 'restpack_serializer'
|
@@ -8,7 +9,7 @@ module RestPack::Service
|
|
8
9
|
|
9
10
|
restpack_service_name = "restpack_#{name}_service"
|
10
11
|
restpack_namespace = "RestPack::#{name.capitalize}"
|
11
|
-
service_path =
|
12
|
+
service_path = self.get_service_path(caller, restpack_service_name)
|
12
13
|
|
13
14
|
require "#{service_path}/version"
|
14
15
|
require "#{service_path}/configuration"
|
@@ -19,6 +20,8 @@ module RestPack::Service
|
|
19
20
|
require_service_module 'commands', service_path, restpack_namespace
|
20
21
|
end
|
21
22
|
|
23
|
+
private
|
24
|
+
|
22
25
|
def self.require_service_module(module_name, service_path, restpack_namespace)
|
23
26
|
require_all "#{service_path}/#{module_name.downcase}"
|
24
27
|
proxy_module = Module.new
|
@@ -27,5 +30,17 @@ module RestPack::Service
|
|
27
30
|
end
|
28
31
|
Object.const_set module_name.capitalize, proxy_module
|
29
32
|
end
|
33
|
+
|
34
|
+
def self.get_service_path(load_caller, restpack_service_name)
|
35
|
+
#Gets the path of the calling service : http://stackoverflow.com/questions/14772381/get-directory-of-file-that-instantiated-a-class-ruby
|
36
|
+
source_file = nil
|
37
|
+
load_caller.each do |s|
|
38
|
+
if(s =~ /(require|require_relative)/)
|
39
|
+
source_file = File.dirname(File.expand_path(s.split(':')[0]))
|
40
|
+
break
|
41
|
+
end
|
42
|
+
end
|
43
|
+
"#{source_file}/#{restpack_service_name}"
|
44
|
+
end
|
30
45
|
end
|
31
46
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: restpack_service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.40
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gavin Joyce
|
@@ -239,7 +239,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
239
239
|
version: '0'
|
240
240
|
requirements: []
|
241
241
|
rubyforge_project:
|
242
|
-
rubygems_version: 2.0.
|
242
|
+
rubygems_version: 2.0.7
|
243
243
|
signing_key:
|
244
244
|
specification_version: 4
|
245
245
|
summary: A base for RestPack services
|