360_services 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.
data/360_services.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{360_services}
5
- s.version = "0.0.4"
5
+ s.version = "0.0.5"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Sorenson Media"]
9
- s.date = %q{2010-02-26}
9
+ s.date = %q{2010-03-09}
10
10
  s.description = %q{Ruby bindings for Sorenson 360}
11
11
  s.email = %q{video@sorensonmedia.com}
12
- s.extra_rdoc_files = ["README.rdoc", "lib/sorenson/services.rb", "lib/sorenson/services/account.rb", "lib/sorenson/services/array.rb", "lib/sorenson/services/asset.rb", "lib/sorenson/services/base.rb", "lib/sorenson/services/category.rb", "lib/sorenson/services/core_ext.rb", "lib/sorenson/services/core_ext/attribute_accessors.rb", "lib/sorenson/services/core_ext/hash.rb", "lib/sorenson/services/core_ext/object.rb", "lib/sorenson/services/event.rb", "lib/sorenson/services/flag.rb", "lib/sorenson/services/group.rb", "lib/sorenson/services/metric.rb", "lib/sorenson/services/rate_plan.rb", "lib/sorenson/services/site.rb", "lib/sorenson/services/tag.rb"]
13
- s.files = ["HOW_TO_BUILD.txt", "Manifest", "README.rdoc", "Rakefile", "features/manage_accounts.feature", "features/manage_assets.feature", "features/manage_categories.feature", "features/manage_flags.feature", "features/manage_group_assets.feature", "features/manage_groups.feature", "features/manage_metadata.feature", "features/manage_metrics.feature", "features/manage_sites.feature", "features/manage_tags.feature", "features/mange_rate_plan.feature", "features/step_definitions/manage_accounts_steps.rb", "features/step_definitions/manage_assets_steps.rb", "features/step_definitions/manage_categories_steps.rb", "features/step_definitions/manage_flags_steps.rb", "features/step_definitions/manage_group_assets_steps.rb", "features/step_definitions/manage_groups_steps.rb", "features/step_definitions/manage_metadata_steps.rb", "features/step_definitions/manage_metrics_steps.rb", "features/step_definitions/manage_sites_steps.rb", "features/step_definitions/manage_tags_steps.rb", "features/step_definitions/mange_rate_plan_steps.rb", "features/step_definitions/utility_steps.rb", "features/step_definitions/web_steps.rb", "features/support/document_steps.rb", "features/support/env.rb", "features/support/netrecorder.rb", "features/support/paths.rb", "lib/sorenson/services.rb", "lib/sorenson/services/account.rb", "lib/sorenson/services/array.rb", "lib/sorenson/services/asset.rb", "lib/sorenson/services/base.rb", "lib/sorenson/services/category.rb", "lib/sorenson/services/core_ext.rb", "lib/sorenson/services/core_ext/attribute_accessors.rb", "lib/sorenson/services/core_ext/hash.rb", "lib/sorenson/services/core_ext/object.rb", "lib/sorenson/services/event.rb", "lib/sorenson/services/flag.rb", "lib/sorenson/services/group.rb", "lib/sorenson/services/metric.rb", "lib/sorenson/services/rate_plan.rb", "lib/sorenson/services/site.rb", "lib/sorenson/services/tag.rb", "360_services.gemspec"]
14
- s.homepage = %q{http://github.com/sorensonmedia/360_services}
12
+ s.extra_rdoc_files = ["README.rdoc", "lib/sorenson/services.rb", "lib/sorenson/services/account.rb", "lib/sorenson/services/array.rb", "lib/sorenson/services/asset.rb", "lib/sorenson/services/base.rb", "lib/sorenson/services/category.rb", "lib/sorenson/services/core_ext.rb", "lib/sorenson/services/core_ext/attribute_accessors.rb", "lib/sorenson/services/core_ext/hash.rb", "lib/sorenson/services/core_ext/object.rb", "lib/sorenson/services/event.rb", "lib/sorenson/services/flag.rb", "lib/sorenson/services/group.rb", "lib/sorenson/services/metric.rb", "lib/sorenson/services/preset.rb", "lib/sorenson/services/rate_plan.rb", "lib/sorenson/services/site.rb", "lib/sorenson/services/subaccount.rb", "lib/sorenson/services/tag.rb"]
13
+ s.files = ["HOW_TO_BUILD.txt", "Manifest", "README.rdoc", "Rakefile", "features/manage_accounts.feature", "features/manage_assets.feature", "features/manage_categories.feature", "features/manage_flags.feature", "features/manage_group_assets.feature", "features/manage_groups.feature", "features/manage_metadata.feature", "features/manage_metrics.feature", "features/manage_sites.feature", "features/manage_tags.feature", "features/mange_rate_plan.feature", "features/step_definitions/manage_accounts_steps.rb", "features/step_definitions/manage_assets_steps.rb", "features/step_definitions/manage_categories_steps.rb", "features/step_definitions/manage_flags_steps.rb", "features/step_definitions/manage_group_assets_steps.rb", "features/step_definitions/manage_groups_steps.rb", "features/step_definitions/manage_metadata_steps.rb", "features/step_definitions/manage_metrics_steps.rb", "features/step_definitions/manage_sites_steps.rb", "features/step_definitions/manage_tags_steps.rb", "features/step_definitions/mange_rate_plan_steps.rb", "features/step_definitions/utility_steps.rb", "features/step_definitions/web_steps.rb", "features/support/document_steps.rb", "features/support/env.rb", "features/support/netrecorder.rb", "features/support/paths.rb", "lib/sorenson/services.rb", "lib/sorenson/services/account.rb", "lib/sorenson/services/array.rb", "lib/sorenson/services/asset.rb", "lib/sorenson/services/base.rb", "lib/sorenson/services/category.rb", "lib/sorenson/services/core_ext.rb", "lib/sorenson/services/core_ext/attribute_accessors.rb", "lib/sorenson/services/core_ext/hash.rb", "lib/sorenson/services/core_ext/object.rb", "lib/sorenson/services/event.rb", "lib/sorenson/services/flag.rb", "lib/sorenson/services/group.rb", "lib/sorenson/services/metric.rb", "lib/sorenson/services/preset.rb", "lib/sorenson/services/rate_plan.rb", "lib/sorenson/services/site.rb", "lib/sorenson/services/subaccount.rb", "lib/sorenson/services/tag.rb", "360_services.gemspec"]
14
+ s.homepage = %q{http://github.com/sorenson/360_services}
15
15
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "360_services", "--main", "README.rdoc"]
16
16
  s.require_paths = ["lib"]
17
17
  s.rubyforge_project = %q{360_services}
data/Manifest CHANGED
@@ -44,6 +44,8 @@ lib/sorenson/services/event.rb
44
44
  lib/sorenson/services/flag.rb
45
45
  lib/sorenson/services/group.rb
46
46
  lib/sorenson/services/metric.rb
47
+ lib/sorenson/services/preset.rb
47
48
  lib/sorenson/services/rate_plan.rb
48
49
  lib/sorenson/services/site.rb
50
+ lib/sorenson/services/subaccount.rb
49
51
  lib/sorenson/services/tag.rb
data/Rakefile CHANGED
@@ -3,9 +3,9 @@ require 'cucumber'
3
3
  require 'cucumber/rake/task'
4
4
  require 'echoe'
5
5
 
6
- Echoe.new('360_services', '0.0.4') do |p|
6
+ Echoe.new('360_services', '0.0.5') do |p|
7
7
  p.description = "Ruby bindings for Sorenson 360"
8
- p.url = "http://github.com/sorensonmedia/360_services"
8
+ p.url = "http://github.com/sorenson/360_services"
9
9
  p.author = "Sorenson Media"
10
10
  p.email = "video@sorensonmedia.com"
11
11
  p.ignore_pattern = ["tmp/*", "script/*"]
@@ -27,4 +27,4 @@ namespace :cucumber do
27
27
  end
28
28
 
29
29
  task :default => :cucumber
30
- task :cucumber => 'cucumber:ok'
30
+ task :cucumber => 'cucumber:ok'
@@ -2,11 +2,12 @@ module Sorenson
2
2
  module Services
3
3
  class Account < Base
4
4
  attr_accessor :rate_plan, :username, :status, :customer_id, :id, :rate_plan_expiration_date, :date_last_modified,
5
- :last_login_time, :date_retrieved, :total_asset_count, :token
5
+ :last_login_time, :date_retrieved, :total_asset_count, :token, :subaccount_id
6
6
  cattr_accessor :account_token, :account_id
7
7
 
8
8
  def self.login(username, password)
9
- account = Account.new(JSON.parse(login_no_resource(username, password)))
9
+ data = JSON.parse(login_no_resource(username, password))
10
+ account = Account.new(data)
10
11
  self.account_token = account.token
11
12
  self.account_id = account.id
12
13
  return account if account.token
@@ -33,11 +34,20 @@ module Sorenson
33
34
  Base.post_to("/accounts/#{account_id}/empty_trash")['status']
34
35
  end
35
36
 
37
+ def get_subaccounts
38
+ get_from("/subaccounts")
39
+ end
40
+
41
+ def create_subaccount(username, email, password)
42
+ Base.post_to("/subaccounts", :subaccount => {:username => username, :email => email, :password => password})
43
+ end
44
+
36
45
  def initialize(data)
37
46
  self.username = data['username']
38
47
  self.status = data['status']
39
48
  self.customer_id = data['id']
40
49
  self.id = data['id']
50
+ self.subaccount_id = data['subaccountId']
41
51
  self.rate_plan_expiration_date = data['rate_plan_expiration_date']
42
52
  self.date_last_modified = data['date_last_modified']
43
53
  self.last_login_time = data['last_login_time']
@@ -0,0 +1,21 @@
1
+ # Sorenson Namespace
2
+ module Sorenson
3
+ # Sorenson Services Namespace
4
+ module Services
5
+ # Allows you to access the resources associated with a sorenson services asset. An asset currently refers to video content.
6
+ class Preset < Base
7
+ def self.all
8
+ get_from('/presets')
9
+ end
10
+
11
+ def self.find_by_name(name)
12
+ response = get_from("/presets/#{URI.encode(name)}")
13
+ if response.has_key?(:errors)
14
+ nil
15
+ else
16
+ response['url']
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,32 @@
1
+ module Sorenson
2
+ module Services
3
+ class Subaccount < Base
4
+
5
+ # Attributes
6
+ attr_accessor :account, :id, :username, :status, :accountId, :email, :dateRetrieved
7
+
8
+ # Class Methods
9
+
10
+ # Instance Methods
11
+
12
+ def initialize(account, data)
13
+ self.account = account
14
+ self.username = data['username']
15
+ self.id = data['id']
16
+ self.status = data['status']
17
+ self.accountId = data['accountId']
18
+ self.email = data['email']
19
+ self.dateRetrieved = data['dateRetrieved']
20
+ end
21
+
22
+ def activate!
23
+ Base.put_to("/subaccounts/#{id}/activate")
24
+ end
25
+
26
+ def deactivate!
27
+ Base.put_to("/subaccounts/#{id}/deactivate")
28
+ end
29
+
30
+ end
31
+ end
32
+ end
@@ -15,4 +15,6 @@ require(File.join(File.dirname(__FILE__), 'services', 'account'))
15
15
  require(File.join(File.dirname(__FILE__), 'services', 'asset'))
16
16
  require(File.join(File.dirname(__FILE__), 'services', 'array'))
17
17
  require(File.join(File.dirname(__FILE__), 'services', 'site'))
18
- require(File.join(File.dirname(__FILE__), 'services', 'core_ext', 'object'))
18
+ require(File.join(File.dirname(__FILE__), 'services', 'subaccount'))
19
+ require(File.join(File.dirname(__FILE__), 'services', 'core_ext', 'object'))
20
+ require(File.join(File.dirname(__FILE__), 'services', 'preset'))
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: 360_services
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sorenson Media
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-02-26 00:00:00 -07:00
12
+ date: 2010-03-09 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -74,8 +74,10 @@ extra_rdoc_files:
74
74
  - lib/sorenson/services/flag.rb
75
75
  - lib/sorenson/services/group.rb
76
76
  - lib/sorenson/services/metric.rb
77
+ - lib/sorenson/services/preset.rb
77
78
  - lib/sorenson/services/rate_plan.rb
78
79
  - lib/sorenson/services/site.rb
80
+ - lib/sorenson/services/subaccount.rb
79
81
  - lib/sorenson/services/tag.rb
80
82
  files:
81
83
  - HOW_TO_BUILD.txt
@@ -124,12 +126,14 @@ files:
124
126
  - lib/sorenson/services/flag.rb
125
127
  - lib/sorenson/services/group.rb
126
128
  - lib/sorenson/services/metric.rb
129
+ - lib/sorenson/services/preset.rb
127
130
  - lib/sorenson/services/rate_plan.rb
128
131
  - lib/sorenson/services/site.rb
132
+ - lib/sorenson/services/subaccount.rb
129
133
  - lib/sorenson/services/tag.rb
130
134
  - 360_services.gemspec
131
135
  has_rdoc: true
132
- homepage: http://github.com/sorensonmedia/360_services
136
+ homepage: http://github.com/sorenson/360_services
133
137
  licenses: []
134
138
 
135
139
  post_install_message: