rhaproxy 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Changelog +41 -0
- data/README +8 -8
- data/lib/rhaproxy/backend.rb +29 -4989
- data/lib/rhaproxy/defaults.rb +66 -3682
- data/lib/rhaproxy/frontend.rb +56 -3226
- data/lib/rhaproxy/keywords.rb +6502 -0
- data/lib/rhaproxy/listen.rb +3 -6065
- data/lib/rhaproxy/mixins.rb +20 -0
- data/lib/rhaproxy.rb +2 -0
- metadata +6 -4
@@ -0,0 +1,20 @@
|
|
1
|
+
class Class
|
2
|
+
old_include = instance_method(:include)
|
3
|
+
define_method(:include) do |*args|
|
4
|
+
default = {:alias => {}, :exclude => []}
|
5
|
+
hash_arg = (Hash === args.last) ? default.update(args.pop) : default
|
6
|
+
m = Module.new
|
7
|
+
args.each{|mod| m.module_eval{ include mod } }
|
8
|
+
# ^^^^^^^^^^^^^^^
|
9
|
+
# check for "method shadowing" here and raise an exception or
|
10
|
+
# something if you feel like it
|
11
|
+
hash_arg[:alias].each_pair do |old, new|
|
12
|
+
m.module_eval{ alias_method(new, old); undef_method(old) }
|
13
|
+
end
|
14
|
+
excluded = (Array === hash_arg[:exclude]) ? hash_arg[:exclude] : [hash_arg[:exclude]]
|
15
|
+
# [*hash_arg[:exclude]] won't work on 1.9 cause there's no Object#to_a
|
16
|
+
excluded.each{|meth| m.module_eval { undef_method(meth) } }
|
17
|
+
old_include.bind(self).call(m)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
data/lib/rhaproxy.rb
CHANGED
@@ -5,5 +5,7 @@
|
|
5
5
|
# Copyright:: (cc) 2011 Joel Bryan Juliano
|
6
6
|
# License:: MIT
|
7
7
|
|
8
|
+
require File.expand_path(File.dirname(__FILE__) + '/rhaproxy/mixins.rb')
|
9
|
+
require File.expand_path(File.dirname(__FILE__) + '/rhaproxy/keywords.rb')
|
8
10
|
Dir[File.join(File.dirname(__FILE__), 'rhaproxy/**/*.rb')].sort.each { |lib| require lib }
|
9
11
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rhaproxy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 1
|
10
|
+
version: 0.1.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Joel Bryan Juliano
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2011-01-04 00:00:00 +08:00
|
19
19
|
default_executable:
|
20
20
|
dependencies: []
|
21
21
|
|
@@ -43,6 +43,8 @@ files:
|
|
43
43
|
- lib/rhaproxy/userlist.rb
|
44
44
|
- lib/rhaproxy/peers.rb
|
45
45
|
- lib/rhaproxy/frontend.rb
|
46
|
+
- lib/rhaproxy/keywords.rb
|
47
|
+
- lib/rhaproxy/mixins.rb
|
46
48
|
has_rdoc: true
|
47
49
|
homepage: http://github.com/jjuliano/rhaproxy
|
48
50
|
licenses: []
|