tofulcrum 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/tofulcrum/version.rb +1 -1
- data/lib/tofulcrum.rb +19 -4
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MGQzODY5NzNiOTE1YTYwNWZjZWI2NGYyMzQ4NjA3MGYwZmQ3N2I2OA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NGZhOTI4Y2YwMGMwNGExYzFmNWQ0NjJkMzE5ZjA2NTZiMzk3NzEzNg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NWM5MzU2YTE1ODQwNjE2N2Y5OWZkOWZhMmE1MTlmNmYzMzY3OTgzYjJlYTAw
|
10
|
+
Y2M5MjIwYjVhZjJmNTEyMmRiMTVmMzIzMTlkZTkwMzNiOGYyODQ0NzEyNmY5
|
11
|
+
NWMzMzU4YzZiZmU3MTBiYmQ3ZTY5YzcxMzg1OTM0YjNmYTI1Njk=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZTYyZDY1OGVjNzBjNTQ4NTFjYmJiOWI4NWI4MzgyZjMyYjljNGJiM2QzN2Q0
|
14
|
+
YzJhNTVjNzE0NWZlZmJhYjM0ZGQ0YzcyN2VjMWE4NmFiYWY1Y2Y1MDEyYjM0
|
15
|
+
MzMyNjRjYjFiMDk5MGJlY2Y0NDA0MmM0ODQxMzFhYmY4ZGY4YmE=
|
data/lib/tofulcrum/version.rb
CHANGED
data/lib/tofulcrum.rb
CHANGED
@@ -14,10 +14,12 @@ module Tofulcrum
|
|
14
14
|
end
|
15
15
|
|
16
16
|
row_index = 0
|
17
|
+
upload_index = 0
|
17
18
|
|
18
19
|
lat_index = nil
|
19
20
|
lon_index = nil
|
20
21
|
column_mapping = []
|
22
|
+
records = []
|
21
23
|
|
22
24
|
CSV.foreach(file) do |row|
|
23
25
|
is_header = row_index == 0
|
@@ -34,7 +36,6 @@ module Tofulcrum
|
|
34
36
|
|
35
37
|
column_mapping = find_mapping_columns(form_id, headers, row, mapping)
|
36
38
|
else
|
37
|
-
|
38
39
|
form_values = {}
|
39
40
|
|
40
41
|
column_mapping.each do |map|
|
@@ -59,13 +60,27 @@ module Tofulcrum
|
|
59
60
|
}
|
60
61
|
}
|
61
62
|
|
62
|
-
|
63
|
+
records << record
|
63
64
|
end
|
64
65
|
|
65
66
|
row_index += 1
|
66
|
-
|
67
|
-
print "#{row_index.to_s.rjust(10, ' ')} records uploaded\r"
|
68
67
|
end
|
68
|
+
|
69
|
+
thread_count = 8
|
70
|
+
|
71
|
+
mutex = Mutex.new
|
72
|
+
|
73
|
+
thread_count.times.map {
|
74
|
+
Thread.new(records) do |recs|
|
75
|
+
while record = mutex.synchronize { recs.pop }
|
76
|
+
Fulcrum::Record.create(record)
|
77
|
+
mutex.synchronize {
|
78
|
+
print "#{upload_index.to_s.rjust(10, ' ')} records uploaded\r"
|
79
|
+
upload_index += 1
|
80
|
+
}
|
81
|
+
end
|
82
|
+
end
|
83
|
+
}.each(&:join)
|
69
84
|
end
|
70
85
|
|
71
86
|
no_tasks do
|