liquid-ext 3.1.2 → 3.2.0
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.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -1
- data/lib/liquid/ext/integer.rb +12 -0
- data/lib/liquid/ext/jmx4r.rb +43 -0
- data/lib/liquid/zmq.rb +3 -0
- data/liquid-ext.gemspec +2 -1
- metadata +18 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 60c594a5e6540ff912a888069e175df3df538689
|
4
|
+
data.tar.gz: b7aad2df11ab4e395b6273f998328ce33e1cc983
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e32319504d77cb97d76b9f4d0b10f50fe978355d36001f8ca62b33cc30cc98ccb8afcca3669b069f34bdce7f96cadc0865b2081e278ae467a4ed6e480e707324
|
7
|
+
data.tar.gz: 093c9039dde0b4c27323fe984906bd5970c827afded74e9c51ad4f0be8b0c07267bc5161b7842e864dca88fc25602e2991592237e52272a3d40747135ca590e6
|
data/Gemfile.lock
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
liquid-ext (3.
|
4
|
+
liquid-ext (3.2.0)
|
5
5
|
activesupport
|
6
6
|
erubis
|
7
|
+
jmx4r
|
7
8
|
mixlib-cli
|
8
9
|
terminal-table
|
9
10
|
|
@@ -33,6 +34,7 @@ GEM
|
|
33
34
|
ruby-progressbar (~> 1.3)
|
34
35
|
hirb (0.7.1)
|
35
36
|
i18n (0.6.9)
|
37
|
+
jmx4r (0.1.4)
|
36
38
|
liquid-development (0.2.1)
|
37
39
|
awesome_print
|
38
40
|
bond
|
@@ -0,0 +1,12 @@
|
|
1
|
+
class Integer
|
2
|
+
TWO_POWER_WORD1 = 2 ** (1.size * 8 - 1)
|
3
|
+
TWO_POWER_WORD = 2 ** (1.size * 8)
|
4
|
+
|
5
|
+
def self.to_signed(number)
|
6
|
+
number >= TWO_POWER_WORD1 ? number - TWO_POWER_WORD : number
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.to_unsigned(number)
|
10
|
+
number < 0 ? number + TWO_POWER_WORD : number
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'active_support/core_ext/hash/keys'
|
2
|
+
require 'jmx4r'
|
3
|
+
|
4
|
+
java_import 'javax.management.RuntimeMBeanException'
|
5
|
+
java_import 'java.lang.UnsupportedOperationException'
|
6
|
+
|
7
|
+
class JMX::MBean
|
8
|
+
|
9
|
+
def self.to_tree
|
10
|
+
find_all_by_name("*:*").inject({}) do |result, mbean|
|
11
|
+
domain = mbean.object_name.domain
|
12
|
+
properties = mbean.object_name.key_property_list_string.split(',')
|
13
|
+
mresult = result[domain] ||= {}
|
14
|
+
mresult = mresult[properties.shift] ||= {} until properties.empty?
|
15
|
+
mbean.to_h(mresult)
|
16
|
+
result
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def to_h(hsh = {})
|
21
|
+
attributes.keys.inject(hsh) do |result, key|
|
22
|
+
result[key.to_sym] = get_value(key)
|
23
|
+
result
|
24
|
+
end.merge!({
|
25
|
+
object_name: object_name.to_s,
|
26
|
+
})
|
27
|
+
end
|
28
|
+
|
29
|
+
def get_value(key)
|
30
|
+
case value = send(key)
|
31
|
+
when Java::JavaxManagementOpenmbean::CompositeDataSupport
|
32
|
+
Hash[value.to_a].symbolize_keys
|
33
|
+
when Enumerable
|
34
|
+
value.to_a
|
35
|
+
else
|
36
|
+
value
|
37
|
+
end
|
38
|
+
rescue RuntimeMBeanException => e
|
39
|
+
raise unless e.cause.is_a?(UnsupportedOperationException)
|
40
|
+
nil
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
data/lib/liquid/zmq.rb
CHANGED
@@ -7,6 +7,9 @@ java_import "org.zeromq.ZMQException"
|
|
7
7
|
java_import "org.zeromq.ZMQQueue"
|
8
8
|
java_import "org.zeromq.ZMsg"
|
9
9
|
java_import "org.zeromq.ZThread"
|
10
|
+
|
11
|
+
java_import "java.nio.channels.AsynchronousCloseException"
|
12
|
+
java_import "java.nio.channels.ClosedChannelException"
|
10
13
|
java_import "java.nio.channels.ClosedSelectorException"
|
11
14
|
|
12
15
|
class ZContext
|
data/liquid-ext.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = "liquid-ext"
|
5
|
-
spec.version = "3.
|
5
|
+
spec.version = "3.2.0"
|
6
6
|
spec.authors = ["LiquidM, Inc."]
|
7
7
|
spec.email = ["opensource@liquidm.com"]
|
8
8
|
spec.description = %q{Ruby core extensions and helper libraries}
|
@@ -19,4 +19,5 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.add_dependency "erubis"
|
20
20
|
spec.add_dependency "mixlib-cli"
|
21
21
|
spec.add_dependency "terminal-table"
|
22
|
+
spec.add_dependency "jmx4r"
|
22
23
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: liquid-ext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- LiquidM, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-03-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -66,6 +66,20 @@ dependencies:
|
|
66
66
|
version: '0'
|
67
67
|
prerelease: false
|
68
68
|
type: :runtime
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: jmx4r
|
71
|
+
version_requirements: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
requirement: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - '>='
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0'
|
81
|
+
prerelease: false
|
82
|
+
type: :runtime
|
69
83
|
description: Ruby core extensions and helper libraries
|
70
84
|
email:
|
71
85
|
- opensource@liquidm.com
|
@@ -93,6 +107,8 @@ files:
|
|
93
107
|
- lib/liquid/ext/array.rb
|
94
108
|
- lib/liquid/ext/enumerable.rb
|
95
109
|
- lib/liquid/ext/hash.rb
|
110
|
+
- lib/liquid/ext/integer.rb
|
111
|
+
- lib/liquid/ext/jmx4r.rb
|
96
112
|
- lib/liquid/ext/nil.rb
|
97
113
|
- lib/liquid/ext/ordered_set.rb
|
98
114
|
- lib/liquid/ext/signal.rb
|