bridge_cache 0.0.4 → 0.0.5
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.
- checksums.yaml +4 -4
- data/app/models/bridge_cache/course_template.rb +1 -4
- data/app/models/bridge_cache/custom_field.rb +1 -4
- data/app/models/bridge_cache/domain.rb +1 -4
- data/app/models/bridge_cache/enrollment.rb +1 -4
- data/app/models/bridge_cache/grant.rb +1 -4
- data/app/models/bridge_cache/group.rb +2 -4
- data/app/models/bridge_cache/program.rb +1 -4
- data/app/models/bridge_cache/program_enrollment.rb +1 -4
- data/app/models/bridge_cache/program_group_enrollment.rb +1 -4
- data/app/models/bridge_cache/program_item.rb +1 -4
- data/app/models/bridge_cache/tag.rb +1 -4
- data/app/models/bridge_cache/tagging.rb +2 -4
- data/app/models/bridge_cache/user.rb +1 -4
- data/lib/bridge_cache/data/bridge_model.rb +11 -0
- data/lib/bridge_cache/plugins/csv_dump.rb +17 -3
- data/lib/bridge_cache/version.rb +1 -1
- metadata +16 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 07fea4f39114b3ebd89681fc161b102aa38084e8
|
4
|
+
data.tar.gz: 7470148ae9f315a9d8934ac876a5cc4fe9e51b14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ac00747411dd23c9ca6393957f932f69e991e99458550c1b83360732ec5a20d3150d932a75d3fe787d28de0f39d00be3ae408bc90888292fc6e26dc50f41312a
|
7
|
+
data.tar.gz: 04c3008fe94fb312df966f72c28bc539d43a84854cd81b5f756e89b2fc0cedfdec000227ebe9d8e6beea5d507c24b959de0db7b1eaca2fa1896e748140e50704
|
@@ -1,14 +1,11 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class CourseTemplate < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :user, foreign_key: :user_id, primary_key: :bridge_id, class_name: 'BridgeCache::User'
|
5
6
|
belongs_to :domain, foreign_key: :domain_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
6
7
|
belongs_to :sub_account, foreign_key: :sub_account_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
7
8
|
has_many :enrollments, foreign_key: :course_template_id, primary_key: :bridge_id, class_name: 'BridgeCache::Enrollment'
|
8
9
|
|
9
|
-
def self.import_from_csv(file_path)
|
10
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
11
|
-
end
|
12
|
-
|
13
10
|
end
|
14
11
|
end
|
@@ -1,11 +1,8 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class CustomField < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :domain, foreign_key: :domain_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
5
6
|
|
6
|
-
def self.import_from_csv(file_path)
|
7
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
8
|
-
end
|
9
|
-
|
10
7
|
end
|
11
8
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Domain < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
has_many :domain_children, primary_key: 'bridge_id', foreign_key: 'parent_id', class_name: 'BridgeCache::Domain'
|
5
6
|
belongs_to :domain_parent, primary_key: 'bridge_id', foreign_key: 'parent_id', class_name: 'BridgeCache::Domain'
|
@@ -14,9 +15,5 @@ module BridgeCache
|
|
14
15
|
|
15
16
|
serialize :config
|
16
17
|
|
17
|
-
def self.import_from_csv(file_path)
|
18
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
19
|
-
end
|
20
|
-
|
21
18
|
end
|
22
19
|
end
|
@@ -1,12 +1,9 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Enrollment < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :user, foreign_key: :user_id, primary_key: :bridge_id, class_name: 'BridgeCache::User'
|
5
6
|
belongs_to :course_template, foreign_key: :course_template_id, primary_key: :bridge_id, class_name: 'BridgeCache::CourseTemplate'
|
6
7
|
|
7
|
-
def self.import_from_csv(file_path)
|
8
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
9
|
-
end
|
10
|
-
|
11
8
|
end
|
12
9
|
end
|
@@ -1,12 +1,9 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Grant < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :user, foreign_key: :user_id, primary_key: :bridge_id, class_name: 'BridgeCache::User'
|
5
6
|
belongs_to :domain, foreign_key: :domain_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
6
7
|
|
7
|
-
def self.import_from_csv(file_path)
|
8
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
9
|
-
end
|
10
|
-
|
11
8
|
end
|
12
9
|
end
|
@@ -1,13 +1,11 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Group < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
4
|
+
|
3
5
|
self.inheritance_column = nil
|
4
6
|
|
5
7
|
belongs_to :user, foreign_key: :user_id, primary_key: :bridge_id, class_name: 'BridgeCache::User'
|
6
8
|
has_many :program_group_enrollments, foreign_key: :group_id, primary_key: :bridge_id, class_name: 'BridgeCache::ProgramGroupEnrollment'
|
7
9
|
|
8
|
-
def self.import_from_csv(file_path)
|
9
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
10
|
-
end
|
11
|
-
|
12
10
|
end
|
13
11
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Program < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :domain, foreign_key: :domain_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
5
6
|
belongs_to :sub_account, foreign_key: :sub_account_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
@@ -7,9 +8,5 @@ module BridgeCache
|
|
7
8
|
has_many :program_enrollments, foreign_key: :program_id, primary_key: :bridge_id, class_name: 'BridgeCache::ProgramEnrollment'
|
8
9
|
has_many :program_group_enrollments, foreign_key: :program_id, primary_key: :bridge_id, class_name: 'BridgeCache::ProgramGroupEnrollment'
|
9
10
|
|
10
|
-
def self.import_from_csv(file_path)
|
11
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
12
|
-
end
|
13
|
-
|
14
11
|
end
|
15
12
|
end
|
@@ -1,12 +1,9 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class ProgramEnrollment < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :user, foreign_key: :user_id, primary_key: :bridge_id, class_name: 'BridgeCache::User'
|
5
6
|
belongs_to :program, foreign_key: :program_id, primary_key: :bridge_id, class_name: 'BridgeCache::Program'
|
6
7
|
|
7
|
-
def self.import_from_csv(file_path)
|
8
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
9
|
-
end
|
10
|
-
|
11
8
|
end
|
12
9
|
end
|
@@ -1,12 +1,9 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class ProgramGroupEnrollment < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :group, foreign_key: :group_id, primary_key: :bridge_id, class_name: 'BridgeCache::Group'
|
5
6
|
belongs_to :program, foreign_key: :program_id, primary_key: :bridge_id, class_name: 'BridgeCache::Program'
|
6
7
|
|
7
|
-
def self.import_from_csv(file_path)
|
8
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
9
|
-
end
|
10
|
-
|
11
8
|
end
|
12
9
|
end
|
@@ -1,11 +1,8 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class ProgramItem < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :program, foreign_key: :program_id, primary_key: :bridge_id, class_name: 'BridgeCache::Program'
|
5
6
|
|
6
|
-
def self.import_from_csv(file_path)
|
7
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
8
|
-
end
|
9
|
-
|
10
7
|
end
|
11
8
|
end
|
@@ -1,11 +1,8 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Tag < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
has_many :taggings, foreign_key: :tag_id, primary_key: :bridge_id, class_name: 'BridgeCache::Tagging'
|
5
6
|
|
6
|
-
def self.import_from_csv(file_path)
|
7
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
8
|
-
end
|
9
|
-
|
10
7
|
end
|
11
8
|
end
|
@@ -1,11 +1,9 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class Tagging < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
4
|
+
|
3
5
|
belongs_to :tag, foreign_key: :tag_id, primary_key: :bridge_id, class_name: 'BridgeCache::Tag'
|
4
6
|
belongs_to :user, foreign_key: :tagger_id, primary_key: :bridge_id, class_name: 'BridgeCache::User'
|
5
7
|
|
6
|
-
def self.import_from_csv(file_path)
|
7
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
8
|
-
end
|
9
|
-
|
10
8
|
end
|
11
9
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
module BridgeCache
|
2
2
|
class User < ActiveRecord::Base
|
3
|
+
extend BridgeCache::Data::BridgeModel
|
3
4
|
|
4
5
|
belongs_to :domain, foreign_key: :domain_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
5
6
|
belongs_to :sub_account, foreign_key: :sub_account_id, primary_key: :bridge_id, class_name: 'BridgeCache::Domain'
|
@@ -12,9 +13,5 @@ module BridgeCache
|
|
12
13
|
|
13
14
|
serialize :config
|
14
15
|
|
15
|
-
def self.import_from_csv(file_path)
|
16
|
-
BridgeCache::Plugins::CSVDump::dump_to_table(self, file_path)
|
17
|
-
end
|
18
|
-
|
19
16
|
end
|
20
17
|
end
|
@@ -13,9 +13,8 @@ module BridgeCache::Plugins
|
|
13
13
|
total += 1
|
14
14
|
end
|
15
15
|
CSV.foreach(file_path, headers: true) do |row|
|
16
|
-
row = self.remove_bad_columns(clazz, row)
|
17
16
|
if count < MAX_ROW_INTERVAL
|
18
|
-
rows << clazz
|
17
|
+
rows << initialze_row(clazz, row)
|
19
18
|
end
|
20
19
|
if count % MAX_ROW_INTERVAL == 0 || count == total
|
21
20
|
dump_rows(clazz, rows)
|
@@ -26,8 +25,23 @@ module BridgeCache::Plugins
|
|
26
25
|
end
|
27
26
|
end
|
28
27
|
|
28
|
+
def self.dump_row(clazz, row)
|
29
|
+
instance = initialze_row(clazz, row)
|
30
|
+
dump_rows([instance])
|
31
|
+
end
|
32
|
+
|
33
|
+
private
|
34
|
+
|
35
|
+
def self.initialze_row(clazz, row)
|
36
|
+
instance = clazz.find_or_create_by(bridge_id: row['id'])
|
37
|
+
instance.assign_attributes(remove_bad_columns(clazz, BridgeCache::Plugins::DataTransform::set_bridge_id(row).to_h))
|
38
|
+
instance
|
39
|
+
end
|
40
|
+
|
29
41
|
def self.dump_rows(clazz, rows)
|
30
|
-
rows.each
|
42
|
+
rows.each do |row|
|
43
|
+
row.save! if row.changed?
|
44
|
+
end
|
31
45
|
end
|
32
46
|
|
33
47
|
def self.remove_bad_columns(clazz, row)
|
data/lib/bridge_cache/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bridge_cache
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jshaffer
|
@@ -136,6 +136,20 @@ dependencies:
|
|
136
136
|
- - ">="
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: pg
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
139
153
|
description: A mountable engine for bridge data storage
|
140
154
|
email:
|
141
155
|
- jshaffer@instructure.com
|
@@ -179,6 +193,7 @@ files:
|
|
179
193
|
- db/migrate/20170518211754_create_bridge_cache_taggings.rb
|
180
194
|
- db/migrate/20170518211817_create_bridge_cache_course_templates.rb
|
181
195
|
- lib/bridge_cache.rb
|
196
|
+
- lib/bridge_cache/data/bridge_model.rb
|
182
197
|
- lib/bridge_cache/engine.rb
|
183
198
|
- lib/bridge_cache/plugins/csv_dump.rb
|
184
199
|
- lib/bridge_cache/plugins/data_transform.rb
|