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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MmJiYTJlODE2N2I5MDg0NjJhNzRmNWNhZTNhOGQ3NmQzMmI4ZTgyZQ==
4
+ MGQzODY5NzNiOTE1YTYwNWZjZWI2NGYyMzQ4NjA3MGYwZmQ3N2I2OA==
5
5
  data.tar.gz: !binary |-
6
- NTgwZDQwMTY4MjY3MjRiMzUwNzU0NDA1NzUwNTk2ZWI4ZTY1YzJiZQ==
6
+ NGZhOTI4Y2YwMGMwNGExYzFmNWQ0NjJkMzE5ZjA2NTZiMzk3NzEzNg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NjI4YWZhYjNkM2JjNWIzM2ExMTM3MjQyNmYwOWMwYzFhMjdhZTFiNmUyY2Y5
10
- YjNmODZhOWE4OGI4YzhiNTkxNzFhMThiZjYzNWQwMDhiOTc5ODNhMmY2NWFm
11
- YWNkN2Y2ZDJkZDQ4MzFhYTI5Y2U2YmJjMGYxYTBkODMwOWQ0MjQ=
9
+ NWM5MzU2YTE1ODQwNjE2N2Y5OWZkOWZhMmE1MTlmNmYzMzY3OTgzYjJlYTAw
10
+ Y2M5MjIwYjVhZjJmNTEyMmRiMTVmMzIzMTlkZTkwMzNiOGYyODQ0NzEyNmY5
11
+ NWMzMzU4YzZiZmU3MTBiYmQ3ZTY5YzcxMzg1OTM0YjNmYTI1Njk=
12
12
  data.tar.gz: !binary |-
13
- ZWNjODk2NjNiMDk0YmMyZmJhODk0NzRjMDc1MDEwNTgyODA3OWUxMDk3M2Q3
14
- YTIyODkxNGJkMGU4NzBkNmVmMzU5Njk5ODhkYzJjNjVjYzFhOWIwOGE1NzVl
15
- MmQ2YWVhZmU1NjY5OTA1OWI5NTliNmI3YTlhYzkzNWNmNGJkOGY=
13
+ ZTYyZDY1OGVjNzBjNTQ4NTFjYmJiOWI4NWI4MzgyZjMyYjljNGJiM2QzN2Q0
14
+ YzJhNTVjNzE0NWZlZmJhYjM0ZGQ0YzcyN2VjMWE4NmFiYWY1Y2Y1MDEyYjM0
15
+ MzMyNjRjYjFiMDk5MGJlY2Y0NDA0MmM0ODQxMzFhYmY4ZGY4YmE=
@@ -1,3 +1,3 @@
1
1
  module Tofulcrum
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
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
- Fulcrum::Record.create(record)
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
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tofulcrum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zac McCormick