polyrex-objects 0.6.11 → 0.6.12
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
- checksums.yaml.gz.sig +0 -0
- data/lib/polyrex-objects.rb +48 -30
- data.tar.gz.sig +0 -0
- metadata +2 -2
- metadata.gz.sig +1 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81562ece1dfc9ff78fad8cb7e996b4a7b7b38b86
|
4
|
+
data.tar.gz: dfab020cffa04dab9e486a85a896909d16bd5cc3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2eca8c04ce3d7228587e9cce471fc4a3e89c32d3e06b480b80621ad76859d40633c9882e4b6f8ad94a9bf166117f1eb2fafd7896f7e627834ec612cf8406e9e2
|
7
|
+
data.tar.gz: c5f49c8383860a306302f675af94225693b87515d8c60f949403a88633bc7d59fda44ed20b6e73c2ee22f31d735022d46c9569387136a1e5f26bca4806b592e9
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/polyrex-objects.rb
CHANGED
@@ -25,6 +25,14 @@ class PolyrexObjects
|
|
25
25
|
@create
|
26
26
|
end
|
27
27
|
|
28
|
+
def delete()
|
29
|
+
@node.delete
|
30
|
+
end
|
31
|
+
|
32
|
+
def inspect()
|
33
|
+
"#<PolyrexObject:%s" % __id__
|
34
|
+
end
|
35
|
+
|
28
36
|
def to_xml(options={})
|
29
37
|
@node.xml(options)
|
30
38
|
end
|
@@ -73,35 +81,16 @@ class PolyrexObjects
|
|
73
81
|
end
|
74
82
|
end
|
75
83
|
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
def objects.sort_by!(&element_blk)
|
87
|
-
a = @node.xpath('records/*').sort_by &element_blk
|
88
|
-
records = @node.xpath('records')
|
89
|
-
records.delete
|
90
|
-
records = Rexle::Element.new 'records'
|
91
|
-
a.each {|record| records.add record}
|
92
|
-
@node.add records
|
93
|
-
@node.xpath('records/*').map {|record| #{@class_names[i]}.new(record)}
|
94
|
-
end
|
95
|
-
|
96
|
-
objects.records = @node
|
97
|
-
objects
|
98
|
-
end
|
99
|
-
|
100
|
-
alias #{@class_names[i].downcase} records
|
101
|
-
|
102
|
-
}"
|
103
|
-
end
|
104
|
-
|
84
|
+
if @class_names.length < 2 then
|
85
|
+
make_def_records(@class_names.first)
|
86
|
+
else
|
87
|
+
# implement the child_object within each class object
|
88
|
+
@class_names[0..-2].reverse.each_with_index do |class_name, k|
|
89
|
+
|
90
|
+
i = @class_names.length - (k + 1)
|
91
|
+
make_def_records(class_name,i)
|
92
|
+
end
|
93
|
+
end
|
105
94
|
@class_names[1..-1].each_with_index do |class_name, k|
|
106
95
|
eval "#{class_name}.class_eval {
|
107
96
|
def parent()
|
@@ -118,6 +107,35 @@ class PolyrexObjects
|
|
118
107
|
end
|
119
108
|
end
|
120
109
|
|
110
|
+
def make_def_records(class_name, i=0)
|
111
|
+
|
112
|
+
eval "#{class_name}.class_eval {
|
113
|
+
def records()
|
114
|
+
objects = @node.xpath('records/*').map {|record| #{@class_names[i]}.new(record, @@id)}
|
115
|
+
|
116
|
+
def objects.records=(node); @node = node; end
|
117
|
+
def objects.records(); @node; end
|
118
|
+
|
119
|
+
def objects.sort_by!(&element_blk)
|
120
|
+
a = @node.xpath('records/*').sort_by &element_blk
|
121
|
+
records = @node.xpath('records')
|
122
|
+
records.delete
|
123
|
+
records = Rexle::Element.new 'records'
|
124
|
+
a.each {|record| records.add record}
|
125
|
+
@node.add records
|
126
|
+
@node.xpath('records/*').map {|record| #{@class_names[i]}.new(record)}
|
127
|
+
end
|
128
|
+
|
129
|
+
objects.records = @node
|
130
|
+
objects
|
131
|
+
end
|
132
|
+
|
133
|
+
alias #{@class_names[i].downcase} records
|
134
|
+
|
135
|
+
}"
|
136
|
+
|
137
|
+
end
|
138
|
+
|
121
139
|
def to_a
|
122
140
|
@class_names.map {|x| eval(x)}
|
123
141
|
end
|
@@ -127,4 +145,4 @@ class PolyrexObjects
|
|
127
145
|
end
|
128
146
|
|
129
147
|
|
130
|
-
end
|
148
|
+
end
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: polyrex-objects
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -29,7 +29,7 @@ cert_chain:
|
|
29
29
|
JMWS3MnEwxE/NLM3D1lV0gz1tVeyaJfaGg4M23ZLHbcE6P9LF2fV3LIRxDJlUeUB
|
30
30
|
DdZHtSzrIZNGkcDlh1ea0JRmUxIv1wrk
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date: 2013-
|
32
|
+
date: 2013-09-21 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: polyrex-createobject
|
metadata.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
|
2
|
-
�f�������gL�v炓�HPA�b�m(2}3��1�۩z���Z۩�W'�<B
|
1
|
+
A��]�4�P���6M�*KZ����I5����C����#�䩀B��p�=�?:عd
|