boxxspring 2.2.5 → 2.3.3

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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/lib/boxxspring/parser.rb +20 -6
  3. data/lib/boxxspring/resources/artifact.rb +5 -5
  4. data/lib/boxxspring/resources/artifact_curation_task.rb +31 -0
  5. data/lib/boxxspring/resources/branding_rule.rb +16 -0
  6. data/lib/boxxspring/resources/distribution.rb +2 -0
  7. data/lib/boxxspring/resources/feed.rb +8 -7
  8. data/lib/boxxspring/resources/theme_environment.rb +4 -4
  9. data/lib/boxxspring/resources/verizon_distribution.rb +12 -0
  10. data/lib/boxxspring/resources/verizon_distribution_task.rb +11 -0
  11. data/lib/boxxspring/resources/video_article_curation_task.rb +21 -0
  12. data/lib/boxxspring/resources/videos_branding_task.rb +10 -0
  13. data/lib/boxxspring/resources/videos_curation_task.rb +1 -0
  14. data/lib/boxxspring/resources/videos_interrogation_task.rb +7 -0
  15. data/lib/boxxspring/resources/youtube_subscription_metadata_task.rb +14 -0
  16. data/lib/boxxspring/resources/youtube_subscription_task.rb +7 -0
  17. data/lib/boxxspring/version.rb +1 -1
  18. data/lib/boxxspring.rb +13 -18
  19. metadata +11 -20
  20. data/lib/boxxspring/resources/atomic_video_card.rb +0 -6
  21. data/lib/boxxspring/resources/attribution.rb +0 -3
  22. data/lib/boxxspring/resources/author.rb +0 -5
  23. data/lib/boxxspring/resources/card.rb +0 -23
  24. data/lib/boxxspring/resources/group.rb +0 -3
  25. data/lib/boxxspring/resources/organization.rb +0 -3
  26. data/lib/boxxspring/resources/page.rb +0 -9
  27. data/lib/boxxspring/resources/picture_card.rb +0 -6
  28. data/lib/boxxspring/resources/player.rb +0 -3
  29. data/lib/boxxspring/resources/playlist.rb +0 -3
  30. data/lib/boxxspring/resources/post_card.rb +0 -6
  31. data/lib/boxxspring/resources/reaction.rb +0 -12
  32. data/lib/boxxspring/resources/school.rb +0 -3
  33. data/lib/boxxspring/resources/story.rb +0 -10
  34. data/lib/boxxspring/resources/tag.rb +0 -3
  35. data/lib/boxxspring/resources/team.rb +0 -3
  36. data/lib/boxxspring/resources/text_card.rb +0 -6
  37. data/lib/boxxspring/resources/video_card.rb +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cbd4f69a3a63cd9984f0010ecbcf278708e89d20
4
- data.tar.gz: 146941c7e72c1b27f4028704460a1949a87a724e
3
+ metadata.gz: b4f45ace16bfe017378a10f162bebb4e90c92a42
4
+ data.tar.gz: 5eac5c69a5fb0f743281958051dfcb888e0acd73
5
5
  SHA512:
6
- metadata.gz: 8227f1046f350d12266f18fb358551e6660755fcbb95513fe582714de2df388c3a6f1206222763f5cad1bcfbe37f655c56d2321962d05bcd1de42c3bd378d7d3
7
- data.tar.gz: d96cd8b67ab96bd43a7199fa5592f2e69daea445b5028c217e1eaa8064777013e619b1b7e50d886d13f404b2f816e53d32ebb20f023cbd7d6543bbf8a37ba8c6
6
+ metadata.gz: ab1a8f4f8f703b7d1fcb2fa3be5ece170da8fb432ff642dbdc4e41e5133de32082ea0bdc1d9ff5c063ba5b68eb4a74e4c0fa6d913bef211d576c86c668303d96
7
+ data.tar.gz: 0510c3a3ef50280ac51c025f9336f73b94c49d3f63b267bf3db96f969616c933ef50d3e9a28c6146d85c2fa500778d508e27ae8d6b132afeb249a48241ce5452
@@ -42,12 +42,14 @@ module Boxxspring
42
42
  def resources
43
43
  result = nil
44
44
  unless self.name.blank?
45
- result = self.keys.map { | key | self.resource_by( name, key ) }
45
+ result = self.keys.map do | key |
46
+ self.resource_by( name, key, { 'type_name' => self.type_name } )
47
+ end
46
48
  end
47
49
  result
48
50
  end
49
51
 
50
- def resource_by( name, key )
52
+ def resource_by( name, key, options = {} )
51
53
 
52
54
  @resources_index ||= Hash.new { | hash, key | hash[ key ] = {} }
53
55
  @resource_index_mutex ||= Hash.new { | hash, key | hash[ key ] = [] }
@@ -63,8 +65,15 @@ module Boxxspring
63
65
  result = nil
64
66
  resource_attributes = resource_attribute_index[ name ][ key ]
65
67
  if resource_attributes.present?
66
- type_name = resource_attributes[ 'type_name' ] || self.type_name
67
- klass = Boxxspring.const_get( type_name.camelize ) rescue nil
68
+ type_name = resource_attributes[ 'type_name' ]
69
+ klass = nil
70
+ klass = ( Boxxspring.const_get( type_name.camelize ) rescue nil ) \
71
+ if type_name.present?
72
+ if klass.nil?
73
+ type_name = options[ 'type_name' ]
74
+ klass = ( Boxxspring.const_get( type_name.camelize ) rescue nil ) \
75
+ if type_name.present?
76
+ end
68
77
  if klass.present?
69
78
  result = klass.new(
70
79
  resource_attributes,
@@ -92,8 +101,13 @@ module Boxxspring
92
101
  if association.present?
93
102
  association.each do | key, value |
94
103
  unless key == 'id'
95
- result[ key ] = value.map do | associated_id |
96
- self.resource_by( key, associated_id )
104
+ type_name = value[ 'type_name' ]
105
+ result[ key ] = ( value[ 'ids' ] || [] ).map do | associated_id |
106
+ self.resource_by(
107
+ key,
108
+ associated_id,
109
+ { 'type_name' => type_name }
110
+ )
97
111
  end
98
112
  result[ key ].compact!
99
113
  end
@@ -30,20 +30,20 @@ module Boxxspring
30
30
  field :provider
31
31
  field :provider_uid
32
32
  field :provider_url
33
-
33
+
34
34
  field :sponsor_id
35
35
  field :template_id
36
+ field :attribution_id
36
37
 
37
38
  field :attribution_name
38
39
  field :attribution_url
39
40
 
40
- has_one :attribution
41
+ has_one :attribution
41
42
 
42
43
  has_many :artifacts
43
44
  has_many :pictures
44
- has_many :cards
45
- has_many :sponsors
46
- has_many :advertisements
45
+ has_many :sponsors
46
+ has_many :advertisements
47
47
  has_many :artifact_locators
48
48
 
49
49
  end
@@ -0,0 +1,31 @@
1
+ module Boxxspring
2
+
3
+ class ArtifactCurationTask < Task
4
+
5
+ field :artifact_name
6
+ field :artifact_description
7
+ field :artifact_type_name
8
+ field :artifact_picture_url
9
+ field :artifact_provider_uid
10
+ field :artifact_provider_url
11
+ field :artifact_originated_at
12
+ field :provider
13
+ field :artifact_slug
14
+ field :artifact_template_id
15
+ field :artifact_sponsor_id
16
+ field :artifact_note
17
+ field :artifact_short_name
18
+ field :attribution_id
19
+ field :artifact_state
20
+ field :artifact_tagline
21
+ field :artifact_short_description
22
+ field :attribution_name
23
+ field :attribution_provider_uid
24
+ field :attribution_picture_url
25
+ field :artifact_id
26
+ field :artifact_original
27
+ field :artifact_ids
28
+
29
+ end
30
+
31
+ end
@@ -0,0 +1,16 @@
1
+ module Boxxspring
2
+
3
+ class BrandingRule < Base
4
+
5
+ field :name
6
+ field :id
7
+ field :created_at
8
+ field :updated_at
9
+ field :preroll_id
10
+ field :postroll_id
11
+ field :watermark_id
12
+ field :description
13
+
14
+ end
15
+
16
+ end
@@ -8,8 +8,10 @@ module Boxxspring
8
8
  field :uploaded_at
9
9
  field :name
10
10
  field :service_id
11
+ field :branding_rule_id
11
12
 
12
13
  has_one :service
14
+ has_one :branding_rule
13
15
 
14
16
  end
15
17
  end
@@ -2,15 +2,16 @@ module Boxxspring
2
2
 
3
3
  class Feed < Base
4
4
 
5
- field :created_at
6
- field :updated_at
5
+ field :created_at
6
+ field :updated_at
7
+ field :generated_at
7
8
 
8
- field :id
9
- field :name
10
- field :code_name
11
- field :generated_at
12
- field :filter_id
9
+ field :provider
10
+ field :id
11
+ field :name
12
+ field :code_name
13
13
 
14
+ field :time_to_live
14
15
  has_one :filter
15
16
 
16
17
  end
@@ -1,13 +1,13 @@
1
1
  module Boxxspring
2
2
 
3
- class ThemeEnvironment < Base
3
+ class ThemeEnvironment < Base
4
4
 
5
5
  field :id
6
6
 
7
7
  field :created_at
8
8
  field :updated_at
9
9
 
10
- field :order
10
+ field :position
11
11
  field :code_name
12
12
  field :name
13
13
  field :description
@@ -16,6 +16,6 @@ module Boxxspring
16
16
 
17
17
  has_one :user_agent
18
18
 
19
- end
19
+ end
20
20
 
21
- end
21
+ end
@@ -0,0 +1,12 @@
1
+ module Boxxspring
2
+
3
+ class VerizonDistribution < Distribution
4
+
5
+ field :artwork
6
+ field :season_number
7
+ field :genre
8
+ field :series_title
9
+ field :series_description
10
+
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ module Boxxspring
2
+
3
+ class VerizonDistributionTask < Task
4
+
5
+ field :distribution_id
6
+ field :video_title
7
+ field :video_description
8
+ field :episode_number
9
+
10
+ end
11
+ end
@@ -0,0 +1,21 @@
1
+ module Boxxspring
2
+
3
+ class VideoArticleCurationTask < Task
4
+
5
+ field :video_title
6
+ field :video_description
7
+ field :video_picture_url
8
+ field :video_provider_uid
9
+ field :video_provider_url
10
+ field :video_originated_at
11
+ field :provider
12
+ field :attribution_name
13
+ field :attribution_provider_uid
14
+ field :attribution_picture_url
15
+ field :artifact_id
16
+ field :artifact_slug
17
+ field :artifact_ids
18
+
19
+ end
20
+
21
+ end
@@ -0,0 +1,10 @@
1
+ module Boxxspring
2
+
3
+ class VideosBrandingTask < Task
4
+
5
+ field :distribution_id
6
+ field :branded_filename
7
+
8
+ end
9
+
10
+ end
@@ -8,6 +8,7 @@ module Boxxspring
8
8
  field :video_provider_uid
9
9
  field :video_provider_url
10
10
  field :video_originated_at
11
+ field :video_originated_at
11
12
  field :provider
12
13
  field :attribution_name
13
14
  field :attribution_provider_uid
@@ -0,0 +1,7 @@
1
+ module Boxxspring
2
+
3
+ class VideosInterrogationTask < Task
4
+
5
+ end
6
+
7
+ end
@@ -0,0 +1,14 @@
1
+ module Boxxspring
2
+
3
+ class YoutubeSubscriptionMetadataTask < Task
4
+
5
+ field :source_name
6
+ field :source_url
7
+ field :provider
8
+ field :attribution_name
9
+ field :attribution_provider_uid
10
+ field :attribution_picture_url
11
+
12
+ end
13
+
14
+ end
@@ -0,0 +1,7 @@
1
+ module Boxxspring
2
+
3
+ class YoutubeSubscriptionTask < Task
4
+
5
+ end
6
+
7
+ end
@@ -1,3 +1,3 @@
1
1
  module Boxxspring
2
- VERSION = '2.2.5'
2
+ VERSION = '2.3.3'
3
3
  end
data/lib/boxxspring.rb CHANGED
@@ -27,29 +27,12 @@ require 'boxxspring/resources/theme'
27
27
  require 'boxxspring/resources/feed'
28
28
  require 'boxxspring/resources/filter'
29
29
  require 'boxxspring/resources/filter_criteria'
30
- require 'boxxspring/resources/card'
31
- require 'boxxspring/resources/video_card'
32
- require 'boxxspring/resources/picture_card'
33
- require 'boxxspring/resources/text_card'
34
- require 'boxxspring/resources/atomic_video_card'
35
30
  require 'boxxspring/resources/advertising_doubleclick_advertisement'
36
31
  require 'boxxspring/resources/advertising_liverail_advertisement'
37
32
  require 'boxxspring/resources/video'
38
33
  require 'boxxspring/resources/video_source'
39
34
  require 'boxxspring/resources/artifact_relationship'
40
35
  require 'boxxspring/resources/artifact'
41
- require 'boxxspring/resources/story'
42
- require 'boxxspring/resources/page'
43
- require 'boxxspring/resources/author'
44
- require 'boxxspring/resources/school'
45
- require 'boxxspring/resources/player'
46
- require 'boxxspring/resources/team'
47
- require 'boxxspring/resources/organization'
48
- require 'boxxspring/resources/reaction'
49
- require 'boxxspring/resources/attribution'
50
- require 'boxxspring/resources/tag'
51
- require 'boxxspring/resources/playlist'
52
- require 'boxxspring/resources/group'
53
36
  require 'boxxspring/resources/property'
54
37
  require 'boxxspring/resources/service'
55
38
  require 'boxxspring/resources/legacy_service'
@@ -57,6 +40,7 @@ require 'boxxspring/resources/social_service'
57
40
  require 'boxxspring/resources/source'
58
41
  require 'boxxspring/resources/task'
59
42
  require 'boxxspring/resources/videos_ingestion_task'
43
+ require 'boxxspring/resources/videos_interrogation_task'
60
44
  require 'boxxspring/resources/videos_picture_task'
61
45
  require 'boxxspring/resources/feed_generation_task'
62
46
  require 'boxxspring/resources/subscription_ingestion_task'
@@ -70,11 +54,22 @@ require 'boxxspring/resources/facebook_page_distribution_task'
70
54
  require 'boxxspring/resources/twitter_distribution_task'
71
55
  require 'boxxspring/resources/youtube_distribution_task'
72
56
  require 'boxxspring/resources/artifact_locator'
73
- require 'boxxspring/resources/post_card'
57
+ require 'boxxspring/resources/verizon_distribution'
58
+ require 'boxxspring/resources/verizon_distribution_task'
59
+
74
60
 
75
61
  require 'boxxspring/resources/youtube_channel_service'
76
62
  require 'boxxspring/resources/facebook_page_service'
77
63
  require 'boxxspring/resources/twitter_service'
78
64
  require 'boxxspring/resources/videos_curation_task'
79
65
 
66
+ require 'boxxspring/resources/youtube_subscription_task'
67
+ require 'boxxspring/resources/video_article_curation_task'
68
+ require 'boxxspring/resources/youtube_subscription_metadata_task'
69
+ require 'boxxspring/resources/artifact_curation_task'
70
+
80
71
  require 'boxxspring/resources/analytics_media_sample'
72
+
73
+ require 'boxxspring/resources/branding_rule'
74
+ require 'boxxspring/resources/videos_branding_task'
75
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: boxxspring
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.5
4
+ version: 2.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kristoph Cichocki-Romanov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-13 00:00:00.000000000 Z
11
+ date: 2015-06-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: multi_json
@@ -82,14 +82,12 @@ files:
82
82
  - lib/boxxspring/resources/advertising_liverail_advertisement.rb
83
83
  - lib/boxxspring/resources/analytics_media_sample.rb
84
84
  - lib/boxxspring/resources/artifact.rb
85
+ - lib/boxxspring/resources/artifact_curation_task.rb
85
86
  - lib/boxxspring/resources/artifact_locator.rb
86
87
  - lib/boxxspring/resources/artifact_relationship.rb
87
- - lib/boxxspring/resources/atomic_video_card.rb
88
88
  - lib/boxxspring/resources/attribute_error.rb
89
- - lib/boxxspring/resources/attribution.rb
90
- - lib/boxxspring/resources/author.rb
91
89
  - lib/boxxspring/resources/base.rb
92
- - lib/boxxspring/resources/card.rb
90
+ - lib/boxxspring/resources/branding_rule.rb
93
91
  - lib/boxxspring/resources/distribution.rb
94
92
  - lib/boxxspring/resources/error.rb
95
93
  - lib/boxxspring/resources/facebook_page_distribution.rb
@@ -100,33 +98,20 @@ files:
100
98
  - lib/boxxspring/resources/filter.rb
101
99
  - lib/boxxspring/resources/filter_criteria.rb
102
100
  - lib/boxxspring/resources/forbidden_error.rb
103
- - lib/boxxspring/resources/group.rb
104
101
  - lib/boxxspring/resources/legacy_service.rb
105
102
  - lib/boxxspring/resources/malformed_parameter_error.rb
106
103
  - lib/boxxspring/resources/metric.rb
107
104
  - lib/boxxspring/resources/missing_parameter_error.rb
108
105
  - lib/boxxspring/resources/not_found_error.rb
109
- - lib/boxxspring/resources/organization.rb
110
- - lib/boxxspring/resources/page.rb
111
106
  - lib/boxxspring/resources/picture.rb
112
- - lib/boxxspring/resources/picture_card.rb
113
- - lib/boxxspring/resources/player.rb
114
- - lib/boxxspring/resources/playlist.rb
115
- - lib/boxxspring/resources/post_card.rb
116
107
  - lib/boxxspring/resources/property.rb
117
- - lib/boxxspring/resources/reaction.rb
118
108
  - lib/boxxspring/resources/sample.rb
119
- - lib/boxxspring/resources/school.rb
120
109
  - lib/boxxspring/resources/service.rb
121
110
  - lib/boxxspring/resources/social_service.rb
122
111
  - lib/boxxspring/resources/source.rb
123
112
  - lib/boxxspring/resources/sponsor.rb
124
- - lib/boxxspring/resources/story.rb
125
113
  - lib/boxxspring/resources/subscription_ingestion_task.rb
126
- - lib/boxxspring/resources/tag.rb
127
114
  - lib/boxxspring/resources/task.rb
128
- - lib/boxxspring/resources/team.rb
129
- - lib/boxxspring/resources/text_card.rb
130
115
  - lib/boxxspring/resources/theme.rb
131
116
  - lib/boxxspring/resources/theme_environment.rb
132
117
  - lib/boxxspring/resources/theme_template.rb
@@ -134,16 +119,22 @@ files:
134
119
  - lib/boxxspring/resources/twitter_distribution_task.rb
135
120
  - lib/boxxspring/resources/twitter_service.rb
136
121
  - lib/boxxspring/resources/user_agent.rb
122
+ - lib/boxxspring/resources/verizon_distribution.rb
123
+ - lib/boxxspring/resources/verizon_distribution_task.rb
137
124
  - lib/boxxspring/resources/video.rb
138
- - lib/boxxspring/resources/video_card.rb
125
+ - lib/boxxspring/resources/video_article_curation_task.rb
139
126
  - lib/boxxspring/resources/video_source.rb
140
127
  - lib/boxxspring/resources/video_source_segment.rb
128
+ - lib/boxxspring/resources/videos_branding_task.rb
141
129
  - lib/boxxspring/resources/videos_curation_task.rb
142
130
  - lib/boxxspring/resources/videos_ingestion_task.rb
131
+ - lib/boxxspring/resources/videos_interrogation_task.rb
143
132
  - lib/boxxspring/resources/videos_picture_task.rb
144
133
  - lib/boxxspring/resources/youtube_channel_service.rb
145
134
  - lib/boxxspring/resources/youtube_distribution.rb
146
135
  - lib/boxxspring/resources/youtube_distribution_task.rb
136
+ - lib/boxxspring/resources/youtube_subscription_metadata_task.rb
137
+ - lib/boxxspring/resources/youtube_subscription_task.rb
147
138
  - lib/boxxspring/response.rb
148
139
  - lib/boxxspring/serializer.rb
149
140
  - lib/boxxspring/version.rb
@@ -1,6 +0,0 @@
1
- module Boxxspring
2
-
3
- class AtomicVideoCard < VideoCard
4
- end
5
-
6
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Attribution < Artifact; end
3
- end
@@ -1,5 +0,0 @@
1
- module Boxxspring
2
-
3
- class Author < Artifact; end
4
-
5
- end
@@ -1,23 +0,0 @@
1
- module Boxxspring
2
-
3
- class Card < Base
4
-
5
- field :created_at
6
- field :updated_at
7
-
8
- field :id
9
- field :name
10
- field :body
11
-
12
- field :picture_id
13
-
14
- field :provider
15
- field :provider_uid
16
- field :provider_url
17
-
18
- field :attribution_id
19
- field :properties
20
-
21
- end
22
-
23
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Group < Artifact; end
3
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Organization < Artifact; end
3
- end
@@ -1,9 +0,0 @@
1
- module Boxxspring
2
-
3
- class Page < Artifact
4
-
5
- field :code_name
6
-
7
- end
8
-
9
- end
@@ -1,6 +0,0 @@
1
- module Boxxspring
2
-
3
- class PictureCard < Card
4
- end
5
-
6
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Player < Artifact; end
3
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Playlist < Artifact; end
3
- end
@@ -1,6 +0,0 @@
1
- module Boxxspring
2
-
3
- class PostCard < Card
4
- end
5
-
6
- end
@@ -1,12 +0,0 @@
1
- module Boxxspring
2
-
3
- class Reaction < Artifact
4
-
5
- field :id
6
- field :name
7
- field :code_name
8
- field :slug
9
-
10
- end
11
-
12
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class School < Artifact; end
3
- end
@@ -1,10 +0,0 @@
1
- module Boxxspring
2
- class Story < Artifact
3
-
4
- has_many :attributions
5
- has_one :authors
6
- has_one :theme_template
7
- has_one :advertisement
8
-
9
- end
10
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Tag < Artifact; end
3
- end
@@ -1,3 +0,0 @@
1
- module Boxxspring
2
- class Team < Artifact; end
3
- end
@@ -1,6 +0,0 @@
1
- module Boxxspring
2
-
3
- class TextCard < Card
4
- end
5
-
6
- end
@@ -1,6 +0,0 @@
1
- module Boxxspring
2
-
3
- class VideoCard < Card
4
- end
5
-
6
- end