adobe_connect 0.0.2 → 0.0.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.
- data/README.md +3 -1
- data/Rakefile +2 -0
- data/adobe_connect.gemspec +4 -2
- data/lib/adobe_connect.rb +0 -1
- data/lib/adobe_connect/meeting_folder.rb +3 -3
- data/lib/adobe_connect/service.rb +1 -1
- data/lib/adobe_connect/user.rb +16 -16
- data/lib/adobe_connect/version.rb +1 -1
- data/test/fixtures/folder_contents.xml +10 -10
- data/test/fixtures/folder_success.xml +1 -1
- data/test/lib/adobe_connect/meeting_folder_test.rb +6 -6
- data/test/lib/adobe_connect/param_formatter_test.rb +1 -1
- data/test/lib/adobe_connect/response_test.rb +1 -1
- data/test/lib/adobe_connect/service_test.rb +7 -7
- data/test/lib/adobe_connect/user_test.rb +21 -21
- data/travis.yml +4 -0
- metadata +35 -3
- data/lib/adobe_connect/session.rb +0 -19
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# AdobeConnect
|
2
2
|
|
3
|
+
[](http://travis-ci.org/zachpendleton/adobe_connect)
|
4
|
+
|
3
5
|
This gem provides a wrapper for interacting with the Adobe Connect API that
|
4
6
|
(hopefully) sucks less than interacting with the Adobe Connect API by itself.
|
5
7
|
|
@@ -7,7 +9,7 @@ This gem provides a wrapper for interacting with the Adobe Connect API that
|
|
7
9
|
|
8
10
|
Add this line to your application's Gemfile:
|
9
11
|
|
10
|
-
gem 'adobe_connect', '0.0.
|
12
|
+
gem 'adobe_connect', '0.0.3'
|
11
13
|
|
12
14
|
And then run:
|
13
15
|
|
data/Rakefile
CHANGED
data/adobe_connect.gemspec
CHANGED
@@ -22,6 +22,8 @@ Gem::Specification.new do |gem|
|
|
22
22
|
gem.add_dependency 'pry', '>= 0.9.11.4'
|
23
23
|
gem.add_dependency 'rake', '~> 10.0.3'
|
24
24
|
|
25
|
-
gem.add_development_dependency 'minitest',
|
26
|
-
gem.add_development_dependency 'mocha',
|
25
|
+
gem.add_development_dependency 'minitest', '~> 4.6.0'
|
26
|
+
gem.add_development_dependency 'mocha', '~> 0.13.2'
|
27
|
+
gem.add_development_dependency 'yard', '~> 0.8.4.1'
|
28
|
+
gem.add_development_dependency 'yard-tomdoc', '~> 0.6.0'
|
27
29
|
end
|
data/lib/adobe_connect.rb
CHANGED
@@ -15,9 +15,9 @@ module AdobeConnect
|
|
15
15
|
|
16
16
|
def self.find(name, service = AdobeConnect::Service.new)
|
17
17
|
response = service.sco_search_by_field(
|
18
|
-
query
|
19
|
-
filter_type
|
20
|
-
field
|
18
|
+
:query => name,
|
19
|
+
:filter_type => 'folder',
|
20
|
+
:field => 'name')
|
21
21
|
|
22
22
|
MeetingFolder.new(response.at_xpath('//sco').attr('sco-id'),
|
23
23
|
response.at_xpath('//name').text,
|
@@ -10,7 +10,7 @@ module AdobeConnect
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def log_in
|
13
|
-
response = request('login', { login
|
13
|
+
response = request('login', { :login => username, :password => password }, false)
|
14
14
|
if response.at_xpath('//status').attr('code') == 'ok'
|
15
15
|
@session = response.fetch('set-cookie').match(/(?<=BREEZESESSION=)[^;]+/)[0]
|
16
16
|
@authenticated = true
|
data/lib/adobe_connect/user.rb
CHANGED
@@ -1,26 +1,26 @@
|
|
1
1
|
module AdobeConnect
|
2
2
|
class User
|
3
|
-
attr_reader :id, :
|
3
|
+
attr_reader :id, :app_user, :service, :errors
|
4
4
|
|
5
|
-
def initialize(
|
6
|
-
@
|
7
|
-
@service
|
8
|
-
@errors
|
5
|
+
def initialize(app_user, service = Service.new)
|
6
|
+
@app_user = app_user
|
7
|
+
@service = service
|
8
|
+
@errors = []
|
9
9
|
end
|
10
10
|
|
11
11
|
def username
|
12
|
-
|
12
|
+
app_user.email
|
13
13
|
end
|
14
14
|
|
15
15
|
def password
|
16
|
-
Digest::MD5.hexdigest(@
|
16
|
+
Digest::MD5.hexdigest(@app_user.uuid)[0..9]
|
17
17
|
end
|
18
18
|
|
19
19
|
def save
|
20
|
-
response = service.principal_update(first_name
|
21
|
-
last_name
|
22
|
-
password
|
23
|
-
email
|
20
|
+
response = service.principal_update(:first_name => app_user.first_name,
|
21
|
+
:last_name => app_user.last_name, :login => app_user.email,
|
22
|
+
:password => password, :type => 'user', :has_children => 0,
|
23
|
+
:email => app_user.email)
|
24
24
|
|
25
25
|
if response.at_xpath('//status').attr('code') == 'ok'
|
26
26
|
true
|
@@ -30,16 +30,16 @@ module AdobeConnect
|
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
|
-
def self.create(
|
34
|
-
user = AdobeConnect::User.new(
|
33
|
+
def self.create(app_user)
|
34
|
+
user = AdobeConnect::User.new(app_user)
|
35
35
|
user.save
|
36
36
|
|
37
37
|
user
|
38
38
|
end
|
39
39
|
|
40
|
-
def self.find(
|
41
|
-
user = AdobeConnect::User.new(
|
42
|
-
response = user.service.principal_list(filter_login
|
40
|
+
def self.find(app_user)
|
41
|
+
user = AdobeConnect::User.new(app_user)
|
42
|
+
response = user.service.principal_list(:filter_login => user.username)
|
43
43
|
|
44
44
|
if principal = response.at_xpath('//principal')
|
45
45
|
user.instance_variable_set(:@id, principal.attr('principal-id'))
|
@@ -4,70 +4,70 @@
|
|
4
4
|
<scos>
|
5
5
|
<sco sco-id="26013" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
6
6
|
<name>BIG-001: Course Conference [12]</name>
|
7
|
-
<url-path>/
|
7
|
+
<url-path>/my-meeting-12/</url-path>
|
8
8
|
<date-begin>2013-01-18T10:37:21.000-07:00</date-begin>
|
9
9
|
<date-created>2013-01-18T10:37:29.133-07:00</date-created>
|
10
10
|
<date-modified>2013-01-18T10:46:37.187-07:00</date-modified>
|
11
11
|
</sco>
|
12
12
|
<sco sco-id="26102" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
13
13
|
<name>BIOL 1550 E01: Course Conference [45]</name>
|
14
|
-
<url-path>/
|
14
|
+
<url-path>/my-meeting-45/</url-path>
|
15
15
|
<date-begin>2013-01-25T14:15:19.000-07:00</date-begin>
|
16
16
|
<date-created>2013-01-25T14:15:26.890-07:00</date-created>
|
17
17
|
<date-modified>2013-01-25T14:28:36.350-07:00</date-modified>
|
18
18
|
</sco>
|
19
19
|
<sco sco-id="25917" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
20
20
|
<name>Discussion Copy 1: Adobe connect conference [18847]</name>
|
21
|
-
<url-path>/
|
21
|
+
<url-path>/my-meeting-18847/</url-path>
|
22
22
|
<date-begin>2013-01-15T12:22:03.000-07:00</date-begin>
|
23
23
|
<date-created>2013-01-15T12:22:06.977-07:00</date-created>
|
24
24
|
<date-modified>2013-01-15T12:31:13.053-07:00</date-modified>
|
25
25
|
</sco>
|
26
26
|
<sco sco-id="26109" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
27
27
|
<name>ENGL 2600 E01: Course Conference [46]</name>
|
28
|
-
<url-path>/
|
28
|
+
<url-path>/my-meeting-46/</url-path>
|
29
29
|
<date-begin>2013-01-25T14:15:39.000-07:00</date-begin>
|
30
30
|
<date-created>2013-01-25T14:15:47.287-07:00</date-created>
|
31
31
|
<date-modified>2013-01-25T14:27:59.050-07:00</date-modified>
|
32
32
|
</sco>
|
33
33
|
<sco sco-id="26156" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
34
34
|
<name>ENGL-2100: Course Conference [27]</name>
|
35
|
-
<url-path>/
|
35
|
+
<url-path>/my-meeting-27/</url-path>
|
36
36
|
<date-begin>2013-01-31T15:04:53.000-07:00</date-begin>
|
37
37
|
<date-created>2013-01-31T15:05:00.680-07:00</date-created>
|
38
38
|
<date-modified>2013-01-31T15:14:11.273-07:00</date-modified>
|
39
39
|
</sco>
|
40
40
|
<sco sco-id="25924" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
41
41
|
<name>IE9 1/26: Course Conference [18848]</name>
|
42
|
-
<url-path>/
|
42
|
+
<url-path>/my-meeting-18848/</url-path>
|
43
43
|
<date-begin>2013-01-15T12:52:08.000-07:00</date-begin>
|
44
44
|
<date-created>2013-01-15T12:52:12.113-07:00</date-created>
|
45
45
|
<date-modified>2013-01-15T12:52:12.113-07:00</date-modified>
|
46
46
|
</sco>
|
47
47
|
<sco sco-id="25930" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
48
48
|
<name>IE9 1/26: Group Conference [18849]</name>
|
49
|
-
<url-path>/
|
49
|
+
<url-path>/my-meeting-18849/</url-path>
|
50
50
|
<date-begin>2013-01-15T14:04:35.000-07:00</date-begin>
|
51
51
|
<date-created>2013-01-15T14:04:39.303-07:00</date-created>
|
52
52
|
<date-modified>2013-01-15T14:16:56.483-07:00</date-modified>
|
53
53
|
</sco>
|
54
54
|
<sco sco-id="26096" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
55
55
|
<name>LTIDemo: Course Conference [44]</name>
|
56
|
-
<url-path>/
|
56
|
+
<url-path>/my-meeting-44/</url-path>
|
57
57
|
<date-begin>2013-01-25T14:15:03.000-07:00</date-begin>
|
58
58
|
<date-created>2013-01-25T14:15:11.373-07:00</date-created>
|
59
59
|
<date-modified>2013-01-25T14:26:22.120-07:00</date-modified>
|
60
60
|
</sco>
|
61
61
|
<sco sco-id="26122" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
62
62
|
<name>LTIDemo: Course Conference [47]</name>
|
63
|
-
<url-path>/
|
63
|
+
<url-path>/my-meeting-47/</url-path>
|
64
64
|
<date-begin>2013-01-25T14:17:59.000-07:00</date-begin>
|
65
65
|
<date-created>2013-01-25T14:18:06.710-07:00</date-created>
|
66
66
|
<date-modified>2013-01-25T14:29:11.300-07:00</date-modified>
|
67
67
|
</sco>
|
68
68
|
<sco sco-id="26087" source-sco-id="" folder-id="25915" type="meeting" icon="meeting" display-seq="0" duration="" is-folder="0">
|
69
69
|
<name>STC: Course Conference [19114]</name>
|
70
|
-
<url-path>/
|
70
|
+
<url-path>/my-meeting-19114/</url-path>
|
71
71
|
<date-begin>2013-01-25T10:16:36.000-07:00</date-begin>
|
72
72
|
<date-created>2013-01-25T10:16:44.260-07:00</date-created>
|
73
73
|
<date-modified>2013-01-25T10:38:59.190-07:00</date-modified>
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<status code="ok"/>
|
4
4
|
<sco-search-by-field-info>
|
5
5
|
<sco sco-id="25915" account-id="7" folder-id="11004" type="folder" icon="folder" max-retries="" lang="en" display-seq="0" source-sco-id="" version="0" parent-type="-2" tree-type="6" grand-parent="7">
|
6
|
-
<name>
|
6
|
+
<name>my_meetings</name>
|
7
7
|
<url-path>/meeting-path/</url-path>
|
8
8
|
<date-created>2013-01-15T12:21:42.243-07:00</date-created>
|
9
9
|
<date-modified>2013-01-15T12:21:42.243-07:00</date-modified>
|
@@ -32,26 +32,26 @@ class AdobeConnectMeetingFolderTest < MiniTest::Unit::TestCase
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def test_find_returns_a_new_folder
|
35
|
-
response = mock(status
|
35
|
+
response = mock(:status => 200)
|
36
36
|
response.expects(:body).returns(FOLDER_SUCCESS)
|
37
37
|
ac_response = AdobeConnect::Response.new(response)
|
38
38
|
|
39
39
|
AdobeConnect::Service.any_instance.
|
40
40
|
expects(:request).
|
41
|
-
with('sco-search-by-field', query
|
42
|
-
filter_type
|
41
|
+
with('sco-search-by-field', :query => 'my_meetings',
|
42
|
+
:filter_type => 'folder', :field => 'name').
|
43
43
|
returns(ac_response)
|
44
44
|
|
45
|
-
folder = AdobeConnect::MeetingFolder.find('
|
45
|
+
folder = AdobeConnect::MeetingFolder.find('my_meetings')
|
46
46
|
|
47
47
|
assert_instance_of AdobeConnect::MeetingFolder, folder
|
48
|
-
assert_equal folder.name, '
|
48
|
+
assert_equal folder.name, 'my_meetings'
|
49
49
|
assert_equal folder.id, '25915'
|
50
50
|
assert_equal folder.url, '/meeting-path/'
|
51
51
|
end
|
52
52
|
|
53
53
|
def test_contents_returns_folder_contents
|
54
|
-
response = mock(status
|
54
|
+
response = mock(:status => 200)
|
55
55
|
response.expects(:body).returns(FOLDER_CONTENTS)
|
56
56
|
ac_response = AdobeConnect::Response.new(response)
|
57
57
|
@folder.service.expects(:sco_contents).returns(ac_response)
|
@@ -2,7 +2,7 @@ require File.expand_path('../../test_helper.rb', File.dirname(__FILE__))
|
|
2
2
|
|
3
3
|
class AdobeConnectParamFormatterTest < MiniTest::Unit::TestCase
|
4
4
|
def setup
|
5
|
-
params = { a
|
5
|
+
params = { :a => 1, :b => 'param value', 'dashed_value' => 3 }
|
6
6
|
@formatter = AdobeConnect::ParamFormatter.new(params)
|
7
7
|
@query_string = @formatter.format
|
8
8
|
end
|
@@ -11,7 +11,7 @@ class AdobeConnectResponseTest < MiniTest::Unit::TestCase
|
|
11
11
|
END
|
12
12
|
|
13
13
|
def setup
|
14
|
-
response = stub(status
|
14
|
+
response = stub(:status => 200, :headers => TEST_HEADERS, :body => TEST_BODY)
|
15
15
|
@response = AdobeConnect::Response.new(response)
|
16
16
|
end
|
17
17
|
|
@@ -5,8 +5,8 @@ class AdobeConnectServiceTest < MiniTest::Unit::TestCase
|
|
5
5
|
LOGIN_FAIL = File.read('test/fixtures/log_in_fail.xml')
|
6
6
|
|
7
7
|
def setup
|
8
|
-
@service = AdobeConnect::Service.new(username
|
9
|
-
domain
|
8
|
+
@service = AdobeConnect::Service.new(:username => 'name', :password => 'password',
|
9
|
+
:domain => 'http://example.com')
|
10
10
|
end
|
11
11
|
|
12
12
|
def test_initialize_takes_a_config_hash
|
@@ -23,7 +23,7 @@ class AdobeConnectServiceTest < MiniTest::Unit::TestCase
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def test_log_in_authenticates
|
26
|
-
response = mock(status
|
26
|
+
response = mock(:status => 200)
|
27
27
|
response.expects(:fetch).returns('BREEZESESSION=12345')
|
28
28
|
response.expects(:body).returns(LOGIN_SUCCESS)
|
29
29
|
ac_response = AdobeConnect::Response.new(response)
|
@@ -34,7 +34,7 @@ class AdobeConnectServiceTest < MiniTest::Unit::TestCase
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def test_log_in_creates_a_session
|
37
|
-
response = mock(status
|
37
|
+
response = mock(:status => 200)
|
38
38
|
response.expects(:fetch).with('set-cookie').returns('BREEZESESSION=12345;HttpOnly;path=/')
|
39
39
|
response.expects(:body).returns(LOGIN_SUCCESS)
|
40
40
|
ac_response = AdobeConnect::Response.new(response)
|
@@ -47,7 +47,7 @@ class AdobeConnectServiceTest < MiniTest::Unit::TestCase
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def test_log_in_returns_false_on_failure
|
50
|
-
response = mock(status
|
50
|
+
response = mock(:status => 200)
|
51
51
|
response.expects(:body).returns(LOGIN_FAIL)
|
52
52
|
ac_response = AdobeConnect::Response.new(response)
|
53
53
|
@service.client.stubs(:get).returns(ac_response)
|
@@ -56,7 +56,7 @@ class AdobeConnectServiceTest < MiniTest::Unit::TestCase
|
|
56
56
|
end
|
57
57
|
|
58
58
|
def test_unknown_methods_are_proxied_to_the_connect_service
|
59
|
-
@service.expects(:request).with('method-name', a
|
60
|
-
@service.method_name(a
|
59
|
+
@service.expects(:request).with('method-name', :a => 1)
|
60
|
+
@service.method_name(:a => 1)
|
61
61
|
end
|
62
62
|
end
|
@@ -14,17 +14,17 @@ class AdobeConnectUserTest < MiniTest::Unit::TestCase
|
|
14
14
|
FIND_ERROR = File.read('test/fixtures/user_find_error.xml')
|
15
15
|
|
16
16
|
def setup
|
17
|
-
@
|
18
|
-
email
|
19
|
-
@connect_user = AdobeConnect::User.new(@
|
17
|
+
@app_user = stub(:first_name => 'Don', :last_name => 'Draper',
|
18
|
+
:email => 'test@example.com', :uuid => '12345')
|
19
|
+
@connect_user = AdobeConnect::User.new(@app_user)
|
20
20
|
end
|
21
21
|
|
22
22
|
def test_initialize_should_take_a_user
|
23
|
-
assert_equal @connect_user.
|
23
|
+
assert_equal @connect_user.app_user, @app_user
|
24
24
|
end
|
25
25
|
|
26
|
-
def
|
27
|
-
assert_equal @connect_user.username, @
|
26
|
+
def test_username_should_be_app_user_email
|
27
|
+
assert_equal @connect_user.username, @app_user.email
|
28
28
|
end
|
29
29
|
|
30
30
|
def test_password_should_create_a_unique_password
|
@@ -36,22 +36,22 @@ class AdobeConnectUserTest < MiniTest::Unit::TestCase
|
|
36
36
|
end
|
37
37
|
|
38
38
|
def test_save_persists_user_to_connect_server
|
39
|
-
response = mock(status
|
39
|
+
response = mock(:status => 200)
|
40
40
|
response.expects(:body).returns(SAVE_SUCCESS)
|
41
41
|
ac_response = AdobeConnect::Response.new(response)
|
42
42
|
|
43
43
|
@connect_user.service.expects(:principal_update).
|
44
|
-
with(first_name
|
45
|
-
last_name
|
46
|
-
password
|
47
|
-
email
|
44
|
+
with(:first_name => @app_user.first_name,
|
45
|
+
:last_name => @app_user.last_name, :login => @connect_user.username,
|
46
|
+
:password => @connect_user.password, :type => 'user', :has_children => 0,
|
47
|
+
:email => @app_user.email).
|
48
48
|
returns(ac_response)
|
49
49
|
|
50
50
|
assert @connect_user.save
|
51
51
|
end
|
52
52
|
|
53
53
|
def test_save_returns_false_on_failure
|
54
|
-
response = mock(status
|
54
|
+
response = mock(:status => 200)
|
55
55
|
response.expects(:body).returns(SAVE_ERROR)
|
56
56
|
ac_response = AdobeConnect::Response.new(response)
|
57
57
|
|
@@ -60,7 +60,7 @@ class AdobeConnectUserTest < MiniTest::Unit::TestCase
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def test_save_stores_errors_on_failure
|
63
|
-
response = mock(status
|
63
|
+
response = mock(:status => 200)
|
64
64
|
response.expects(:body).returns(SAVE_ERROR)
|
65
65
|
ac_response = AdobeConnect::Response.new(response)
|
66
66
|
|
@@ -72,32 +72,32 @@ class AdobeConnectUserTest < MiniTest::Unit::TestCase
|
|
72
72
|
def test_create_should_return_a_new_user
|
73
73
|
AdobeConnect::User.any_instance.expects(:save).returns(true)
|
74
74
|
|
75
|
-
connect_user = AdobeConnect::User.create(@
|
75
|
+
connect_user = AdobeConnect::User.create(@app_user)
|
76
76
|
assert_instance_of AdobeConnect::User, connect_user
|
77
77
|
end
|
78
78
|
|
79
79
|
def test_find_should_return_an_existing_user
|
80
|
-
response = mock(status
|
80
|
+
response = mock(:status => 200)
|
81
81
|
response.expects(:body).returns(FIND_SUCCESS)
|
82
82
|
ac_response = AdobeConnect::Response.new(response)
|
83
83
|
AdobeConnect::Service.any_instance.expects(:principal_list).
|
84
|
-
with(filter_login
|
84
|
+
with(:filter_login => 'test@example.com').
|
85
85
|
returns(ac_response)
|
86
86
|
|
87
|
-
|
88
|
-
connect_user = AdobeConnect::User.find(
|
87
|
+
app_user = stub(:email => 'test@example.com')
|
88
|
+
connect_user = AdobeConnect::User.find(app_user)
|
89
89
|
assert_instance_of AdobeConnect::User, connect_user
|
90
90
|
end
|
91
91
|
|
92
92
|
def test_find_should_set_user_attributes
|
93
|
-
response = mock(status
|
93
|
+
response = mock(:status => 200)
|
94
94
|
response.expects(:body).returns(FIND_ERROR)
|
95
95
|
ac_response = AdobeConnect::Response.new(response)
|
96
96
|
AdobeConnect::Service.any_instance.expects(:principal_list).
|
97
97
|
returns(ac_response)
|
98
98
|
|
99
|
-
|
100
|
-
connect_user = AdobeConnect::User.find(
|
99
|
+
app_user = stub(:email => 'notfound@example.com')
|
100
|
+
connect_user = AdobeConnect::User.find(app_user)
|
101
101
|
assert_nil connect_user
|
102
102
|
end
|
103
103
|
end
|
data/travis.yml
ADDED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adobe_connect
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-02-
|
12
|
+
date: 2013-02-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
@@ -107,6 +107,38 @@ dependencies:
|
|
107
107
|
- - ~>
|
108
108
|
- !ruby/object:Gem::Version
|
109
109
|
version: 0.13.2
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: yard
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
114
|
+
requirements:
|
115
|
+
- - ~>
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.8.4.1
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ~>
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: 0.8.4.1
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: yard-tomdoc
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ~>
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 0.6.0
|
134
|
+
type: :development
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ~>
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 0.6.0
|
110
142
|
description: An API wrapper for interacting with Adobe Connect services.
|
111
143
|
email:
|
112
144
|
- zachpendleton@gmail.com
|
@@ -128,7 +160,6 @@ files:
|
|
128
160
|
- lib/adobe_connect/param_formatter.rb
|
129
161
|
- lib/adobe_connect/response.rb
|
130
162
|
- lib/adobe_connect/service.rb
|
131
|
-
- lib/adobe_connect/session.rb
|
132
163
|
- lib/adobe_connect/user.rb
|
133
164
|
- lib/adobe_connect/version.rb
|
134
165
|
- test/fixtures/folder_contents.xml
|
@@ -146,6 +177,7 @@ files:
|
|
146
177
|
- test/lib/adobe_connect/service_test.rb
|
147
178
|
- test/lib/adobe_connect/user_test.rb
|
148
179
|
- test/test_helper.rb
|
180
|
+
- travis.yml
|
149
181
|
homepage: https://github.com/zachpendleton/adobe_connect
|
150
182
|
licenses: []
|
151
183
|
post_install_message:
|
@@ -1,19 +0,0 @@
|
|
1
|
-
module AdobeConnect
|
2
|
-
class Session
|
3
|
-
attr_reader :service, :user
|
4
|
-
|
5
|
-
def initialize(user, service = Service.new)
|
6
|
-
@user = user
|
7
|
-
@service = service
|
8
|
-
end
|
9
|
-
|
10
|
-
def key
|
11
|
-
unless key
|
12
|
-
service.log_in
|
13
|
-
@key = service.session
|
14
|
-
end
|
15
|
-
|
16
|
-
key
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|