mongify 0.9 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.rdoc +3 -0
- data/Gemfile.lock +1 -1
- data/LICENSE +1 -1
- data/README.rdoc +5 -1
- data/Rakefile +1 -1
- data/lib/mongify/database/base_connection.rb +12 -2
- data/lib/mongify/version.rb +1 -1
- data/spec/mongify/database/base_connection_spec.rb +5 -0
- metadata +62 -62
data/CHANGELOG.rdoc
CHANGED
data/Gemfile.lock
CHANGED
data/LICENSE
CHANGED
data/README.rdoc
CHANGED
@@ -250,6 +250,10 @@ More documentation can be found at {Mongify::Database::Column}
|
|
250
250
|
Mongify has been tested on Ruby 1.8.7-p330 and Ruby 1.9.2-p136
|
251
251
|
If you have any issues, please feel free to report them here: {issue tracker}[https://github.com/anlek/mongify/issues]
|
252
252
|
|
253
|
+
== Additional Tools
|
254
|
+
|
255
|
+
As of May 2013, we've released a add-on tool to Mongify called {Mongify-Mongoid}[https://github.com/anlek/mongify-mongoid] which lets you use the translation.rb file to generate Mongoid models for you. It will take care of the fields, relations (most of the way) and timestamps for you. This should save you some time re-typing all the models by hand.
|
256
|
+
Check out the gem at: {http://rubygems.org/gems/mongify-mongoid}[http://rubygems.org/gems/mongify-mongoid]
|
253
257
|
|
254
258
|
== TODO
|
255
259
|
* Allow deeper embedding
|
@@ -291,7 +295,7 @@ Reach me at:
|
|
291
295
|
|
292
296
|
== License
|
293
297
|
|
294
|
-
Copyright (c) 2011 Andrew Kalek, Anlek Consulting
|
298
|
+
Copyright (c) 2011 - 2013 Andrew Kalek, Anlek Consulting
|
295
299
|
|
296
300
|
Permission is hereby granted, free of charge, to any person obtaining
|
297
301
|
a copy of this software and associated documentation files (the
|
data/Rakefile
CHANGED
@@ -54,7 +54,7 @@ namespace :test do
|
|
54
54
|
namespace :mysql do
|
55
55
|
desc "Setup a mysql database based on the spec/support/database.yml settings"
|
56
56
|
task :setup do
|
57
|
-
require 'spec/support/config_reader'
|
57
|
+
require './spec/support/config_reader'
|
58
58
|
require 'active_record'
|
59
59
|
::CONNECTION_CONFIG = ConfigReader.new('spec/support/database.yml')
|
60
60
|
ActiveRecord::Base.establish_connection(CONNECTION_CONFIG.mysql)
|
@@ -9,6 +9,8 @@ module Mongify
|
|
9
9
|
REQUIRED_FIELDS = %w{host}
|
10
10
|
# List of all the available fields to make up a connection
|
11
11
|
AVAILABLE_FIELDS = %w{adapter host username password database socket port encoding}
|
12
|
+
# List of all fields that should be forced to a string
|
13
|
+
STRING_FIELDS = %w{adapter}
|
12
14
|
|
13
15
|
def initialize(options=nil)
|
14
16
|
if options
|
@@ -56,7 +58,8 @@ module Mongify
|
|
56
58
|
super(method)
|
57
59
|
end
|
58
60
|
|
59
|
-
# Building set and/or return functions for AVAILABLE_FIELDS
|
61
|
+
# Building set and/or return functions for AVAILABLE_FIELDS.
|
62
|
+
# STRING_FIELDS are forced into string.
|
60
63
|
# Example:
|
61
64
|
#
|
62
65
|
# def host(value=nil)
|
@@ -67,9 +70,16 @@ module Mongify
|
|
67
70
|
def method_missing(method, *args)
|
68
71
|
method_name = method.to_s
|
69
72
|
if AVAILABLE_FIELDS.include?(method_name.to_s)
|
73
|
+
|
74
|
+
if STRING_FIELDS.include?(method_name.to_s)
|
75
|
+
assignment = "@#{method_name} = value.to_s"
|
76
|
+
else
|
77
|
+
assignment = "@#{method_name} = value"
|
78
|
+
end
|
79
|
+
|
70
80
|
class_eval <<-EOF
|
71
81
|
def #{method_name}(value=nil)
|
72
|
-
|
82
|
+
#{assignment} unless value.nil?
|
73
83
|
@#{method_name}
|
74
84
|
end
|
75
85
|
EOF
|
data/lib/mongify/version.rb
CHANGED
@@ -47,6 +47,11 @@ describe Mongify::Database::BaseConnection do
|
|
47
47
|
@base_connection.adapter.should == 'sqlite'
|
48
48
|
end
|
49
49
|
|
50
|
+
it "should leave port argument as an integer" do
|
51
|
+
@base_connection.port 3333
|
52
|
+
@base_connection.port.should == 3333
|
53
|
+
end
|
54
|
+
|
50
55
|
context "hash" do
|
51
56
|
before(:each) do
|
52
57
|
@adapter = 'baseDB'
|
metadata
CHANGED
@@ -2,239 +2,239 @@
|
|
2
2
|
name: mongify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version:
|
5
|
+
version: 1.0.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Andrew Kalek
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-05-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
+
prerelease: false
|
16
|
+
name: activerecord
|
15
17
|
type: :runtime
|
16
18
|
version_requirements: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
19
|
requirements:
|
19
20
|
- - ! '>='
|
20
21
|
- !ruby/object:Gem::Version
|
21
22
|
version: 3.0.3
|
22
|
-
name: activerecord
|
23
|
-
prerelease: false
|
24
|
-
requirement: !ruby/object:Gem::Requirement
|
25
23
|
none: false
|
24
|
+
requirement: !ruby/object:Gem::Requirement
|
26
25
|
requirements:
|
27
26
|
- - ! '>='
|
28
27
|
- !ruby/object:Gem::Version
|
29
28
|
version: 3.0.3
|
29
|
+
none: false
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
+
prerelease: false
|
32
|
+
name: activesupport
|
31
33
|
type: :runtime
|
32
34
|
version_requirements: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
35
|
requirements:
|
35
36
|
- - ! '>='
|
36
37
|
- !ruby/object:Gem::Version
|
37
38
|
version: 3.0.3
|
38
|
-
name: activesupport
|
39
|
-
prerelease: false
|
40
|
-
requirement: !ruby/object:Gem::Requirement
|
41
39
|
none: false
|
40
|
+
requirement: !ruby/object:Gem::Requirement
|
42
41
|
requirements:
|
43
42
|
- - ! '>='
|
44
43
|
- !ruby/object:Gem::Version
|
45
44
|
version: 3.0.3
|
45
|
+
none: false
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
|
+
prerelease: false
|
48
|
+
name: mongo
|
47
49
|
type: :runtime
|
48
50
|
version_requirements: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
51
|
requirements:
|
51
52
|
- - ~>
|
52
53
|
- !ruby/object:Gem::Version
|
53
54
|
version: 1.8.2
|
54
|
-
name: mongo
|
55
|
-
prerelease: false
|
56
|
-
requirement: !ruby/object:Gem::Requirement
|
57
55
|
none: false
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
58
57
|
requirements:
|
59
58
|
- - ~>
|
60
59
|
- !ruby/object:Gem::Version
|
61
60
|
version: 1.8.2
|
61
|
+
none: false
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
|
+
prerelease: false
|
64
|
+
name: bson_ext
|
63
65
|
type: :runtime
|
64
66
|
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
67
|
requirements:
|
67
68
|
- - ~>
|
68
69
|
- !ruby/object:Gem::Version
|
69
70
|
version: 1.8.2
|
70
|
-
name: bson_ext
|
71
|
-
prerelease: false
|
72
|
-
requirement: !ruby/object:Gem::Requirement
|
73
71
|
none: false
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
74
73
|
requirements:
|
75
74
|
- - ~>
|
76
75
|
- !ruby/object:Gem::Version
|
77
76
|
version: 1.8.2
|
77
|
+
none: false
|
78
78
|
- !ruby/object:Gem::Dependency
|
79
|
+
prerelease: false
|
80
|
+
name: highline
|
79
81
|
type: :runtime
|
80
82
|
version_requirements: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
83
|
requirements:
|
83
84
|
- - ! '>='
|
84
85
|
- !ruby/object:Gem::Version
|
85
86
|
version: 1.6.1
|
86
|
-
name: highline
|
87
|
-
prerelease: false
|
88
|
-
requirement: !ruby/object:Gem::Requirement
|
89
87
|
none: false
|
88
|
+
requirement: !ruby/object:Gem::Requirement
|
90
89
|
requirements:
|
91
90
|
- - ! '>='
|
92
91
|
- !ruby/object:Gem::Version
|
93
92
|
version: 1.6.1
|
93
|
+
none: false
|
94
94
|
- !ruby/object:Gem::Dependency
|
95
|
+
prerelease: false
|
96
|
+
name: rspec
|
95
97
|
type: :development
|
96
98
|
version_requirements: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
99
|
requirements:
|
99
100
|
- - ! '>='
|
100
101
|
- !ruby/object:Gem::Version
|
101
102
|
version: '2.0'
|
102
|
-
name: rspec
|
103
|
-
prerelease: false
|
104
|
-
requirement: !ruby/object:Gem::Requirement
|
105
103
|
none: false
|
104
|
+
requirement: !ruby/object:Gem::Requirement
|
106
105
|
requirements:
|
107
106
|
- - ! '>='
|
108
107
|
- !ruby/object:Gem::Version
|
109
108
|
version: '2.0'
|
109
|
+
none: false
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
|
+
prerelease: false
|
112
|
+
name: rcov
|
111
113
|
type: :development
|
112
114
|
version_requirements: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
115
|
requirements:
|
115
116
|
- - ! '>='
|
116
117
|
- !ruby/object:Gem::Version
|
117
118
|
version: 0.9.9
|
118
|
-
name: rcov
|
119
|
-
prerelease: false
|
120
|
-
requirement: !ruby/object:Gem::Requirement
|
121
119
|
none: false
|
120
|
+
requirement: !ruby/object:Gem::Requirement
|
122
121
|
requirements:
|
123
122
|
- - ! '>='
|
124
123
|
- !ruby/object:Gem::Version
|
125
124
|
version: 0.9.9
|
125
|
+
none: false
|
126
126
|
- !ruby/object:Gem::Dependency
|
127
|
+
prerelease: false
|
128
|
+
name: cucumber
|
127
129
|
type: :development
|
128
130
|
version_requirements: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
131
|
requirements:
|
131
132
|
- - ! '>='
|
132
133
|
- !ruby/object:Gem::Version
|
133
134
|
version: '0.10'
|
134
|
-
name: cucumber
|
135
|
-
prerelease: false
|
136
|
-
requirement: !ruby/object:Gem::Requirement
|
137
135
|
none: false
|
136
|
+
requirement: !ruby/object:Gem::Requirement
|
138
137
|
requirements:
|
139
138
|
- - ! '>='
|
140
139
|
- !ruby/object:Gem::Version
|
141
140
|
version: '0.10'
|
141
|
+
none: false
|
142
142
|
- !ruby/object:Gem::Dependency
|
143
|
+
prerelease: false
|
144
|
+
name: mocha
|
143
145
|
type: :development
|
144
146
|
version_requirements: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
147
|
requirements:
|
147
148
|
- - ! '>='
|
148
149
|
- !ruby/object:Gem::Version
|
149
150
|
version: 0.9.8
|
150
|
-
name: mocha
|
151
|
-
prerelease: false
|
152
|
-
requirement: !ruby/object:Gem::Requirement
|
153
151
|
none: false
|
152
|
+
requirement: !ruby/object:Gem::Requirement
|
154
153
|
requirements:
|
155
154
|
- - ! '>='
|
156
155
|
- !ruby/object:Gem::Version
|
157
156
|
version: 0.9.8
|
157
|
+
none: false
|
158
158
|
- !ruby/object:Gem::Dependency
|
159
|
+
prerelease: false
|
160
|
+
name: yard
|
159
161
|
type: :development
|
160
162
|
version_requirements: !ruby/object:Gem::Requirement
|
161
|
-
none: false
|
162
163
|
requirements:
|
163
164
|
- - ! '>='
|
164
165
|
- !ruby/object:Gem::Version
|
165
166
|
version: 0.5.3
|
166
|
-
name: yard
|
167
|
-
prerelease: false
|
168
|
-
requirement: !ruby/object:Gem::Requirement
|
169
167
|
none: false
|
168
|
+
requirement: !ruby/object:Gem::Requirement
|
170
169
|
requirements:
|
171
170
|
- - ! '>='
|
172
171
|
- !ruby/object:Gem::Version
|
173
172
|
version: 0.5.3
|
173
|
+
none: false
|
174
174
|
- !ruby/object:Gem::Dependency
|
175
|
+
prerelease: false
|
176
|
+
name: sqlite3-ruby
|
175
177
|
type: :development
|
176
178
|
version_requirements: !ruby/object:Gem::Requirement
|
177
|
-
none: false
|
178
179
|
requirements:
|
179
180
|
- - ! '>='
|
180
181
|
- !ruby/object:Gem::Version
|
181
182
|
version: '1.3'
|
182
|
-
name: sqlite3-ruby
|
183
|
-
prerelease: false
|
184
|
-
requirement: !ruby/object:Gem::Requirement
|
185
183
|
none: false
|
184
|
+
requirement: !ruby/object:Gem::Requirement
|
186
185
|
requirements:
|
187
186
|
- - ! '>='
|
188
187
|
- !ruby/object:Gem::Version
|
189
188
|
version: '1.3'
|
189
|
+
none: false
|
190
190
|
- !ruby/object:Gem::Dependency
|
191
|
+
prerelease: false
|
192
|
+
name: mysql2
|
191
193
|
type: :development
|
192
194
|
version_requirements: !ruby/object:Gem::Requirement
|
193
|
-
none: false
|
194
195
|
requirements:
|
195
196
|
- - ~>
|
196
197
|
- !ruby/object:Gem::Version
|
197
198
|
version: 0.2.7
|
198
|
-
name: mysql2
|
199
|
-
prerelease: false
|
200
|
-
requirement: !ruby/object:Gem::Requirement
|
201
199
|
none: false
|
200
|
+
requirement: !ruby/object:Gem::Requirement
|
202
201
|
requirements:
|
203
202
|
- - ~>
|
204
203
|
- !ruby/object:Gem::Version
|
205
204
|
version: 0.2.7
|
205
|
+
none: false
|
206
206
|
- !ruby/object:Gem::Dependency
|
207
|
+
prerelease: false
|
208
|
+
name: watchr
|
207
209
|
type: :development
|
208
210
|
version_requirements: !ruby/object:Gem::Requirement
|
209
|
-
none: false
|
210
211
|
requirements:
|
211
212
|
- - ! '>='
|
212
213
|
- !ruby/object:Gem::Version
|
213
214
|
version: '0.6'
|
214
|
-
name: watchr
|
215
|
-
prerelease: false
|
216
|
-
requirement: !ruby/object:Gem::Requirement
|
217
215
|
none: false
|
216
|
+
requirement: !ruby/object:Gem::Requirement
|
218
217
|
requirements:
|
219
218
|
- - ! '>='
|
220
219
|
- !ruby/object:Gem::Version
|
221
220
|
version: '0.6'
|
221
|
+
none: false
|
222
222
|
- !ruby/object:Gem::Dependency
|
223
|
+
prerelease: false
|
224
|
+
name: rake
|
223
225
|
type: :development
|
224
226
|
version_requirements: !ruby/object:Gem::Requirement
|
225
|
-
none: false
|
226
227
|
requirements:
|
227
228
|
- - ! '>='
|
228
229
|
- !ruby/object:Gem::Version
|
229
230
|
version: '0'
|
230
|
-
name: rake
|
231
|
-
prerelease: false
|
232
|
-
requirement: !ruby/object:Gem::Requirement
|
233
231
|
none: false
|
232
|
+
requirement: !ruby/object:Gem::Requirement
|
234
233
|
requirements:
|
235
234
|
- - ! '>='
|
236
235
|
- !ruby/object:Gem::Version
|
237
236
|
version: '0'
|
237
|
+
none: false
|
238
238
|
description: Mongify allows you to map your sql data into a mongodb document database
|
239
239
|
with a simple DSL.
|
240
240
|
email:
|
@@ -328,23 +328,23 @@ rdoc_options:
|
|
328
328
|
require_paths:
|
329
329
|
- lib
|
330
330
|
required_ruby_version: !ruby/object:Gem::Requirement
|
331
|
-
none: false
|
332
331
|
requirements:
|
333
332
|
- - ! '>='
|
334
333
|
- !ruby/object:Gem::Version
|
335
334
|
version: 1.8.7
|
336
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
337
335
|
none: false
|
336
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
338
337
|
requirements:
|
339
338
|
- - ! '>='
|
340
339
|
- !ruby/object:Gem::Version
|
341
340
|
segments:
|
342
341
|
- 0
|
343
|
-
hash:
|
342
|
+
hash: -4583031450737885618
|
344
343
|
version: '0'
|
344
|
+
none: false
|
345
345
|
requirements: []
|
346
346
|
rubyforge_project:
|
347
|
-
rubygems_version: 1.8.
|
347
|
+
rubygems_version: 1.8.23
|
348
348
|
signing_key:
|
349
349
|
specification_version: 3
|
350
350
|
summary: Translate your SQL data to MongoDB with ease
|