hoth 0.3.4 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +5 -0
- data/.gitignore +18 -0
- data/.rspec +2 -0
- data/Gemfile +4 -0
- data/LICENSE +1 -1
- data/{README.rdoc → README.md} +34 -34
- data/Rakefile +15 -0
- data/example/business_objects.rb +60 -0
- data/example/config/module_definition.rb +32 -0
- data/example/config/service_definition.rb +15 -0
- data/example/rack_service_provider.ru +37 -0
- data/example/service_client.rb +32 -0
- data/example/simple/README.md +17 -0
- data/example/simple/config/module_definition.rb +13 -0
- data/example/simple/config/service_definition.rb +5 -0
- data/example/simple/simple_client.rb +27 -0
- data/example/simple/simple_provider.ru +30 -0
- data/hoth.gemspec +34 -0
- data/lib/hoth.rb +3 -1
- data/lib/hoth/transport.rb +0 -6
- data/lib/hoth/transport/beanstalkd.rb +9 -5
- data/lib/hoth/version.rb +3 -0
- data/spec/spec_helper.rb +20 -8
- data/spec/unit/providers/beanstalkd_provider_spec.rb +6 -7
- data/spec/unit/service_module_spec.rb +2 -2
- data/spec/unit/transport/beanstalkd_spec.rb +18 -27
- metadata +132 -314
- data/Gemfile.lock +0 -48
- data/TODO +0 -2
- data/lib/hoth/providers/bertrpc_provider.rb +0 -35
- data/lib/hoth/transport/bert.rb +0 -87
- data/lib/hoth/transport/workling.rb +0 -23
- data/spec/unit/transport/workling_spec.rb +0 -42
data/hoth.gemspec
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/hoth/version', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.name = "hoth"
|
6
|
+
gem.version = Hoth::VERSION
|
7
|
+
|
8
|
+
gem.authors = ["Dirk Breuer"]
|
9
|
+
gem.email = ["dirk.breuer@gmail.com"]
|
10
|
+
gem.description = <<-DESC.strip
|
11
|
+
Creating a SOA requires a centralized location to define all services within the
|
12
|
+
SOA. Furthermore you want to know where to deploy those services.
|
13
|
+
DESC
|
14
|
+
gem.summary = %q{Registry and deployment description abstraction for SOA-Services}
|
15
|
+
gem.homepage = "https://github.com/galaxycats/hoth"
|
16
|
+
|
17
|
+
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
18
|
+
gem.files = `git ls-files`.split("\n")
|
19
|
+
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
20
|
+
|
21
|
+
gem.require_paths = ["lib"]
|
22
|
+
|
23
|
+
gem.add_runtime_dependency "hoth", ">= 0"
|
24
|
+
gem.add_runtime_dependency "activesupport", "~> 3.0"
|
25
|
+
gem.add_runtime_dependency "json", ">= 0"
|
26
|
+
gem.add_runtime_dependency "rack"
|
27
|
+
|
28
|
+
gem.add_development_dependency "rspec", "~> 2.11"
|
29
|
+
gem.add_development_dependency "rake"
|
30
|
+
gem.add_development_dependency "em-jack"
|
31
|
+
gem.add_development_dependency "beanstalk-client"
|
32
|
+
gem.add_development_dependency "yard"
|
33
|
+
gem.add_development_dependency "redcarpet"
|
34
|
+
end
|
data/lib/hoth.rb
CHANGED
data/lib/hoth/transport.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
require 'hoth/transport/base'
|
2
2
|
require 'hoth/transport/http'
|
3
3
|
require 'hoth/transport/https'
|
4
|
-
require 'hoth/transport/bert'
|
5
|
-
require 'hoth/transport/workling'
|
6
4
|
require 'hoth/transport/beanstalkd'
|
7
5
|
|
8
6
|
require 'hoth/encoding/json'
|
@@ -24,10 +22,6 @@ module Hoth
|
|
24
22
|
},
|
25
23
|
:https => :json_via_https,
|
26
24
|
|
27
|
-
:workling => {
|
28
|
-
:transport_class => Transport::Workling
|
29
|
-
},
|
30
|
-
|
31
25
|
:beanstalkd => {
|
32
26
|
:transport_class => Transport::Beanstalkd,
|
33
27
|
:encoder => Encoding::Json
|
@@ -9,8 +9,14 @@ module Hoth
|
|
9
9
|
|
10
10
|
class Beanstalkd < Base
|
11
11
|
|
12
|
+
attr_reader :connection
|
13
|
+
|
14
|
+
def initialize(*args)
|
15
|
+
super
|
16
|
+
@connection = Beanstalk::Connection.new("#{endpoint.host}:#{endpoint.port}")
|
17
|
+
end
|
18
|
+
|
12
19
|
def call_remote_with(*args)
|
13
|
-
connection = Beanstalk::Connection.new("#{endpoint.host}:#{endpoint.port}")
|
14
20
|
connection.use(tube_name)
|
15
21
|
|
16
22
|
begin
|
@@ -19,16 +25,14 @@ module Hoth
|
|
19
25
|
connection.put encoded_args
|
20
26
|
rescue => e
|
21
27
|
Hoth::Logger.warn "An error occured while sending a payload to beanstalkd: #{e.message}"
|
22
|
-
ensure
|
23
|
-
connection.close
|
24
28
|
end
|
25
29
|
end
|
26
30
|
|
27
31
|
def tube_name
|
28
32
|
@tube_name ||= "#{self.module.name}/#{name}".dasherize
|
29
33
|
end
|
30
|
-
|
34
|
+
|
31
35
|
end
|
32
|
-
|
36
|
+
|
33
37
|
end
|
34
38
|
end
|
data/lib/hoth/version.rb
ADDED
data/spec/spec_helper.rb
CHANGED
@@ -1,15 +1,27 @@
|
|
1
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
2
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
3
|
+
# Require this file using `require "spec_helper"` to ensure that it is only
|
4
|
+
# loaded once.
|
5
|
+
|
1
6
|
require 'rubygems'
|
7
|
+
require 'bundler/setup'
|
2
8
|
|
3
9
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
4
10
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
5
|
-
require 'hoth'
|
6
|
-
require 'spec'
|
7
|
-
require 'spec/autorun'
|
8
11
|
|
9
|
-
|
12
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
13
|
+
RSpec.configure do |config|
|
14
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
15
|
+
config.run_all_when_everything_filtered = true
|
16
|
+
config.filter_run :focus
|
10
17
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
18
|
+
# Run specs in random order to surface order dependencies. If you find an
|
19
|
+
# order dependency and want to debug it, you can fix the order by providing
|
20
|
+
# the seed, which is printed after each run.
|
21
|
+
# --seed 1234
|
22
|
+
config.order = 'random'
|
15
23
|
end
|
24
|
+
|
25
|
+
require 'hoth'
|
26
|
+
|
27
|
+
Hoth.env = "test"
|
@@ -2,12 +2,10 @@ require File.expand_path(File.join(File.dirname(__FILE__), '../../', 'spec_help
|
|
2
2
|
|
3
3
|
require File.expand_path(File.join(File.dirname(__FILE__), '../../../', 'lib', 'hoth', 'providers', 'beanstalkd_provider'))
|
4
4
|
|
5
|
-
require 'rack/mock'
|
6
|
-
|
7
5
|
module Hoth
|
8
6
|
module Providers
|
9
7
|
describe BeanstalkdProvider do
|
10
|
-
|
8
|
+
|
11
9
|
it "should know its module name" do
|
12
10
|
# cannot be tested since i do not know how to mock constructor call
|
13
11
|
# http://stackoverflow.com/questions/5270819/how-to-test-a-method-call-in-a-constructor-with-rspec
|
@@ -15,11 +13,11 @@ module Hoth
|
|
15
13
|
# beanstalkd_provider = Hoth::Providers::BeanstalkdProvider.new("foo_module")
|
16
14
|
# beanstalkd_provider.module_name.should == "foo_module"
|
17
15
|
end
|
18
|
-
|
16
|
+
|
19
17
|
it "should throw an error if no module name is passed" do
|
20
18
|
lambda { Hoth::Providers::BeanstalkdProvider.new }.should raise_error(ArgumentError)
|
21
19
|
end
|
22
|
-
|
20
|
+
|
23
21
|
it "should only listen for services defined for the passed module name" do
|
24
22
|
mail_module = Hoth::ServiceModule.new(:name => "mail_module")
|
25
23
|
mail_module.should_not_receive(:registered_services)
|
@@ -31,9 +29,10 @@ module Hoth
|
|
31
29
|
:mail_module => mail_module,
|
32
30
|
:foo_module => foo_module
|
33
31
|
})
|
34
|
-
|
32
|
+
|
33
|
+
Hoth::Providers::BeanstalkdProvider.new("foo_module")
|
35
34
|
end
|
36
35
|
|
37
36
|
end
|
38
37
|
end
|
39
|
-
end
|
38
|
+
end
|
@@ -40,7 +40,7 @@ module Hoth
|
|
40
40
|
describe ServiceModule::Environment do
|
41
41
|
|
42
42
|
it "should have an endpoint" do
|
43
|
-
endpoint_mock = mock("Endpoint"
|
43
|
+
endpoint_mock = mock("Endpoint").as_null_object
|
44
44
|
|
45
45
|
endpoint_block = Proc.new do
|
46
46
|
endpoint :development do
|
@@ -56,4 +56,4 @@ module Hoth
|
|
56
56
|
|
57
57
|
end
|
58
58
|
|
59
|
-
end
|
59
|
+
end
|
@@ -2,43 +2,34 @@ require File.expand_path(File.join(File.dirname(__FILE__), '../../', 'spec_help
|
|
2
2
|
|
3
3
|
module Hoth
|
4
4
|
module Transport
|
5
|
-
|
5
|
+
|
6
6
|
describe "Beanstalkd" do
|
7
7
|
before(:each) do
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
endpoint = mock("EndpointMock")
|
9
|
+
endpoint.stub(:host).and_return("localhost")
|
10
|
+
endpoint.stub(:port).and_return("11300")
|
11
11
|
|
12
|
-
|
13
|
-
|
12
|
+
service_module = mock("ServiceModule")
|
13
|
+
service_module.should_receive(:name).and_return(:test_service_module)
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
@service = mock("ServiceMock")
|
16
|
+
@service.should_receive(:name).and_return(:test_service)
|
17
|
+
@service.should_receive(:endpoint).any_number_of_times.and_return(endpoint)
|
18
|
+
@service.should_receive(:module).any_number_of_times.and_return(service_module)
|
19
19
|
|
20
|
-
|
20
|
+
@beanstalk_connection = mock("Beanstalk::Connection")
|
21
21
|
end
|
22
22
|
|
23
|
-
it "should send the payload over
|
24
|
-
Beanstalk::Connection.should_receive(:new).with("localhost:11300").and_return(@beanstalk_connection)
|
25
|
-
@beanstalk_connection.should_receive(:use).with(anything)
|
23
|
+
it "should send the payload over an existing Beanstalk::Connection and don't close it afterwards" do
|
24
|
+
Beanstalk::Connection.should_receive(:new).with("localhost:11300").once.and_return(@beanstalk_connection)
|
25
|
+
@beanstalk_connection.should_receive(:use).with(anything).any_number_of_times
|
26
26
|
@beanstalk_connection.should_receive(:put).with(["some_data_to_send"])
|
27
|
-
@beanstalk_connection.should_receive(:
|
28
|
-
|
29
|
-
transport = Beanstalkd.new(@service)
|
30
|
-
transport.call_remote_with("some_data_to_send")
|
31
|
-
end
|
32
|
-
|
33
|
-
it "should ensure to close the connection after sending the payload to beanstalkd" do
|
34
|
-
Beanstalk::Connection.should_receive(:new).with("localhost:11300").and_return(@beanstalk_connection)
|
35
|
-
@beanstalk_connection.should_receive(:use).with(anything)
|
36
|
-
@beanstalk_connection.should_receive(:put).never
|
37
|
-
@beanstalk_connection.should_receive(:close)
|
27
|
+
@beanstalk_connection.should_receive(:put).with(["some_more_data_to_send"])
|
28
|
+
@beanstalk_connection.should_receive(:close).never
|
38
29
|
|
39
30
|
transport = Beanstalkd.new(@service)
|
40
|
-
transport.encoder.should_receive(:encode).with(anything).and_raise("some error")
|
41
31
|
transport.call_remote_with("some_data_to_send")
|
32
|
+
transport.call_remote_with("some_more_data_to_send")
|
42
33
|
end
|
43
34
|
|
44
35
|
it "should use the beanstalk tube specified by the transport" do
|
@@ -46,7 +37,7 @@ module Hoth
|
|
46
37
|
transport = Beanstalkd.new(@service)
|
47
38
|
@beanstalk_connection.should_receive(:use).with(transport.tube_name)
|
48
39
|
@beanstalk_connection.should_receive(:put).with(["some_data_to_send"])
|
49
|
-
@beanstalk_connection.should_receive(:close)
|
40
|
+
@beanstalk_connection.should_receive(:close).never
|
50
41
|
|
51
42
|
transport.call_remote_with("some_data_to_send")
|
52
43
|
end
|
metadata
CHANGED
@@ -1,328 +1,155 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: hoth
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.4.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 3
|
9
|
-
- 4
|
10
|
-
version: 0.3.4
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Dirk Breuer
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
prerelease: false
|
23
|
-
type: :runtime
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ">="
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 3
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
version: "0"
|
12
|
+
date: 2012-10-04 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
33
15
|
name: hoth
|
34
|
-
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
prerelease: false
|
37
|
-
type: :development
|
38
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70167184796520 !ruby/object:Gem::Requirement
|
39
17
|
none: false
|
40
|
-
requirements:
|
41
|
-
- -
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
|
45
|
-
- 2
|
46
|
-
- 6
|
47
|
-
- 0
|
48
|
-
version: 2.6.0
|
49
|
-
name: rspec
|
50
|
-
version_requirements: *id002
|
51
|
-
- !ruby/object:Gem::Dependency
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
52
23
|
prerelease: false
|
53
|
-
|
54
|
-
|
24
|
+
version_requirements: *70167184796520
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: activesupport
|
27
|
+
requirement: &70167184792560 !ruby/object:Gem::Requirement
|
55
28
|
none: false
|
56
|
-
requirements:
|
57
|
-
- -
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
|
60
|
-
|
61
|
-
- 0
|
62
|
-
version: "0"
|
63
|
-
name: simple_publisher
|
64
|
-
version_requirements: *id003
|
65
|
-
- !ruby/object:Gem::Dependency
|
29
|
+
requirements:
|
30
|
+
- - ~>
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '3.0'
|
33
|
+
type: :runtime
|
66
34
|
prerelease: false
|
67
|
-
|
68
|
-
|
35
|
+
version_requirements: *70167184792560
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: json
|
38
|
+
requirement: &70167184790680 !ruby/object:Gem::Requirement
|
69
39
|
none: false
|
70
|
-
requirements:
|
71
|
-
- -
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
|
74
|
-
|
75
|
-
- 0
|
76
|
-
version: "0"
|
77
|
-
name: beanstalk-client
|
78
|
-
version_requirements: *id004
|
79
|
-
- !ruby/object:Gem::Dependency
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
type: :runtime
|
80
45
|
prerelease: false
|
81
|
-
|
82
|
-
|
46
|
+
version_requirements: *70167184790680
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rack
|
49
|
+
requirement: &70167184789700 !ruby/object:Gem::Requirement
|
83
50
|
none: false
|
84
|
-
requirements:
|
85
|
-
- -
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
|
88
|
-
|
89
|
-
- 0
|
90
|
-
version: "0"
|
91
|
-
name: em-jack
|
92
|
-
version_requirements: *id005
|
93
|
-
- !ruby/object:Gem::Dependency
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :runtime
|
94
56
|
prerelease: false
|
95
|
-
|
96
|
-
|
57
|
+
version_requirements: *70167184789700
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: rspec
|
60
|
+
requirement: &70167184810840 !ruby/object:Gem::Requirement
|
97
61
|
none: false
|
98
|
-
requirements:
|
62
|
+
requirements:
|
99
63
|
- - ~>
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
|
102
|
-
segments:
|
103
|
-
- 2
|
104
|
-
- 6
|
105
|
-
- 0
|
106
|
-
version: 2.6.0
|
107
|
-
name: rspec
|
108
|
-
version_requirements: *id006
|
109
|
-
- !ruby/object:Gem::Dependency
|
110
|
-
prerelease: false
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '2.11'
|
111
66
|
type: :development
|
112
|
-
requirement: &id007 !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
|
-
requirements:
|
115
|
-
- - ">="
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
hash: 3
|
118
|
-
segments:
|
119
|
-
- 0
|
120
|
-
version: "0"
|
121
|
-
name: simple_publisher
|
122
|
-
version_requirements: *id007
|
123
|
-
- !ruby/object:Gem::Dependency
|
124
67
|
prerelease: false
|
125
|
-
|
126
|
-
|
68
|
+
version_requirements: *70167184810840
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rake
|
71
|
+
requirement: &70167184810200 !ruby/object:Gem::Requirement
|
127
72
|
none: false
|
128
|
-
requirements:
|
129
|
-
- -
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
|
132
|
-
segments:
|
133
|
-
- 0
|
134
|
-
version: "0"
|
135
|
-
name: beanstalk-client
|
136
|
-
version_requirements: *id008
|
137
|
-
- !ruby/object:Gem::Dependency
|
138
|
-
prerelease: false
|
73
|
+
requirements:
|
74
|
+
- - ! '>='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
139
77
|
type: :development
|
140
|
-
requirement: &id009 !ruby/object:Gem::Requirement
|
141
|
-
none: false
|
142
|
-
requirements:
|
143
|
-
- - ">="
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
hash: 3
|
146
|
-
segments:
|
147
|
-
- 0
|
148
|
-
version: "0"
|
149
|
-
name: em-jack
|
150
|
-
version_requirements: *id009
|
151
|
-
- !ruby/object:Gem::Dependency
|
152
78
|
prerelease: false
|
153
|
-
|
154
|
-
|
79
|
+
version_requirements: *70167184810200
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: em-jack
|
82
|
+
requirement: &70167184808240 !ruby/object:Gem::Requirement
|
155
83
|
none: false
|
156
|
-
requirements:
|
157
|
-
- -
|
158
|
-
- !ruby/object:Gem::Version
|
159
|
-
|
160
|
-
segments:
|
161
|
-
- 2
|
162
|
-
- 6
|
163
|
-
- 0
|
164
|
-
version: 2.6.0
|
165
|
-
name: rspec
|
166
|
-
version_requirements: *id010
|
167
|
-
- !ruby/object:Gem::Dependency
|
168
|
-
prerelease: false
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
169
88
|
type: :development
|
170
|
-
requirement: &id011 !ruby/object:Gem::Requirement
|
171
|
-
none: false
|
172
|
-
requirements:
|
173
|
-
- - ">="
|
174
|
-
- !ruby/object:Gem::Version
|
175
|
-
hash: 3
|
176
|
-
segments:
|
177
|
-
- 0
|
178
|
-
version: "0"
|
179
|
-
name: simple_publisher
|
180
|
-
version_requirements: *id011
|
181
|
-
- !ruby/object:Gem::Dependency
|
182
89
|
prerelease: false
|
183
|
-
|
184
|
-
|
185
|
-
none: false
|
186
|
-
requirements:
|
187
|
-
- - ">="
|
188
|
-
- !ruby/object:Gem::Version
|
189
|
-
hash: 3
|
190
|
-
segments:
|
191
|
-
- 0
|
192
|
-
version: "0"
|
90
|
+
version_requirements: *70167184808240
|
91
|
+
- !ruby/object:Gem::Dependency
|
193
92
|
name: beanstalk-client
|
194
|
-
|
195
|
-
- !ruby/object:Gem::Dependency
|
196
|
-
prerelease: false
|
197
|
-
type: :development
|
198
|
-
requirement: &id013 !ruby/object:Gem::Requirement
|
93
|
+
requirement: &70167184820300 !ruby/object:Gem::Requirement
|
199
94
|
none: false
|
200
|
-
requirements:
|
201
|
-
- -
|
202
|
-
- !ruby/object:Gem::Version
|
203
|
-
|
204
|
-
|
205
|
-
- 0
|
206
|
-
version: "0"
|
207
|
-
name: em-jack
|
208
|
-
version_requirements: *id013
|
209
|
-
- !ruby/object:Gem::Dependency
|
210
|
-
prerelease: false
|
211
|
-
type: :runtime
|
212
|
-
requirement: &id014 !ruby/object:Gem::Requirement
|
213
|
-
none: false
|
214
|
-
requirements:
|
215
|
-
- - ">="
|
216
|
-
- !ruby/object:Gem::Version
|
217
|
-
hash: 3
|
218
|
-
segments:
|
219
|
-
- 0
|
220
|
-
version: "0"
|
221
|
-
name: activesupport
|
222
|
-
version_requirements: *id014
|
223
|
-
- !ruby/object:Gem::Dependency
|
224
|
-
prerelease: false
|
225
|
-
type: :runtime
|
226
|
-
requirement: &id015 !ruby/object:Gem::Requirement
|
227
|
-
none: false
|
228
|
-
requirements:
|
229
|
-
- - ">="
|
230
|
-
- !ruby/object:Gem::Version
|
231
|
-
hash: 3
|
232
|
-
segments:
|
233
|
-
- 0
|
234
|
-
version: "0"
|
235
|
-
name: bertrpc
|
236
|
-
version_requirements: *id015
|
237
|
-
- !ruby/object:Gem::Dependency
|
95
|
+
requirements:
|
96
|
+
- - ! '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
type: :development
|
238
100
|
prerelease: false
|
239
|
-
|
240
|
-
|
101
|
+
version_requirements: *70167184820300
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: yard
|
104
|
+
requirement: &70167184818920 !ruby/object:Gem::Requirement
|
241
105
|
none: false
|
242
|
-
requirements:
|
243
|
-
- -
|
244
|
-
- !ruby/object:Gem::Version
|
245
|
-
|
246
|
-
segments:
|
247
|
-
- 0
|
248
|
-
version: "0"
|
249
|
-
name: json
|
250
|
-
version_requirements: *id016
|
251
|
-
- !ruby/object:Gem::Dependency
|
252
|
-
prerelease: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
253
110
|
type: :development
|
254
|
-
requirement: &id017 !ruby/object:Gem::Requirement
|
255
|
-
none: false
|
256
|
-
requirements:
|
257
|
-
- - ~>
|
258
|
-
- !ruby/object:Gem::Version
|
259
|
-
hash: 23
|
260
|
-
segments:
|
261
|
-
- 2
|
262
|
-
- 6
|
263
|
-
- 0
|
264
|
-
version: 2.6.0
|
265
|
-
name: rspec
|
266
|
-
version_requirements: *id017
|
267
|
-
- !ruby/object:Gem::Dependency
|
268
111
|
prerelease: false
|
269
|
-
|
270
|
-
|
112
|
+
version_requirements: *70167184818920
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: redcarpet
|
115
|
+
requirement: &70167184816200 !ruby/object:Gem::Requirement
|
271
116
|
none: false
|
272
|
-
requirements:
|
273
|
-
- -
|
274
|
-
- !ruby/object:Gem::Version
|
275
|
-
|
276
|
-
segments:
|
277
|
-
- 0
|
278
|
-
version: "0"
|
279
|
-
name: simple_publisher
|
280
|
-
version_requirements: *id018
|
281
|
-
- !ruby/object:Gem::Dependency
|
282
|
-
prerelease: false
|
117
|
+
requirements:
|
118
|
+
- - ! '>='
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0'
|
283
121
|
type: :development
|
284
|
-
requirement: &id019 !ruby/object:Gem::Requirement
|
285
|
-
none: false
|
286
|
-
requirements:
|
287
|
-
- - ">="
|
288
|
-
- !ruby/object:Gem::Version
|
289
|
-
hash: 3
|
290
|
-
segments:
|
291
|
-
- 0
|
292
|
-
version: "0"
|
293
|
-
name: beanstalk-client
|
294
|
-
version_requirements: *id019
|
295
|
-
- !ruby/object:Gem::Dependency
|
296
122
|
prerelease: false
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
requirements:
|
301
|
-
- - ">="
|
302
|
-
- !ruby/object:Gem::Version
|
303
|
-
hash: 3
|
304
|
-
segments:
|
305
|
-
- 0
|
306
|
-
version: "0"
|
307
|
-
name: em-jack
|
308
|
-
version_requirements: *id020
|
309
|
-
description: |
|
310
|
-
Creating a SOA requires a centralized location to define all services within the
|
311
|
-
SOA. Furthermore you want to know where to deploy those services.
|
123
|
+
version_requirements: *70167184816200
|
124
|
+
description: ! 'Creating a SOA requires a centralized location to define all services
|
125
|
+
within the
|
312
126
|
|
313
|
-
|
127
|
+
SOA. Furthermore you want to know where to deploy those services.'
|
128
|
+
email:
|
129
|
+
- dirk.breuer@gmail.com
|
314
130
|
executables: []
|
315
|
-
|
316
131
|
extensions: []
|
317
|
-
|
318
|
-
|
132
|
+
extra_rdoc_files: []
|
133
|
+
files:
|
134
|
+
- .document
|
135
|
+
- .gitignore
|
136
|
+
- .rspec
|
137
|
+
- Gemfile
|
319
138
|
- LICENSE
|
320
|
-
- README.
|
321
|
-
-
|
322
|
-
files:
|
323
|
-
- Gemfile.lock
|
324
|
-
- README.rdoc
|
139
|
+
- README.md
|
140
|
+
- Rakefile
|
325
141
|
- THANKS.md
|
142
|
+
- example/business_objects.rb
|
143
|
+
- example/config/module_definition.rb
|
144
|
+
- example/config/service_definition.rb
|
145
|
+
- example/rack_service_provider.ru
|
146
|
+
- example/service_client.rb
|
147
|
+
- example/simple/README.md
|
148
|
+
- example/simple/config/module_definition.rb
|
149
|
+
- example/simple/config/service_definition.rb
|
150
|
+
- example/simple/simple_client.rb
|
151
|
+
- example/simple/simple_provider.ru
|
152
|
+
- hoth.gemspec
|
326
153
|
- lib/hoth.rb
|
327
154
|
- lib/hoth/encoding/json.rb
|
328
155
|
- lib/hoth/encoding/no_op.rb
|
@@ -331,7 +158,6 @@ files:
|
|
331
158
|
- lib/hoth/extension/core/exception.rb
|
332
159
|
- lib/hoth/modules.rb
|
333
160
|
- lib/hoth/providers/beanstalkd_provider.rb
|
334
|
-
- lib/hoth/providers/bertrpc_provider.rb
|
335
161
|
- lib/hoth/providers/rack_provider.rb
|
336
162
|
- lib/hoth/service.rb
|
337
163
|
- lib/hoth/service_definition.rb
|
@@ -341,11 +167,10 @@ files:
|
|
341
167
|
- lib/hoth/transport.rb
|
342
168
|
- lib/hoth/transport/base.rb
|
343
169
|
- lib/hoth/transport/beanstalkd.rb
|
344
|
-
- lib/hoth/transport/bert.rb
|
345
170
|
- lib/hoth/transport/http.rb
|
346
171
|
- lib/hoth/transport/https.rb
|
347
|
-
- lib/hoth/transport/workling.rb
|
348
172
|
- lib/hoth/util/logger.rb
|
173
|
+
- lib/hoth/version.rb
|
349
174
|
- spec/spec_helper.rb
|
350
175
|
- spec/unit/encoding/json_spec.rb
|
351
176
|
- spec/unit/endpoint_spec.rb
|
@@ -359,45 +184,38 @@ files:
|
|
359
184
|
- spec/unit/transport/base_spec.rb
|
360
185
|
- spec/unit/transport/beanstalkd_spec.rb
|
361
186
|
- spec/unit/transport/http_spec.rb
|
362
|
-
- spec/unit/transport/workling_spec.rb
|
363
187
|
- spec/unit/transport_spec.rb
|
364
|
-
|
365
|
-
- TODO
|
366
|
-
has_rdoc: true
|
367
|
-
homepage: http://github.com/galaxycats/hoth
|
188
|
+
homepage: https://github.com/galaxycats/hoth
|
368
189
|
licenses: []
|
369
|
-
|
370
190
|
post_install_message:
|
371
191
|
rdoc_options: []
|
372
|
-
|
373
|
-
require_paths:
|
192
|
+
require_paths:
|
374
193
|
- lib
|
375
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
194
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
376
195
|
none: false
|
377
|
-
requirements:
|
378
|
-
- -
|
379
|
-
- !ruby/object:Gem::Version
|
380
|
-
|
381
|
-
segments:
|
196
|
+
requirements:
|
197
|
+
- - ! '>='
|
198
|
+
- !ruby/object:Gem::Version
|
199
|
+
version: '0'
|
200
|
+
segments:
|
382
201
|
- 0
|
383
|
-
|
384
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
202
|
+
hash: -3709706026332848427
|
203
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
385
204
|
none: false
|
386
|
-
requirements:
|
387
|
-
- -
|
388
|
-
- !ruby/object:Gem::Version
|
389
|
-
|
390
|
-
segments:
|
205
|
+
requirements:
|
206
|
+
- - ! '>='
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '0'
|
209
|
+
segments:
|
391
210
|
- 0
|
392
|
-
|
211
|
+
hash: -3709706026332848427
|
393
212
|
requirements: []
|
394
|
-
|
395
213
|
rubyforge_project:
|
396
|
-
rubygems_version: 1.
|
214
|
+
rubygems_version: 1.8.16
|
397
215
|
signing_key:
|
398
216
|
specification_version: 3
|
399
217
|
summary: Registry and deployment description abstraction for SOA-Services
|
400
|
-
test_files:
|
218
|
+
test_files:
|
401
219
|
- spec/spec_helper.rb
|
402
220
|
- spec/unit/encoding/json_spec.rb
|
403
221
|
- spec/unit/endpoint_spec.rb
|
@@ -411,5 +229,5 @@ test_files:
|
|
411
229
|
- spec/unit/transport/base_spec.rb
|
412
230
|
- spec/unit/transport/beanstalkd_spec.rb
|
413
231
|
- spec/unit/transport/http_spec.rb
|
414
|
-
- spec/unit/transport/workling_spec.rb
|
415
232
|
- spec/unit/transport_spec.rb
|
233
|
+
has_rdoc:
|