dynarex 0.9.10 → 0.9.11
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/dynarex.rb +22 -3
- metadata +2 -2
data/lib/dynarex.rb
CHANGED
@@ -25,6 +25,10 @@ class Dynarex
|
|
25
25
|
open(location) if location
|
26
26
|
end
|
27
27
|
|
28
|
+
def add(x)
|
29
|
+
@doc.add x
|
30
|
+
end
|
31
|
+
|
28
32
|
def delimiter=(separator)
|
29
33
|
@format_mask = @format_mask.to_s.gsub(/\s/, separator)
|
30
34
|
@summary[:format_mask] = @format_mask
|
@@ -63,7 +67,11 @@ class Dynarex
|
|
63
67
|
alias to_h flat_records
|
64
68
|
|
65
69
|
# Returns all records as a string format specified by the summary format_mask field.
|
66
|
-
|
70
|
+
|
71
|
+
def to_doc
|
72
|
+
@doc
|
73
|
+
end
|
74
|
+
|
67
75
|
def to_s
|
68
76
|
xsl_buffer =<<EOF
|
69
77
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
@@ -155,6 +163,8 @@ EOF
|
|
155
163
|
end
|
156
164
|
|
157
165
|
h.each {|key, item| h.delete(key) if not h2.has_key? key}
|
166
|
+
refresh_doc
|
167
|
+
#load_records
|
158
168
|
self
|
159
169
|
end
|
160
170
|
|
@@ -205,11 +215,14 @@ EOF
|
|
205
215
|
# dyarex.delete 3 # deletes record with id 3
|
206
216
|
|
207
217
|
def delete(id)
|
208
|
-
|
209
|
-
node.parent.delete node
|
218
|
+
@doc.delete("records/*[@id='#{id}']")
|
210
219
|
load_records
|
211
220
|
self
|
212
221
|
end
|
222
|
+
|
223
|
+
def element(x)
|
224
|
+
@doc.element x
|
225
|
+
end
|
213
226
|
|
214
227
|
def sort_by!(&element_blk)
|
215
228
|
refresh_doc
|
@@ -233,9 +246,14 @@ EOF
|
|
233
246
|
!@doc.element("records/*[@id='#{id}']").nil?
|
234
247
|
end
|
235
248
|
|
249
|
+
def xpath(x)
|
250
|
+
@doc.xpath x
|
251
|
+
end
|
252
|
+
|
236
253
|
private
|
237
254
|
|
238
255
|
def hash_create(params={}, id=nil)
|
256
|
+
|
239
257
|
fields = capture_fields(params)
|
240
258
|
record = Rexle::Element.new @record_name
|
241
259
|
fields.each do |k,v|
|
@@ -253,6 +271,7 @@ EOF
|
|
253
271
|
attributes.each {|k,v| record.add_attribute(k.to_s, v)}
|
254
272
|
|
255
273
|
@doc.element('records').add record
|
274
|
+
|
256
275
|
end
|
257
276
|
|
258
277
|
def capture_fields(params)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dynarex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.11
|
5
5
|
platform: ruby
|
6
6
|
authors: []
|
7
7
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date:
|
12
|
+
date: 2011-01-03 00:00:00 +00:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|