polyrex-objects 0.3.2 → 0.4.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.
Files changed (2) hide show
  1. data/lib/polyrex-objects.rb +13 -1
  2. metadata +12 -3
@@ -3,6 +3,7 @@
3
3
  # file: polyrex-objects.rb
4
4
 
5
5
  require 'rexml/document'
6
+ require 'polyrex-createobject'
6
7
 
7
8
  class PolyrexObjects
8
9
  include REXML
@@ -22,7 +23,7 @@ class PolyrexObjects
22
23
  classx = []
23
24
  classx << "class #{name.capitalize}"
24
25
  classx << "include REXML"
25
- classx << "def initialize(node); @node = node; end"
26
+ classx << "def initialize(node, id=nil); @id=id; @node = node; @create = PolyrexCreateObject.new('#{schema}'); end"
26
27
  fields.each do |field|
27
28
  classx << "def #{field}; XPath.first(@node, 'summary/#{field}/text()'); end"
28
29
  classx << "def #{field}=(text); XPath.first(@node, 'summary/#{field}').text = text; end"
@@ -40,9 +41,18 @@ class PolyrexObjects
40
41
  def records()
41
42
  XPath.each(@node, 'records/*') {|record| yield(#{@class_names[i]}.new(record))}
42
43
  end
44
+
45
+ def create(id=nil)
46
+ @create.id = id || @id
47
+ @id = @id.to_i + 1
48
+ @create.record = @node
49
+ @create
50
+ end
51
+
43
52
  }"
44
53
  end
45
54
 
55
+
46
56
  end
47
57
 
48
58
  def to_a
@@ -52,4 +62,6 @@ class PolyrexObjects
52
62
  def to_h
53
63
  Hash[self.to_a.map {|x| [x.name[/\w+$/], x]}]
54
64
  end
65
+
66
+
55
67
  end
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.3.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors: []
7
7
 
@@ -11,8 +11,17 @@ cert_chain: []
11
11
 
12
12
  date: 2010-06-06 00:00:00 +01:00
13
13
  default_executable:
14
- dependencies: []
15
-
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: polyrex-createobject
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
16
25
  description:
17
26
  email:
18
27
  executables: []