xmlregistry_objects 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ffd071583302df7de17d0eb36de37b29c4881630
4
- data.tar.gz: b061a0f8c874b38f09170a52916aba49be281bff
3
+ metadata.gz: bfe8ced78cb4a581e54af1eac009e45dbbfd8380
4
+ data.tar.gz: e2f10a9dc964aad8cd0e9c9bc3d9f5b5c4327c30
5
5
  SHA512:
6
- metadata.gz: 6cfea288a2540674418a3ad2bc7a761cdb8038b426dcbdd8e498d1b4bdd9c5fcc41629cfb21b69730d536d8949bef3b6c909d5380e8bd17cba52579b83bac6c0
7
- data.tar.gz: c22e554c29b4b809d95de099b46d5f5d52bb906641019955322f5c6117bbe1af08fc40669027cf640d5c333c91b027d0939e3722a0b23cf4c9cfce9427786d93
6
+ metadata.gz: 2c83879b3048040c39cc8fb1d4d20c461264145422b8308a42a3499d5334794eb7647c68313586726900440f967f790066cc9beb932419b399ea6a33183f6044
7
+ data.tar.gz: f8abb8384f7982bf6c6bc8d61544afd5f9b4dafb87d4eaa3eb6a65567cfe5bf2590147905728e7b67b1c519e7d32ea73f5e85d36a313b275c57f8148e21dca32
checksums.yaml.gz.sig CHANGED
Binary file
@@ -11,7 +11,17 @@ class XMLRegistryObjects
11
11
 
12
12
  attr_reader :to_h
13
13
 
14
- def initialize(reg, polyrexdoc)
14
+ def initialize(reg, obj)
15
+
16
+ polyrexdoc = if obj.is_a? Polyrex then
17
+
18
+ obj
19
+
20
+ elsif obj.is_a? String then
21
+
22
+ Polyrex.new.import "<?polyrex schema='entries/object[name, regkey]/"\
23
+ "methodx[name,subkeyname]' delimiter=' = '?>\n" + obj
24
+ end
15
25
 
16
26
  @to_h = polyrexdoc.records.inject({}) do |rtn, row|
17
27
 
@@ -30,17 +40,28 @@ class XMLRegistryObjects
30
40
  row.records.inject(s) do |r, attr|
31
41
 
32
42
  attr_name, subkey = attr.name, attr.subkeyname
43
+ key = path + '/' + subkey
33
44
 
34
- r << make_def(path, subkey, attr_name)
45
+ r << make_def(key, attr_name)
46
+ r << make_setdef(key, attr_name[/\w+/])
35
47
 
36
48
  end
37
49
 
38
50
  else
39
51
 
40
- names = reg.xpath("#{path}/*/name()")
52
+ a = reg.xpath("#{path}/*")
41
53
 
42
- names.inject(s) do |r, subkey|
43
- r << make_def(path, subkey)
54
+ a.inject(s) do |r, x|
55
+
56
+ methods_name = subkey = x.name
57
+ type = x.attributes[:class]
58
+ key = path + '/' + subkey
59
+
60
+ r << make_setdef(key, method_name=subkey)
61
+
62
+ method_name += '?' if type and type.first == 'boolean'
63
+ r << make_def(key, method_name)
64
+
44
65
  end
45
66
  end
46
67
 
@@ -56,12 +77,12 @@ class XMLRegistryObjects
56
77
 
57
78
  private
58
79
 
59
- def make_def(path, subkey, method_name=subkey)
60
- "
61
- def #{method_name}
62
- @reg.get_key('#{[path, subkey].join('/')}')
63
- end
64
- "
80
+ def make_def(key, method_name)
81
+ "def #{method_name}() @reg.get_key '#{key}' end\n"
65
82
  end
83
+
84
+ def make_setdef(key, method_name)
85
+ "def #{method_name}=(v) @reg.set_key '#{key}', v end\n"
86
+ end
66
87
 
67
88
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xmlregistry_objects
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  wqxRKfbBOqXm+dGN+8ORUi9zTMOCo8Ga+cAbwYouf3Rzoq8gZMo6o1ZuAyEu1Vjl
32
32
  u2W9v1mcGY4/Vw==
33
33
  -----END CERTIFICATE-----
34
- date: 2015-03-07 00:00:00.000000000 Z
34
+ date: 2015-03-09 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: dws-registry
@@ -42,7 +42,7 @@ dependencies:
42
42
  version: '0.2'
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: 0.2.1
45
+ version: 0.2.4
46
46
  type: :runtime
47
47
  prerelease: false
48
48
  version_requirements: !ruby/object:Gem::Requirement
@@ -52,7 +52,7 @@ dependencies:
52
52
  version: '0.2'
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: 0.2.1
55
+ version: 0.2.4
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: polyrex
58
58
  requirement: !ruby/object:Gem::Requirement
metadata.gz.sig CHANGED
Binary file