lore 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. data/LICENSE +19 -0
  2. data/README +74 -0
  3. data/aspect.rb +80 -0
  4. data/behaviours/lockable.rb +41 -0
  5. data/behaviours/movable.rb +54 -0
  6. data/behaviours/versioned.rb +24 -0
  7. data/benchmark.rb +193 -0
  8. data/bits.rb +52 -0
  9. data/cache/abstract_entity_cache.rb +82 -0
  10. data/cache/bits.rb +22 -0
  11. data/cache/cacheable.rb +202 -0
  12. data/cache/cached_entities.rb +116 -0
  13. data/cache/file_index.rb +35 -0
  14. data/cache/mmap_entity_cache.rb +67 -0
  15. data/clause.rb +528 -0
  16. data/connection.rb +155 -0
  17. data/custom_functions.sql +14 -0
  18. data/exception/ambiguous_attribute.rb +14 -0
  19. data/exception/cache_exception.rb +30 -0
  20. data/exception/invalid_klass_parameters.rb +63 -0
  21. data/exception/invalid_parameter.rb +42 -0
  22. data/exception/unknown_typecode.rb +19 -0
  23. data/file_index.sql +56 -0
  24. data/gui/erb_template.rb +79 -0
  25. data/gui/erb_template_helpers.rhtml +19 -0
  26. data/gui/form.rb +314 -0
  27. data/gui/form_element.rb +676 -0
  28. data/gui/form_generator.rb +151 -0
  29. data/gui/templates/button.rhtml +2 -0
  30. data/gui/templates/checkbox.rhtml +3 -0
  31. data/gui/templates/checkbox_row.rhtml +1 -0
  32. data/gui/templates/file.rhtml +2 -0
  33. data/gui/templates/file_readonly.rhtml +3 -0
  34. data/gui/templates/form_element.rhtml +5 -0
  35. data/gui/templates/form_element_horizontal.rhtml +3 -0
  36. data/gui/templates/form_element_listed.rhtml +8 -0
  37. data/gui/templates/form_table.rhtml +3 -0
  38. data/gui/templates/form_table_blank.rhtml +3 -0
  39. data/gui/templates/form_table_horizontal.rhtml +8 -0
  40. data/gui/templates/password.rhtml +2 -0
  41. data/gui/templates/password_readonly.rhtml +3 -0
  42. data/gui/templates/radio.rhtml +1 -0
  43. data/gui/templates/radio_row.rhtml +1 -0
  44. data/gui/templates/select.rhtml +23 -0
  45. data/gui/templates/text.rhtml +2 -0
  46. data/gui/templates/text_readonly.rhtml +3 -0
  47. data/gui/templates/textarea.rhtml +3 -0
  48. data/gui/templates/textarea_readonly.rhtml +4 -0
  49. data/lore.gemspec +40 -0
  50. data/lore.rb +94 -0
  51. data/migration.rb +48 -0
  52. data/model.rb +139 -0
  53. data/model_factory.rb +202 -0
  54. data/model_shortcuts.rb +16 -0
  55. data/query_shortcuts.rb +367 -0
  56. data/reserved_methods.txt +3 -0
  57. data/result.rb +100 -0
  58. data/symbol.rb +58 -0
  59. data/table_accessor.rb +1926 -0
  60. data/table_deleter.rb +115 -0
  61. data/table_inserter.rb +168 -0
  62. data/table_instance.rb +384 -0
  63. data/table_selector.rb +314 -0
  64. data/table_updater.rb +155 -0
  65. data/test/README +31 -0
  66. data/test/env.rb +5 -0
  67. data/test/lore_test.log +8218 -0
  68. data/test/model.rb +142 -0
  69. data/test/prepare.rb +37 -0
  70. data/test/tc_aspect.rb +58 -0
  71. data/test/tc_cache.rb +80 -0
  72. data/test/tc_clause.rb +104 -0
  73. data/test/tc_deep_inheritance.rb +49 -0
  74. data/test/tc_factory.rb +57 -0
  75. data/test/tc_filter.rb +37 -0
  76. data/test/tc_form.rb +32 -0
  77. data/test/tc_model.rb +86 -0
  78. data/test/tc_prepare.rb +45 -0
  79. data/test/tc_refined_query.rb +88 -0
  80. data/test/tc_table_accessor.rb +265 -0
  81. data/test/test.log +181 -0
  82. data/test/test_db.sql +400 -0
  83. data/test/ts_lore.rb +49 -0
  84. data/types.rb +55 -0
  85. data/validation/message.rb +60 -0
  86. data/validation/parameter_validator.rb +104 -0
  87. data/validation/reason.rb +54 -0
  88. data/validation/type_validator.rb +91 -0
  89. data/validation.rb +65 -0
  90. metadata +170 -0
@@ -0,0 +1,45 @@
1
+
2
+ require 'test/unit'
3
+
4
+ require('lore/test/model')
5
+ require('lore/test/ts_lore')
6
+
7
+ module Lore
8
+ module Unit
9
+
10
+ Car.prepare(:by_id, Lore::Type.integer) { |a|
11
+ a.where(Car.id == Lore::Clause.new('$1'))
12
+ }
13
+
14
+ class TC_Prepare < Test::Unit::TestCase
15
+
16
+ def setup
17
+ @org_units = Hash.new
18
+ @org_units[:m] = Manufacturer.create( :name => 'PrepManufacturer' )
19
+ @org_units[:t] = Car_Type.create( :name => 'PrepType' )
20
+ @org_units[:c] = Car.create(
21
+ :manuf_id => @org_units[:m].manuf_id,
22
+ :name => 'SLK',
23
+ :num_seats => 2,
24
+ :maxspeed => 180,
25
+ :num_doors => 3,
26
+ :car_type_id => @org_units[:t].car_type_id
27
+ )
28
+ assert(@org_units[:c].instance_of?(Car))
29
+ end
30
+
31
+ def teardown
32
+ @org_units.each_pair { |id,instance|
33
+ instance.delete
34
+ }
35
+ end
36
+
37
+ def test_basic
38
+ co = Car.load(:id => @org_units[:c].id)
39
+ cp = Car.by_id(@org_units[:c].id).first
40
+ assert_equal(co, cp)
41
+ end
42
+
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,88 @@
1
+
2
+ require 'test/unit'
3
+ require('lore/test/model')
4
+ require('lore/clause')
5
+
6
+ module Lore
7
+ module Unit
8
+
9
+
10
+ class TC_Refined_Query < Test::Unit::TestCase
11
+
12
+ def setup
13
+ Car.delete_all
14
+
15
+ Car.create(
16
+ :manuf_id => 1,
17
+ :name => 'SLK',
18
+ :num_seats => 2,
19
+ :maxspeed => 180,
20
+ :num_doors => 3,
21
+ :car_type_id => 1
22
+ )
23
+ Car.create(
24
+ :manuf_id => 1,
25
+ :name => 'SLK2',
26
+ :num_seats => 2,
27
+ :maxspeed => 180,
28
+ :num_doors => 3,
29
+ :car_type_id => 1
30
+ )
31
+ end
32
+
33
+ def teardown
34
+ Car.delete_all
35
+ end
36
+
37
+ def test_select_value
38
+ manuf = Manufacturer.create( :name => 'Fiat' )
39
+ ct = Car_Type.create( :name => 'Transporter' )
40
+ c1 = Car.create(
41
+ :manuf_id => manuf.manuf_id,
42
+ :name => 'test_refined_1',
43
+ :num_seats => 2,
44
+ :maxspeed => 180,
45
+ :num_doors => 3,
46
+ :car_type_id => ct.car_type_id
47
+ )
48
+ c2 = Car.create(
49
+ :manuf_id => manuf.manuf_id,
50
+ :name => 'test_refined_2',
51
+ :num_seats => 2,
52
+ :maxspeed => 180,
53
+ :num_doors => 3,
54
+ :car_type_id => ct.car_type_id
55
+ )
56
+ u1 = Car.all(Car.name).with(Car.manuf_id == manuf.manuf_id).entities
57
+ assert(u1.include?('test_refined_1'))
58
+ assert(u1.include?('test_refined_2'))
59
+ end
60
+
61
+ def test_select_max
62
+ max = Car.value_of.max(Car.id).to_i
63
+ end
64
+
65
+ def test_select_sum
66
+ type = Car_Type.create(:name => 'temp')
67
+ 7.times {
68
+ Car.create(:manuf_id => 123,
69
+ :num_seats => 5,
70
+ :owner_id => 0,
71
+ :name => 'SumMe',
72
+ :car_type_id => type.car_type_id,
73
+ :maxspeed => 120,
74
+ :num_doors => 3)
75
+
76
+ }
77
+ sum = Car.value_of.sum(Car.num_seats).with(Car.manuf_id == 123).to_i
78
+ end
79
+
80
+ def test_inner_select
81
+ inner = Manufacturer.all(Manufacturer.manuf_id).with(Manufacturer.name == 'Mercedes')
82
+ u1 = Car.find(1).with(Car.manuf_id.in(inner)).entity
83
+ end
84
+
85
+ end
86
+
87
+ end
88
+ end
@@ -0,0 +1,265 @@
1
+
2
+ require 'test/unit'
3
+ require 'lore/table_accessor'
4
+
5
+ module Lore
6
+ module Unit
7
+
8
+ class TC_Table_Accessor < Test::Unit::TestCase
9
+
10
+ def setup
11
+
12
+ Manufacturer.delete_all
13
+ Vehicle.delete_all
14
+ Car_Type.delete_all
15
+ Car.delete_all
16
+ Bike.delete_all
17
+ Owner.delete_all
18
+ Garage.delete_all
19
+ Trailer.delete_all
20
+ # Fill Lore:
21
+ $units = Hash.new
22
+ $units[:manufacturer] = Array.new
23
+ $units[:car] = Array.new
24
+ $units[:car_type] = Array.new
25
+ $units[:bike] = Array.new
26
+ $units[:garage] = Array.new
27
+ $units[:owner] = Array.new
28
+
29
+ m1 = Manufacturer.create( :name => 'BMW' )
30
+ assert(m1.name == 'BMW')
31
+ $units[:manufacturer] << m1
32
+ m2 = Manufacturer.create( :name => 'Mercedes' )
33
+ assert(m2.name == 'Mercedes')
34
+ $units[:manufacturer] << m2
35
+ m3 = Manufacturer.create( :name => 'Audi' )
36
+ assert(m3.name == 'Audi')
37
+ $units[:manufacturer] << m3
38
+
39
+ ct1 = Car_Type.create( :name => 'Limousine' )
40
+ $units[:car_type] << ct1
41
+ ct2 = Car_Type.create( :name => 'SUV' )
42
+ $units[:car_type] << ct2
43
+ ct3 = Car_Type.create( :name => 'Cabrio' )
44
+ $units[:car_type] << ct3
45
+ ct4 = Car_Type.create( :name => 'Boxter' )
46
+ $units[:car_type] << ct4
47
+
48
+ c1 = Car.create(
49
+ :manuf_id => m2.manuf_id,
50
+ :name => 'SLK',
51
+ :num_seats => 2,
52
+ :maxspeed => 180,
53
+ :num_doors => 3,
54
+ :car_type_id => ct3.car_type_id
55
+ )
56
+ $units[:car] << c1
57
+
58
+ o1 = Owner.create(:name => 'owner_1')
59
+ $units[:owner] << o1
60
+
61
+ end
62
+
63
+ def teardown
64
+ end
65
+
66
+ def test_custom_join
67
+
68
+ # Do not expand anything
69
+ o1 = Owner.select { |o|
70
+ o.join(Vehicle_Owner).using(:owner_id) { |vo|
71
+ vo.join(Vehicle).on(Vehicle_Owner.vehicle_id == Vehicle.id) { |v|
72
+ v.where true
73
+ }
74
+ }
75
+ }
76
+ # Expand Car by Vehicle automatically (Car.vehicle_id)
77
+ Car.select { |c|
78
+ c.join(Vehicle_Owner).on(Car.vehicle_id == Vehicle_Owner.vehicle_id) { |vo|
79
+ vo.join(Owner).on(Vehicle_Owner.owner_id == Owner.owner_id) { |o|
80
+ o.where true
81
+ }
82
+ }
83
+ }
84
+ # Expand Car by Vehicle automatically in a nested join
85
+ Owner.select { |o|
86
+ o.join(Vehicle_Owner).on(Vehicle_Owner.owner_id == Owner.owner_id) { |vo|
87
+ vo.join(Car).on(Car.vehicle_id == Vehicle_Owner.vehicle_id) { |c|
88
+ c.where true
89
+ }
90
+ }
91
+ }
92
+
93
+ end
94
+
95
+ def test_ignore_params
96
+ Car_Type.create( :name => 'Foo', :ignore => 'these', :params => 'please' )
97
+ end
98
+
99
+ def test_validation
100
+
101
+ validation_failed = false
102
+ begin
103
+ failing_unit = Car_Type.create( :name => 'Van#2' ) # special chars
104
+ rescue Lore::Exception::Invalid_Klass_Parameters => ikp
105
+ validation_failed = true
106
+ end
107
+ assert(validation_failed, 'Invalid parameter passed validation')
108
+
109
+ validation_failed = false
110
+ begin
111
+ failing_unit = Car_Type.create( :name => 'Li' ) # too short
112
+ rescue Lore::Exception::Invalid_Klass_Parameters => ikp
113
+ validation_failed = true
114
+ end
115
+ assert(validation_failed, 'Invalid parameter passed validation')
116
+
117
+ # Test if validation works for inherited constraints:
118
+ validation_failed = false
119
+ begin
120
+ Car.create(
121
+ :manuf_id => $units[:manufacturer].first.manuf_id,
122
+ :name => 'SLK! this will fail pass thanks to filtering',
123
+ :num_seats => 2,
124
+ :maxspeed => 180,
125
+ :num_doors => 3,
126
+ :car_type_id => $units[:car_type].first.car_type_id
127
+ )
128
+ rescue Lore::Exception::Invalid_Klass_Parameters => ikp
129
+ validation_failed = true
130
+ end
131
+ assert(!validation_failed, 'Invalid parameter passed validation')
132
+
133
+ end
134
+
135
+ def test_select_variants
136
+
137
+ car = $units[:car][0]
138
+ car_id = car.id
139
+
140
+ s1 = Car.select { |c|
141
+ c.where(Car.id == car_id)
142
+ c.limit(1)
143
+ }.first
144
+
145
+ s2 = Car.load(:id => car_id)
146
+ s3 = Car.find(1).with(Car.id == car_id).entity
147
+ s4 = Car.all_with(Car.id == car_id).entity
148
+
149
+ assert(s1 == s2)
150
+ assert(s1 == s3)
151
+ assert(s1 == s4)
152
+
153
+ end
154
+
155
+ def test_aggregation_on_joined_models
156
+ t = Trailer.create(:car_id => Car.create(:name => 'TrailerCar',
157
+ :manuf_id => $units[:manufacturer].first.manuf_id,
158
+ :num_seats => 2,
159
+ :maxspeed => 120,
160
+ :num_doors => 4,
161
+ :car_type_id => $units[:car_type].first.car_type_id).id,
162
+ :maxweight => 4000)
163
+ tl = Trailer.select { |trailer|
164
+ trailer.where(trailer.trailer_id == t.trailer_id)
165
+ trailer.limit 1
166
+ }.first
167
+ assert_equal(t, tl)
168
+ end
169
+
170
+ def test_simple_create
171
+ end
172
+
173
+ def test_instance_compairison
174
+ m1_a = Manufacturer.load({ :manuf_id => $units[:manufacturer][0].manuf_id })
175
+ m1_b = Manufacturer.load({ :manuf_id => $units[:manufacturer][0].manuf_id })
176
+ m2 = Manufacturer.load({ :manuf_id => $units[:manufacturer][1].manuf_id })
177
+ assert(m1_a == m1_a)
178
+ assert(m1_a == m1_b)
179
+ assert(m1_a <=> m2)
180
+
181
+ end
182
+
183
+ def test_simple_load
184
+ m1 = Manufacturer.load({ :manuf_id => $units[:manufacturer][0].manuf_id })
185
+ assert(m1 == $units[:manufacturer][0])
186
+ m2 = Manufacturer.load({ :manuf_id => $units[:manufacturer][1].manuf_id })
187
+ assert(m2 == $units[:manufacturer][1])
188
+ ct1 = Car_Type.load({ :car_type_id => $units[:car_type][0].car_type_id })
189
+ assert(ct1 == $units[:car_type][0])
190
+ ct2 = Car_Type.load({ :car_type_id => $units[:car_type][1].car_type_id })
191
+ assert(ct2 == $units[:car_type][1])
192
+ end
193
+
194
+ def test_create_single_inherit
195
+ m1 = Manufacturer.load({ :manuf_id => $units[:manufacturer][0].manuf_id })
196
+ m2 = Manufacturer.load({ :manuf_id => $units[:manufacturer][1].manuf_id })
197
+ ct1 = Car_Type.load({ :car_type_id => $units[:car_type][0].car_type_id })
198
+ ct2 = Car_Type.load({ :car_type_id => $units[:car_type][1].car_type_id })
199
+
200
+ c1 = Car.create(
201
+ :manuf_id => m1.manuf_id,
202
+ :name => '325M',
203
+ :name => '325M',
204
+ :num_seats => 5,
205
+ :maxspeed => 180,
206
+ :num_doors => 5,
207
+ :car_type_id => ct1.car_type_id
208
+ )
209
+
210
+ assert(c1.manuf_id == m1.manuf_id)
211
+
212
+ assert_equal(c1[Vehicle.name], '325m')
213
+ assert_equal(c1[Car_Type.name], 'Limousine')
214
+ assert_equal(c1.num_seats, '5')
215
+ assert_equal('180km/h', c1.maxspeed, 'c1.maxspeed is ' << c1.maxspeed)
216
+ assert_equal(c1.num_doors, '5')
217
+ assert_equal(c1.car_type_id, ct1.car_type_id)
218
+
219
+ end
220
+
221
+ def test_inherited_has_a
222
+ m1 = Manufacturer.load( :manuf_id => $units[:manufacturer][0].manuf_id )
223
+ assert(m1.name == $units[:manufacturer][0].name)
224
+ m2 = Manufacturer.load( :manuf_id => $units[:manufacturer][1].manuf_id )
225
+ assert(m2.name == $units[:manufacturer][1].name)
226
+ ct1 = Car_Type.load( :car_type_id => $units[:car_type][0].car_type_id )
227
+ ct2 = Car_Type.load( :car_type_id => $units[:car_type][1].car_type_id )
228
+
229
+ c1 = Car.create(
230
+ :manuf_id => m1.manuf_id,
231
+ Car.name.to_s => '318i',
232
+ :num_seats => 5,
233
+ :maxspeed => 180,
234
+ :num_doors => 5,
235
+ :owner_id => 1,
236
+ :car_type_id => ct1.car_type_id
237
+ )
238
+ c1_s = Car.find(1).with(Car.name == '318i').entity
239
+ assert_equal(c1.manufacturer_entity, m1)
240
+ assert_equal(c1.car_type_id, ct1.car_type_id)
241
+
242
+ c1.set_manufacturer_entity(m2)
243
+ c1.commit
244
+ c1.set_car_type_entity!(ct2)
245
+
246
+ assert(c1.manufacturer_entity == m2)
247
+ assert(c1.car_type_entity == ct2)
248
+
249
+ c1_s = Car.find(1).with(Car.name == '318i').entity
250
+
251
+ assert(c1_s.manufacturer_entity == m2)
252
+ assert(c1_s.car_type_entity == ct2)
253
+
254
+ assert(!c1_s.nil? && c1_s[Vehicle.name] == '318i')
255
+
256
+ end
257
+
258
+ def test_create_multi_inherit
259
+ end
260
+
261
+ end
262
+
263
+ end
264
+ end
265
+
data/test/test.log ADDED
@@ -0,0 +1,181 @@
1
+ /usr/lib/ruby/1.8/lore/test/tc_clause.rb:82: warning: parenthesize argument(s) for future version
2
+ /usr/lib/ruby/1.8/lore/test/tc_clause.rb:83: warning: parenthesize argument(s) for future version
3
+ /usr/lib/ruby/1.8/lore/test/tc_refined_query.rb:57: warning: parenthesize argument(s) for future version
4
+ /usr/lib/ruby/1.8/lore/test/tc_refined_query.rb:58: warning: parenthesize argument(s) for future version
5
+ /usr/lib/ruby/1.8/lore/test/tc_prepare.rb:28: warning: parenthesize argument(s) for future version
6
+ D, [2008-11-09T11:30:26.622330 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
7
+ D, [2008-11-09T11:30:26.640561 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
8
+ D, [2008-11-09T11:30:26.647668 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
9
+ D, [2008-11-09T11:30:26.654716 #8484] DEBUG -- : PERFORM INSERT on public.car_type
10
+ D, [2008-11-09T11:30:26.661514 #8484] DEBUG -- : PERFORM INSERT on public.car_type
11
+ D, [2008-11-09T11:30:26.668194 #8484] DEBUG -- : PERFORM INSERT on public.car_type
12
+ D, [2008-11-09T11:30:26.674762 #8484] DEBUG -- : PERFORM INSERT on public.car_type
13
+ D, [2008-11-09T11:30:26.682067 #8484] DEBUG -- : PERFORM INSERT on public.car
14
+ D, [2008-11-09T11:30:26.816595 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
15
+ D, [2008-11-09T11:30:26.830283 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
16
+ D, [2008-11-09T11:30:26.837289 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
17
+ D, [2008-11-09T11:30:26.844229 #8484] DEBUG -- : PERFORM INSERT on public.car_type
18
+ D, [2008-11-09T11:30:26.851027 #8484] DEBUG -- : PERFORM INSERT on public.car_type
19
+ D, [2008-11-09T11:30:26.857956 #8484] DEBUG -- : PERFORM INSERT on public.car_type
20
+ D, [2008-11-09T11:30:26.864765 #8484] DEBUG -- : PERFORM INSERT on public.car_type
21
+ D, [2008-11-09T11:30:26.872078 #8484] DEBUG -- : PERFORM INSERT on public.car
22
+ D, [2008-11-09T11:30:26.892606 #8484] DEBUG -- : PERFORM INSERT on public.car_type
23
+ D, [2008-11-09T11:30:26.900695 #8484] DEBUG -- : PERFORM INSERT on public.car
24
+ D, [2008-11-09T11:30:26.909619 #8484] DEBUG -- : PERFORM INSERT on public.car
25
+ NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "new_model_pkey" for table "new_model"
26
+ NOTICE: CREATE TABLE / UNIQUE will create implicit index "new_model_name_key" for table "new_model"
27
+ D, [2008-11-09T11:30:26.953061 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
28
+ D, [2008-11-09T11:30:26.958942 #8484] DEBUG -- : PERFORM INSERT on public.car_type
29
+ D, [2008-11-09T11:30:26.964851 #8484] DEBUG -- : PERFORM INSERT on public.car
30
+ D, [2008-11-09T11:30:26.971592 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
31
+ D, [2008-11-09T11:30:26.977070 #8484] DEBUG -- : PERFORM INSERT on public.car_type
32
+ D, [2008-11-09T11:30:26.982861 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
33
+ D, [2008-11-09T11:30:26.988228 #8484] DEBUG -- : PERFORM INSERT on public.car_type
34
+ D, [2008-11-09T11:30:26.993495 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
35
+ D, [2008-11-09T11:30:26.998893 #8484] DEBUG -- : PERFORM INSERT on public.car_type
36
+ D, [2008-11-09T11:30:27.004444 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
37
+ D, [2008-11-09T11:30:27.010941 #8484] DEBUG -- : PERFORM INSERT on public.car_type
38
+ D, [2008-11-09T11:30:27.016375 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
39
+ D, [2008-11-09T11:30:27.022031 #8484] DEBUG -- : PERFORM INSERT on public.car_type
40
+ D, [2008-11-09T11:30:27.027571 #8484] DEBUG -- : Template: form_element.rhtml
41
+ D, [2008-11-09T11:30:27.028150 #8484] DEBUG -- : Template: form_table.rhtml
42
+ CUSTOM ELEMENTS: {}
43
+ GET_ATTRIBUTES: Accessor: Lore::Unit::Car
44
+ GET_ATTRIBUTES: {"public.vehicle"=>["id", "manuf_id", "num_seats", "maxspeed", "name", "owner_id"], "public.car_type"=>["car_type_id", "name"], "public.car"=>["id", "vehicle_id", "car_type_id", "num_doors"]}
45
+ D, [2008-11-09T11:30:27.028594 #8484] DEBUG -- : id is implicit
46
+ D, [2008-11-09T11:30:27.028877 #8484] DEBUG -- : car_type_id is implicit
47
+ D, [2008-11-09T11:30:27.028956 #8484] DEBUG -- : name is implicit
48
+ D, [2008-11-09T11:30:27.029045 #8484] DEBUG -- : id is implicit
49
+ D, [2008-11-09T11:30:27.029137 #8484] DEBUG -- : vehicle_id is implicit
50
+ D, [2008-11-09T11:30:27.031727 #8484] DEBUG -- : PERFORM INSERT on public.vehicle
51
+ D, [2008-11-09T11:30:27.037423 #8484] DEBUG -- : PERFORM INSERT on public.car_type
52
+ D, [2008-11-09T11:30:27.048573 #8484] DEBUG -- : PERFORM INSERT on public.car_type
53
+ D, [2008-11-09T11:30:27.054301 #8484] DEBUG -- : PERFORM INSERT on public.car
54
+ D, [2008-11-09T11:30:27.065148 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
55
+ D, [2008-11-09T11:30:27.073130 #8484] DEBUG -- : PERFORM INSERT on public.car_type
56
+ D, [2008-11-09T11:30:27.078993 #8484] DEBUG -- : PERFORM INSERT on public.car
57
+ D, [2008-11-09T11:30:27.101517 #8484] DEBUG -- : PERFORM INSERT on public.car
58
+ D, [2008-11-09T11:30:27.110302 #8484] DEBUG -- : PERFORM INSERT on public.car
59
+ D, [2008-11-09T11:30:27.124056 #8484] DEBUG -- : PERFORM INSERT on public.car
60
+ D, [2008-11-09T11:30:27.133103 #8484] DEBUG -- : PERFORM INSERT on public.car
61
+ D, [2008-11-09T11:30:27.148799 #8484] DEBUG -- : PERFORM INSERT on public.car
62
+ D, [2008-11-09T11:30:27.157765 #8484] DEBUG -- : PERFORM INSERT on public.car
63
+ D, [2008-11-09T11:30:27.165829 #8484] DEBUG -- : PERFORM INSERT on public.car_type
64
+ D, [2008-11-09T11:30:27.173143 #8484] DEBUG -- : PERFORM INSERT on public.car
65
+ D, [2008-11-09T11:30:27.182239 #8484] DEBUG -- : PERFORM INSERT on public.car
66
+ D, [2008-11-09T11:30:27.191144 #8484] DEBUG -- : PERFORM INSERT on public.car
67
+ D, [2008-11-09T11:30:27.200868 #8484] DEBUG -- : PERFORM INSERT on public.car
68
+ D, [2008-11-09T11:30:27.209957 #8484] DEBUG -- : PERFORM INSERT on public.car
69
+ D, [2008-11-09T11:30:27.219175 #8484] DEBUG -- : PERFORM INSERT on public.car
70
+ D, [2008-11-09T11:30:27.228259 #8484] DEBUG -- : PERFORM INSERT on public.car
71
+ D, [2008-11-09T11:30:27.244500 #8484] DEBUG -- : PERFORM INSERT on public.car
72
+ D, [2008-11-09T11:30:27.253082 #8484] DEBUG -- : PERFORM INSERT on public.car
73
+ D, [2008-11-09T11:30:27.261273 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
74
+ D, [2008-11-09T11:30:27.268005 #8484] DEBUG -- : PERFORM INSERT on public.car_type
75
+ D, [2008-11-09T11:30:27.275769 #8484] DEBUG -- : PERFORM INSERT on public.car
76
+ D, [2008-11-09T11:30:27.284810 #8484] DEBUG -- : PERFORM INSERT on public.car
77
+ D, [2008-11-09T11:30:27.305007 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
78
+ D, [2008-11-09T11:30:27.312813 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
79
+ D, [2008-11-09T11:30:27.319646 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
80
+ D, [2008-11-09T11:30:27.326412 #8484] DEBUG -- : PERFORM INSERT on public.car_type
81
+ D, [2008-11-09T11:30:27.333173 #8484] DEBUG -- : PERFORM INSERT on public.car_type
82
+ D, [2008-11-09T11:30:27.340233 #8484] DEBUG -- : PERFORM INSERT on public.car_type
83
+ D, [2008-11-09T11:30:27.347104 #8484] DEBUG -- : PERFORM INSERT on public.car_type
84
+ D, [2008-11-09T11:30:27.354356 #8484] DEBUG -- : PERFORM INSERT on public.car
85
+ D, [2008-11-09T11:30:27.362709 #8484] DEBUG -- : PERFORM INSERT on public.owner
86
+ D, [2008-11-09T11:30:27.370472 #8484] DEBUG -- : PERFORM INSERT on public.car
87
+ D, [2008-11-09T11:30:27.379365 #8484] DEBUG -- : PERFORM INSERT on public.trailer
88
+ D, [2008-11-09T11:30:27.395327 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
89
+ D, [2008-11-09T11:30:27.402865 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
90
+ D, [2008-11-09T11:30:27.409889 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
91
+ D, [2008-11-09T11:30:27.417370 #8484] DEBUG -- : PERFORM INSERT on public.car_type
92
+ D, [2008-11-09T11:30:27.425571 #8484] DEBUG -- : PERFORM INSERT on public.car_type
93
+ D, [2008-11-09T11:30:27.432421 #8484] DEBUG -- : PERFORM INSERT on public.car_type
94
+ D, [2008-11-09T11:30:27.439273 #8484] DEBUG -- : PERFORM INSERT on public.car_type
95
+ D, [2008-11-09T11:30:27.446653 #8484] DEBUG -- : PERFORM INSERT on public.car
96
+ D, [2008-11-09T11:30:27.455123 #8484] DEBUG -- : PERFORM INSERT on public.owner
97
+ D, [2008-11-09T11:30:27.467203 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
98
+ D, [2008-11-09T11:30:27.474638 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
99
+ D, [2008-11-09T11:30:27.481917 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
100
+ D, [2008-11-09T11:30:27.489049 #8484] DEBUG -- : PERFORM INSERT on public.car_type
101
+ D, [2008-11-09T11:30:27.495919 #8484] DEBUG -- : PERFORM INSERT on public.car_type
102
+ D, [2008-11-09T11:30:27.502709 #8484] DEBUG -- : PERFORM INSERT on public.car_type
103
+ D, [2008-11-09T11:30:27.509402 #8484] DEBUG -- : PERFORM INSERT on public.car_type
104
+ D, [2008-11-09T11:30:27.516864 #8484] DEBUG -- : PERFORM INSERT on public.car
105
+ D, [2008-11-09T11:30:27.527287 #8484] DEBUG -- : PERFORM INSERT on public.owner
106
+ D, [2008-11-09T11:30:27.554191 #8484] DEBUG -- : PERFORM INSERT on public.car
107
+ D, [2008-11-09T11:30:27.567860 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
108
+ D, [2008-11-09T11:30:27.578227 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
109
+ D, [2008-11-09T11:30:27.583912 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
110
+ D, [2008-11-09T11:30:27.589379 #8484] DEBUG -- : PERFORM INSERT on public.car_type
111
+ D, [2008-11-09T11:30:27.594743 #8484] DEBUG -- : PERFORM INSERT on public.car_type
112
+ D, [2008-11-09T11:30:27.600822 #8484] DEBUG -- : PERFORM INSERT on public.car_type
113
+ D, [2008-11-09T11:30:27.606215 #8484] DEBUG -- : PERFORM INSERT on public.car_type
114
+ D, [2008-11-09T11:30:27.612240 #8484] DEBUG -- : PERFORM INSERT on public.car
115
+ D, [2008-11-09T11:30:27.618830 #8484] DEBUG -- : PERFORM INSERT on public.owner
116
+ D, [2008-11-09T11:30:27.636003 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
117
+ D, [2008-11-09T11:30:27.642144 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
118
+ D, [2008-11-09T11:30:27.648381 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
119
+ D, [2008-11-09T11:30:27.653719 #8484] DEBUG -- : PERFORM INSERT on public.car_type
120
+ D, [2008-11-09T11:30:27.659115 #8484] DEBUG -- : PERFORM INSERT on public.car_type
121
+ D, [2008-11-09T11:30:27.665470 #8484] DEBUG -- : PERFORM INSERT on public.car_type
122
+ D, [2008-11-09T11:30:27.671086 #8484] DEBUG -- : PERFORM INSERT on public.car_type
123
+ D, [2008-11-09T11:30:27.677262 #8484] DEBUG -- : PERFORM INSERT on public.car
124
+ D, [2008-11-09T11:30:27.684383 #8484] DEBUG -- : PERFORM INSERT on public.owner
125
+ D, [2008-11-09T11:30:27.706066 #8484] DEBUG -- : PERFORM INSERT on public.car
126
+ D, [2008-11-09T11:30:27.748425 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
127
+ D, [2008-11-09T11:30:27.755836 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
128
+ D, [2008-11-09T11:30:27.762723 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
129
+ D, [2008-11-09T11:30:27.769455 #8484] DEBUG -- : PERFORM INSERT on public.car_type
130
+ D, [2008-11-09T11:30:27.776956 #8484] DEBUG -- : PERFORM INSERT on public.car_type
131
+ D, [2008-11-09T11:30:27.783707 #8484] DEBUG -- : PERFORM INSERT on public.car_type
132
+ D, [2008-11-09T11:30:27.790444 #8484] DEBUG -- : PERFORM INSERT on public.car_type
133
+ D, [2008-11-09T11:30:27.798958 #8484] DEBUG -- : PERFORM INSERT on public.car
134
+ D, [2008-11-09T11:30:27.807539 #8484] DEBUG -- : PERFORM INSERT on public.owner
135
+ D, [2008-11-09T11:30:27.835507 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
136
+ D, [2008-11-09T11:30:27.842722 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
137
+ D, [2008-11-09T11:30:27.849571 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
138
+ D, [2008-11-09T11:30:27.856612 #8484] DEBUG -- : PERFORM INSERT on public.car_type
139
+ D, [2008-11-09T11:30:27.863533 #8484] DEBUG -- : PERFORM INSERT on public.car_type
140
+ D, [2008-11-09T11:30:27.870722 #8484] DEBUG -- : PERFORM INSERT on public.car_type
141
+ D, [2008-11-09T11:30:27.877630 #8484] DEBUG -- : PERFORM INSERT on public.car_type
142
+ D, [2008-11-09T11:30:27.885020 #8484] DEBUG -- : PERFORM INSERT on public.car
143
+ D, [2008-11-09T11:30:27.895813 #8484] DEBUG -- : PERFORM INSERT on public.owner
144
+ D, [2008-11-09T11:30:27.915270 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
145
+ D, [2008-11-09T11:30:27.921295 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
146
+ D, [2008-11-09T11:30:27.927146 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
147
+ D, [2008-11-09T11:30:27.932500 #8484] DEBUG -- : PERFORM INSERT on public.car_type
148
+ D, [2008-11-09T11:30:27.937988 #8484] DEBUG -- : PERFORM INSERT on public.car_type
149
+ D, [2008-11-09T11:30:27.943816 #8484] DEBUG -- : PERFORM INSERT on public.car_type
150
+ D, [2008-11-09T11:30:27.949192 #8484] DEBUG -- : PERFORM INSERT on public.car_type
151
+ D, [2008-11-09T11:30:27.954956 #8484] DEBUG -- : PERFORM INSERT on public.car
152
+ D, [2008-11-09T11:30:27.961491 #8484] DEBUG -- : PERFORM INSERT on public.owner
153
+ D, [2008-11-09T11:30:27.972056 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
154
+ D, [2008-11-09T11:30:27.978103 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
155
+ D, [2008-11-09T11:30:27.983861 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
156
+ D, [2008-11-09T11:30:27.989194 #8484] DEBUG -- : PERFORM INSERT on public.car_type
157
+ D, [2008-11-09T11:30:27.994359 #8484] DEBUG -- : PERFORM INSERT on public.car_type
158
+ D, [2008-11-09T11:30:27.999811 #8484] DEBUG -- : PERFORM INSERT on public.car_type
159
+ D, [2008-11-09T11:30:28.005751 #8484] DEBUG -- : PERFORM INSERT on public.car_type
160
+ D, [2008-11-09T11:30:28.014663 #8484] DEBUG -- : PERFORM INSERT on public.car
161
+ D, [2008-11-09T11:30:28.021332 #8484] DEBUG -- : PERFORM INSERT on public.owner
162
+ D, [2008-11-09T11:30:28.047718 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
163
+ D, [2008-11-09T11:30:28.053410 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
164
+ D, [2008-11-09T11:30:28.059079 #8484] DEBUG -- : PERFORM INSERT on public.manufacturer
165
+ D, [2008-11-09T11:30:28.065090 #8484] DEBUG -- : PERFORM INSERT on public.car_type
166
+ D, [2008-11-09T11:30:28.071159 #8484] DEBUG -- : PERFORM INSERT on public.car_type
167
+ D, [2008-11-09T11:30:28.076623 #8484] DEBUG -- : PERFORM INSERT on public.car_type
168
+ D, [2008-11-09T11:30:28.081935 #8484] DEBUG -- : PERFORM INSERT on public.car_type
169
+ D, [2008-11-09T11:30:28.087765 #8484] DEBUG -- : PERFORM INSERT on public.car
170
+ D, [2008-11-09T11:30:28.094550 #8484] DEBUG -- : PERFORM INSERT on public.owner
171
+ E, [2008-11-09T11:30:28.100006 #8484] ERROR -- : Invalid parameters for klass Lore::Unit::Car_Type:
172
+ E, [2008-11-09T11:30:28.100045 #8484] ERROR -- : Invalid parameters:
173
+ E, [2008-11-09T11:30:28.100086 #8484] ERROR -- : {"public.car_type"=>#<Lore::Exception::Unmet_Constraints: Lore::Exception::Unmet_Constraints>}
174
+ E, [2008-11-09T11:30:28.100121 #8484] ERROR -- : Explicit attributes:
175
+ E, [2008-11-09T11:30:28.100168 #8484] ERROR -- : {"public.car_type"=>["name"]}
176
+ E, [2008-11-09T11:30:28.100532 #8484] ERROR -- : Invalid parameters for klass Lore::Unit::Car_Type:
177
+ E, [2008-11-09T11:30:28.100569 #8484] ERROR -- : Invalid parameters:
178
+ E, [2008-11-09T11:30:28.100609 #8484] ERROR -- : {"public.car_type"=>#<Lore::Exception::Unmet_Constraints: Lore::Exception::Unmet_Constraints>}
179
+ E, [2008-11-09T11:30:28.100643 #8484] ERROR -- : Explicit attributes:
180
+ E, [2008-11-09T11:30:28.100689 #8484] ERROR -- : {"public.car_type"=>["name"]}
181
+ D, [2008-11-09T11:30:28.101634 #8484] DEBUG -- : PERFORM INSERT on public.car