marilyn-rpc 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 +39 -4
- data/examples/async/client.rb +0 -5
- data/examples/authentication/client.rb +18 -0
- data/examples/authentication/server.rb +30 -0
- data/lib/marilyn-rpc.rb +1 -1
- data/lib/marilyn-rpc/client.rb +21 -3
- data/lib/marilyn-rpc/error.rb +13 -0
- data/lib/marilyn-rpc/mails.rb +3 -3
- data/lib/marilyn-rpc/server.rb +6 -11
- data/lib/marilyn-rpc/service.rb +86 -11
- data/lib/marilyn-rpc/service_cache.rb +44 -23
- data/lib/marilyn-rpc/version.rb +1 -1
- data/spec/mails_spec.rb +2 -1
- data/spec/server_spec.rb +1 -1
- data/spec/service_cache_spec.rb +140 -0
- data/spec/service_spec.rb +56 -5
- data/spec/spec_helper.rb +5 -0
- metadata +10 -34
- data/doc/MarilynRPC.html +0 -108
- data/doc/MarilynRPC/CallRequestMail.html +0 -578
- data/doc/MarilynRPC/CallResponseMail.html +0 -418
- data/doc/MarilynRPC/Envelope.html +0 -705
- data/doc/MarilynRPC/ExceptionMail.html +0 -338
- data/doc/MarilynRPC/Gentleman.html +0 -658
- data/doc/MarilynRPC/MailFactory.html +0 -284
- data/doc/MarilynRPC/MailHelper.html +0 -489
- data/doc/MarilynRPC/NativeClient.html +0 -579
- data/doc/MarilynRPC/NativeClientProxy.html +0 -303
- data/doc/MarilynRPC/Server.html +0 -406
- data/doc/MarilynRPC/Service.html +0 -599
- data/doc/MarilynRPC/ServiceCache.html +0 -481
- data/doc/_index.html +0 -219
- data/doc/class_list.html +0 -36
- data/doc/css/common.css +0 -1
- data/doc/css/full_list.css +0 -53
- data/doc/css/style.css +0 -318
- data/doc/file.README.html +0 -154
- data/doc/file_list.html +0 -38
- data/doc/frames.html +0 -13
- data/doc/index.html +0 -154
- data/doc/js/app.js +0 -203
- data/doc/js/full_list.js +0 -149
- data/doc/js/jquery.js +0 -16
- data/doc/method_list.html +0 -467
- data/doc/top-level-namespace.html +0 -88
- data/spec/service_cache.rb +0 -45
data/lib/marilyn-rpc/version.rb
CHANGED
data/spec/mails_spec.rb
CHANGED
@@ -46,11 +46,12 @@ describe "MarilynRPC Mails" do
|
|
46
46
|
rescue Exception => ex
|
47
47
|
exception = ex
|
48
48
|
end
|
49
|
-
mail = MarilynRPC::ExceptionMail.new(exception)
|
49
|
+
mail = MarilynRPC::ExceptionMail.new(123, exception)
|
50
50
|
data = mail.encode
|
51
51
|
data.should include("TestError")
|
52
52
|
mail = MarilynRPC::ExceptionMail.new
|
53
53
|
mail.decode(data)
|
54
|
+
mail.tag.should == 123
|
54
55
|
mail.exception.message.should == "TestError"
|
55
56
|
mail.exception.backtrace.size.should > 1
|
56
57
|
end
|
data/spec/server_spec.rb
CHANGED
@@ -25,7 +25,7 @@ describe MarilynRPC::Server do
|
|
25
25
|
envelope.parse!(@server.data)
|
26
26
|
mail = MarilynRPC::ExceptionMail.new
|
27
27
|
mail.decode(envelope.content)
|
28
|
-
mail.exception.message.should == "The passed
|
28
|
+
mail.exception.message.should == "The passed envelope is broken!"
|
29
29
|
@server.receive_data(MarilynRPC::Envelope.new("Test2").encode)
|
30
30
|
@server.receive_data(MarilynRPC::Envelope.new("Test3").encode)
|
31
31
|
@server.unbind
|
@@ -0,0 +1,140 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
describe MarilynRPC::ServiceCache do
|
4
|
+
before(:each) do
|
5
|
+
class DeferObjectMock
|
6
|
+
attr_accessor :callback
|
7
|
+
|
8
|
+
def callback(&block)
|
9
|
+
@callback = block
|
10
|
+
end
|
11
|
+
|
12
|
+
def call(*args)
|
13
|
+
@callback.call(*args)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
class TestService < MarilynRPC::Service
|
18
|
+
attr_accessor :value
|
19
|
+
register "/test"
|
20
|
+
after_connect :init_value
|
21
|
+
after_disconnect :change_value
|
22
|
+
|
23
|
+
def init_value
|
24
|
+
@value = false
|
25
|
+
end
|
26
|
+
|
27
|
+
def sync_method(a, b)
|
28
|
+
a + b
|
29
|
+
end
|
30
|
+
|
31
|
+
def async_method(a, b)
|
32
|
+
calc = DeferObjectMock.new
|
33
|
+
MarilynRPC::Gentleman.new(calc) { |result| result }
|
34
|
+
end
|
35
|
+
|
36
|
+
def change_value
|
37
|
+
@value = true
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
@cache = MarilynRPC::ServiceCache.new
|
42
|
+
end
|
43
|
+
|
44
|
+
it "should be possible to make lookups and get the same instance" do
|
45
|
+
[@cache.lookup("/test")].should == [@cache.lookup("/test")]
|
46
|
+
end
|
47
|
+
|
48
|
+
it "should not pe possible to get a unknown service" do
|
49
|
+
lambda do
|
50
|
+
@cache.lookup(:xxx)
|
51
|
+
end.should raise_error(MarilynRPC::UnknownServiceError)
|
52
|
+
end
|
53
|
+
|
54
|
+
it "should be possible to issue the disconnect! event from the cache" do
|
55
|
+
expect do
|
56
|
+
@cache.disconnect!
|
57
|
+
end.to(change(@cache.lookup("/test"), :value).from(false).to(true))
|
58
|
+
end
|
59
|
+
|
60
|
+
it "should be possible to call a sync method" do
|
61
|
+
answer = @cache.call(envelope_call(1, "/test", :sync_method, 1, 2))
|
62
|
+
answer.should be_a(MarilynRPC::CallResponseMail)
|
63
|
+
answer.result.should == 3
|
64
|
+
end
|
65
|
+
|
66
|
+
it "should be possible to call an async method" do
|
67
|
+
answer = @cache.call(envelope_call(1, "/test", :async_method, 1, 2))
|
68
|
+
answer.should be_a(MarilynRPC::Gentleman)
|
69
|
+
answer.tag.should == 1
|
70
|
+
end
|
71
|
+
|
72
|
+
context "authentication" do
|
73
|
+
before(:each) do
|
74
|
+
MarilynRPC::Service.authenticate_with do |username, password|
|
75
|
+
username == "testuserid" && password == "secret"
|
76
|
+
end
|
77
|
+
|
78
|
+
class TestService < MarilynRPC::Service
|
79
|
+
register "/test"
|
80
|
+
authentication_required :secure
|
81
|
+
|
82
|
+
def normal
|
83
|
+
true
|
84
|
+
end
|
85
|
+
|
86
|
+
def username
|
87
|
+
session_username
|
88
|
+
end
|
89
|
+
|
90
|
+
def logged_in?
|
91
|
+
session_authenticated?
|
92
|
+
end
|
93
|
+
|
94
|
+
def secure
|
95
|
+
true
|
96
|
+
end
|
97
|
+
end
|
98
|
+
@cache = MarilynRPC::ServiceCache.new
|
99
|
+
end
|
100
|
+
|
101
|
+
it "should be possible to call the normal method" do
|
102
|
+
answer = @cache.call(envelope_call(1, "/test", :normal))
|
103
|
+
answer.result.should == true
|
104
|
+
end
|
105
|
+
|
106
|
+
it "should not be possible to call an secure method without authentication" do
|
107
|
+
answer = @cache.call(envelope_call(1, "/test", :secure))
|
108
|
+
answer.should be_a(MarilynRPC::ExceptionMail)
|
109
|
+
answer.exception.should be_a(MarilynRPC::PermissionDeniedError)
|
110
|
+
end
|
111
|
+
|
112
|
+
it "should be possible to call an secure method with authentication" do
|
113
|
+
@cache.call(envelope_call(1, MarilynRPC::Service::AUTHENTICATION_PATH,
|
114
|
+
:authenticate_plain, "testuserid", "secret"))
|
115
|
+
answer = @cache.call(envelope_call(1, "/test", :secure))
|
116
|
+
answer.result.should == true
|
117
|
+
end
|
118
|
+
|
119
|
+
it "should be possible to call the username from within the service without an authenticated user" do
|
120
|
+
answer = @cache.call(envelope_call(1, "/test", :username))
|
121
|
+
answer.result.should == nil
|
122
|
+
end
|
123
|
+
|
124
|
+
it "should be possible to call the username from within the service with an authenticated user" do
|
125
|
+
@cache.username = "test"
|
126
|
+
answer = @cache.call(envelope_call(1, "/test", :username))
|
127
|
+
answer.result.should == "test"
|
128
|
+
end
|
129
|
+
|
130
|
+
it "should be possible to call the authentication from within the service" do
|
131
|
+
answer = @cache.call(envelope_call(1, "/test", :logged_in?))
|
132
|
+
answer.result.should == false
|
133
|
+
|
134
|
+
# set the username
|
135
|
+
@cache.username = "test"
|
136
|
+
answer = @cache.call(envelope_call(1, "/test", :logged_in?))
|
137
|
+
answer.result.should == true
|
138
|
+
end
|
139
|
+
end
|
140
|
+
end
|
data/spec/service_spec.rb
CHANGED
@@ -12,10 +12,61 @@ describe MarilynRPC::Service do
|
|
12
12
|
end
|
13
13
|
|
14
14
|
it "should have to registered services" do
|
15
|
-
MarilynRPC::Service.
|
16
|
-
MarilynRPC::Service.
|
17
|
-
|
18
|
-
|
19
|
-
|
15
|
+
MarilynRPC::Service.__registry__.size.should >= 2
|
16
|
+
MarilynRPC::Service.__registry__["/test/extended"].should == ExtendedTestService
|
17
|
+
MarilynRPC::Service.__registry__["/test"].should == TestService
|
18
|
+
end
|
19
|
+
|
20
|
+
context "callbacks" do
|
21
|
+
before(:each) do
|
22
|
+
class ExtendedTestService < MarilynRPC::Service
|
23
|
+
attr_reader :value
|
24
|
+
after_connect :connect
|
25
|
+
after_disconnect :disconnect
|
26
|
+
|
27
|
+
def connect
|
28
|
+
@value = :connect
|
29
|
+
end
|
30
|
+
|
31
|
+
def disconnect
|
32
|
+
@value = :disconnect
|
33
|
+
end
|
34
|
+
end
|
35
|
+
@service = ExtendedTestService.new
|
36
|
+
end
|
37
|
+
|
38
|
+
it "should be possible to register a after_connect callback" do
|
39
|
+
expect do
|
40
|
+
@service.__run_callbacks__(:after_connect)
|
41
|
+
end.to(change(@service, :value).from(nil).to(:connect))
|
42
|
+
|
43
|
+
end
|
44
|
+
|
45
|
+
it "should be possible to register a after_disconnect callback" do
|
46
|
+
expect do
|
47
|
+
@service.__run_callbacks__(:after_disconnect)
|
48
|
+
end.to(change(@service, :value).from(nil).to(:disconnect))
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
context "authentication" do
|
53
|
+
before(:each) do
|
54
|
+
class ExtendedTestService < MarilynRPC::Service
|
55
|
+
authentication_required :secure
|
56
|
+
|
57
|
+
def normal
|
58
|
+
true
|
59
|
+
end
|
60
|
+
|
61
|
+
def secure
|
62
|
+
false
|
63
|
+
end
|
64
|
+
end
|
65
|
+
@service = ExtendedTestService.new
|
66
|
+
end
|
67
|
+
|
68
|
+
it "should be possible to find the secure method in the auth. hash" do
|
69
|
+
@service.class.__methods_with_authentication__[:secure].should be_true
|
70
|
+
end
|
20
71
|
end
|
21
72
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: marilyn-rpc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 25
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Vincent Landgraf
|
@@ -62,35 +62,10 @@ extra_rdoc_files: []
|
|
62
62
|
files:
|
63
63
|
- benchmark/client.rb
|
64
64
|
- benchmark/server.rb
|
65
|
-
- doc/_index.html
|
66
|
-
- doc/class_list.html
|
67
|
-
- doc/css/common.css
|
68
|
-
- doc/css/full_list.css
|
69
|
-
- doc/css/style.css
|
70
|
-
- doc/file.README.html
|
71
|
-
- doc/file_list.html
|
72
|
-
- doc/frames.html
|
73
|
-
- doc/index.html
|
74
|
-
- doc/js/app.js
|
75
|
-
- doc/js/full_list.js
|
76
|
-
- doc/js/jquery.js
|
77
|
-
- doc/MarilynRPC/CallRequestMail.html
|
78
|
-
- doc/MarilynRPC/CallResponseMail.html
|
79
|
-
- doc/MarilynRPC/Envelope.html
|
80
|
-
- doc/MarilynRPC/ExceptionMail.html
|
81
|
-
- doc/MarilynRPC/Gentleman.html
|
82
|
-
- doc/MarilynRPC/MailFactory.html
|
83
|
-
- doc/MarilynRPC/MailHelper.html
|
84
|
-
- doc/MarilynRPC/NativeClient.html
|
85
|
-
- doc/MarilynRPC/NativeClientProxy.html
|
86
|
-
- doc/MarilynRPC/Server.html
|
87
|
-
- doc/MarilynRPC/Service.html
|
88
|
-
- doc/MarilynRPC/ServiceCache.html
|
89
|
-
- doc/MarilynRPC.html
|
90
|
-
- doc/method_list.html
|
91
|
-
- doc/top-level-namespace.html
|
92
65
|
- examples/async/client.rb
|
93
66
|
- examples/async/server.rb
|
67
|
+
- examples/authentication/client.rb
|
68
|
+
- examples/authentication/server.rb
|
94
69
|
- examples/callbacks/client.rb
|
95
70
|
- examples/callbacks/server.rb
|
96
71
|
- examples/secure/client.rb
|
@@ -98,6 +73,7 @@ files:
|
|
98
73
|
- kiss.png
|
99
74
|
- lib/marilyn-rpc/client.rb
|
100
75
|
- lib/marilyn-rpc/envelope.rb
|
76
|
+
- lib/marilyn-rpc/error.rb
|
101
77
|
- lib/marilyn-rpc/gentleman.rb
|
102
78
|
- lib/marilyn-rpc/mails.rb
|
103
79
|
- lib/marilyn-rpc/server.rb
|
@@ -112,7 +88,7 @@ files:
|
|
112
88
|
- spec/gentleman_spec.rb
|
113
89
|
- spec/mails_spec.rb
|
114
90
|
- spec/server_spec.rb
|
115
|
-
- spec/
|
91
|
+
- spec/service_cache_spec.rb
|
116
92
|
- spec/service_spec.rb
|
117
93
|
- spec/spec_helper.rb
|
118
94
|
has_rdoc: true
|
@@ -145,7 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
145
121
|
requirements: []
|
146
122
|
|
147
123
|
rubyforge_project:
|
148
|
-
rubygems_version: 1.
|
124
|
+
rubygems_version: 1.6.2
|
149
125
|
signing_key:
|
150
126
|
specification_version: 3
|
151
127
|
summary: Simple, beautiful event-based RPC
|
@@ -154,6 +130,6 @@ test_files:
|
|
154
130
|
- spec/gentleman_spec.rb
|
155
131
|
- spec/mails_spec.rb
|
156
132
|
- spec/server_spec.rb
|
157
|
-
- spec/
|
133
|
+
- spec/service_cache_spec.rb
|
158
134
|
- spec/service_spec.rb
|
159
135
|
- spec/spec_helper.rb
|
data/doc/MarilynRPC.html
DELETED
@@ -1,108 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
-
<head>
|
5
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
-
<title>Module: MarilynRPC</title>
|
7
|
-
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
|
8
|
-
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
|
9
|
-
|
10
|
-
<script type="text/javascript" charset="utf-8">
|
11
|
-
relpath = '';
|
12
|
-
if (relpath != '') relpath += '/';
|
13
|
-
</script>
|
14
|
-
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
15
|
-
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
|
16
|
-
|
17
|
-
</head>
|
18
|
-
<body>
|
19
|
-
<script type="text/javascript" charset="utf-8">
|
20
|
-
if (window.top.frames.main) document.body.className = 'frames';
|
21
|
-
</script>
|
22
|
-
|
23
|
-
<div id="header">
|
24
|
-
<div id="menu">
|
25
|
-
|
26
|
-
<a href="_index.html">Index (M)</a> »
|
27
|
-
|
28
|
-
|
29
|
-
<span class="title">MarilynRPC</span>
|
30
|
-
|
31
|
-
|
32
|
-
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
33
|
-
</div>
|
34
|
-
|
35
|
-
<div id="search">
|
36
|
-
<a id="class_list_link" href="#">Class List</a>
|
37
|
-
<a id="method_list_link" href="#">Method List</a>
|
38
|
-
<a id ="file_list_link" href="#">File List</a>
|
39
|
-
</div>
|
40
|
-
|
41
|
-
<div class="clear"></div>
|
42
|
-
</div>
|
43
|
-
|
44
|
-
<iframe id="search_frame"></iframe>
|
45
|
-
|
46
|
-
<div id="content"><h1>Module: MarilynRPC
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
</h1>
|
51
|
-
|
52
|
-
<dl class="box">
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
<dt class="r1 last">Defined in:</dt>
|
62
|
-
<dd class="r1 last">lib/marilyn-rpc/mails.rb<span class="defines">,<br />
|
63
|
-
lib/marilyn-rpc/client.rb,<br /> lib/marilyn-rpc/version.rb</span>
|
64
|
-
</dd>
|
65
|
-
|
66
|
-
</dl>
|
67
|
-
<div class="clear"></div>
|
68
|
-
|
69
|
-
<h2>Defined Under Namespace</h2>
|
70
|
-
<p class="children">
|
71
|
-
|
72
|
-
|
73
|
-
<strong class="modules">Modules:</strong> <span class='object_link'><a href="MarilynRPC/MailFactory.html" title="MarilynRPC::MailFactory (module)">MailFactory</a></span>, <span class='object_link'><a href="MarilynRPC/MailHelper.html" title="MarilynRPC::MailHelper (module)">MailHelper</a></span>, <span class='object_link'><a href="MarilynRPC/Server.html" title="MarilynRPC::Server (module)">Server</a></span>
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
<strong class="classes">Classes:</strong> <span class='object_link'><a href="MarilynRPC/CallRequestMail.html" title="MarilynRPC::CallRequestMail (class)">CallRequestMail</a></span>, <span class='object_link'><a href="MarilynRPC/CallResponseMail.html" title="MarilynRPC::CallResponseMail (class)">CallResponseMail</a></span>, <span class='object_link'><a href="MarilynRPC/Envelope.html" title="MarilynRPC::Envelope (class)">Envelope</a></span>, <span class='object_link'><a href="MarilynRPC/ExceptionMail.html" title="MarilynRPC::ExceptionMail (class)">ExceptionMail</a></span>, <span class='object_link'><a href="MarilynRPC/Gentleman.html" title="MarilynRPC::Gentleman (class)">Gentleman</a></span>, <span class='object_link'><a href="MarilynRPC/NativeClient.html" title="MarilynRPC::NativeClient (class)">NativeClient</a></span>, <span class='object_link'><a href="MarilynRPC/NativeClientProxy.html" title="MarilynRPC::NativeClientProxy (class)">NativeClientProxy</a></span>, <span class='object_link'><a href="MarilynRPC/Service.html" title="MarilynRPC::Service (class)">Service</a></span>, <span class='object_link'><a href="MarilynRPC/ServiceCache.html" title="MarilynRPC::ServiceCache (class)">ServiceCache</a></span>
|
78
|
-
|
79
|
-
|
80
|
-
</p>
|
81
|
-
|
82
|
-
<h2>Constant Summary</h2>
|
83
|
-
|
84
|
-
<dl class="constants">
|
85
|
-
|
86
|
-
<dt id="VERSION-constant" class="">VERSION =
|
87
|
-
|
88
|
-
</dt>
|
89
|
-
<dd><pre class="code"><span class='string val'>'0.0.1'</span>
|
90
|
-
</pre></dd>
|
91
|
-
|
92
|
-
</dl>
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
</div>
|
100
|
-
|
101
|
-
<div id="footer">
|
102
|
-
Generated on Wed Jun 8 18:26:45 2011 by
|
103
|
-
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
104
|
-
0.6.8 (ruby-1.8.7).
|
105
|
-
</div>
|
106
|
-
|
107
|
-
</body>
|
108
|
-
</html>
|
@@ -1,578 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
-
<head>
|
5
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
-
<title>Class: MarilynRPC::CallRequestMail</title>
|
7
|
-
<link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
|
8
|
-
<link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
|
9
|
-
|
10
|
-
<script type="text/javascript" charset="utf-8">
|
11
|
-
relpath = '..';
|
12
|
-
if (relpath != '') relpath += '/';
|
13
|
-
</script>
|
14
|
-
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
15
|
-
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
16
|
-
|
17
|
-
</head>
|
18
|
-
<body>
|
19
|
-
<script type="text/javascript" charset="utf-8">
|
20
|
-
if (window.top.frames.main) document.body.className = 'frames';
|
21
|
-
</script>
|
22
|
-
|
23
|
-
<div id="header">
|
24
|
-
<div id="menu">
|
25
|
-
|
26
|
-
<a href="../_index.html">Index (C)</a> »
|
27
|
-
<span class='title'><span class='object_link'><a href="../MarilynRPC.html" title="MarilynRPC (module)">MarilynRPC</a></span></span>
|
28
|
-
»
|
29
|
-
<span class="title">CallRequestMail</span>
|
30
|
-
|
31
|
-
|
32
|
-
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
33
|
-
</div>
|
34
|
-
|
35
|
-
<div id="search">
|
36
|
-
<a id="class_list_link" href="#">Class List</a>
|
37
|
-
<a id="method_list_link" href="#">Method List</a>
|
38
|
-
<a id ="file_list_link" href="#">File List</a>
|
39
|
-
</div>
|
40
|
-
|
41
|
-
<div class="clear"></div>
|
42
|
-
</div>
|
43
|
-
|
44
|
-
<iframe id="search_frame"></iframe>
|
45
|
-
|
46
|
-
<div id="content"><h1>Class: MarilynRPC::CallRequestMail
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
</h1>
|
51
|
-
|
52
|
-
<dl class="box">
|
53
|
-
|
54
|
-
<dt class="r1">Inherits:</dt>
|
55
|
-
<dd class="r1">
|
56
|
-
<span class="inheritName">Struct</span>
|
57
|
-
|
58
|
-
<ul class="fullTree">
|
59
|
-
<li>Object</li>
|
60
|
-
|
61
|
-
<li class="next">Struct</li>
|
62
|
-
|
63
|
-
<li class="next">MarilynRPC::CallRequestMail</li>
|
64
|
-
|
65
|
-
</ul>
|
66
|
-
<a href="#" class="inheritanceTree">show all</a>
|
67
|
-
|
68
|
-
</dd>
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
<dt class="r2">Includes:</dt>
|
76
|
-
<dd class="r2"><span class='object_link'><a href="MailHelper.html" title="MarilynRPC::MailHelper (module)">MailHelper</a></span></dd>
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
<dt class="r1 last">Defined in:</dt>
|
83
|
-
<dd class="r1 last">lib/marilyn-rpc/mails.rb</dd>
|
84
|
-
|
85
|
-
</dl>
|
86
|
-
<div class="clear"></div>
|
87
|
-
|
88
|
-
|
89
|
-
<h2>Constant Summary</h2>
|
90
|
-
|
91
|
-
<dl class="constants">
|
92
|
-
|
93
|
-
<dt id="TYPE-constant" class="">TYPE =
|
94
|
-
|
95
|
-
</dt>
|
96
|
-
<dd><pre class="code"><span class='MarilynRPC constant id'>MarilynRPC</span><span class='colon2 op'>::</span><span class='MailHelper constant id'>MailHelper</span><span class='dot token'>.</span><span class='type identifier id'>type</span><span class='lparen token'>(</span><span class='integer val'>1</span><span class='rparen token'>)</span>
|
97
|
-
</pre></dd>
|
98
|
-
|
99
|
-
</dl>
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
<h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
|
109
|
-
<ul class="summary">
|
110
|
-
|
111
|
-
<li class="public ">
|
112
|
-
<span class="summary_signature">
|
113
|
-
|
114
|
-
<a href="#args-instance_method" title="#args (instance method)">- (Object) <strong>args</strong> </a>
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
</span>
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute args.</p></div></span>
|
131
|
-
|
132
|
-
</li>
|
133
|
-
|
134
|
-
|
135
|
-
<li class="public ">
|
136
|
-
<span class="summary_signature">
|
137
|
-
|
138
|
-
<a href="#method-instance_method" title="#method (instance method)">- (Object) <strong>method</strong> </a>
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
</span>
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute method.</p></div></span>
|
155
|
-
|
156
|
-
</li>
|
157
|
-
|
158
|
-
|
159
|
-
<li class="public ">
|
160
|
-
<span class="summary_signature">
|
161
|
-
|
162
|
-
<a href="#path-instance_method" title="#path (instance method)">- (Object) <strong>path</strong> </a>
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
</span>
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute path.</p></div></span>
|
179
|
-
|
180
|
-
</li>
|
181
|
-
|
182
|
-
|
183
|
-
<li class="public ">
|
184
|
-
<span class="summary_signature">
|
185
|
-
|
186
|
-
<a href="#tag-instance_method" title="#tag (instance method)">- (Object) <strong>tag</strong> </a>
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
</span>
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute tag.</p></div></span>
|
203
|
-
|
204
|
-
</li>
|
205
|
-
|
206
|
-
|
207
|
-
</ul>
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
<h2>
|
212
|
-
Instance Method Summary
|
213
|
-
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
214
|
-
</h2>
|
215
|
-
|
216
|
-
<ul class="summary">
|
217
|
-
|
218
|
-
<li class="public ">
|
219
|
-
<span class="summary_signature">
|
220
|
-
|
221
|
-
<a href="#decode-instance_method" title="#decode (instance method)">- (Object) <strong>decode</strong>(data) </a>
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
</span>
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
<span class="summary_desc"><div class='inline'></div></span>
|
235
|
-
|
236
|
-
</li>
|
237
|
-
|
238
|
-
|
239
|
-
<li class="public ">
|
240
|
-
<span class="summary_signature">
|
241
|
-
|
242
|
-
<a href="#encode-instance_method" title="#encode (instance method)">- (Object) <strong>encode</strong> </a>
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
</span>
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
<span class="summary_desc"><div class='inline'></div></span>
|
256
|
-
|
257
|
-
</li>
|
258
|
-
|
259
|
-
|
260
|
-
</ul>
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
<h3 class="inherited">Methods included from <span class='object_link'><a href="MailHelper.html" title="MarilynRPC::MailHelper (module)">MailHelper</a></span></h3>
|
272
|
-
<p class="inherited"><span class='object_link'><a href="MailHelper.html#deserialize-instance_method" title="MarilynRPC::MailHelper#deserialize (method)">#deserialize</a></span>, <span class='object_link'><a href="MailHelper.html#only_data-instance_method" title="MarilynRPC::MailHelper#only_data (method)">#only_data</a></span>, <span class='object_link'><a href="MailHelper.html#serialize-instance_method" title="MarilynRPC::MailHelper#serialize (method)">#serialize</a></span>, <span class='object_link'><a href="MailHelper.html#type-class_method" title="MarilynRPC::MailHelper.type (method)">type</a></span></p>
|
273
|
-
|
274
|
-
|
275
|
-
<div id="instance_attr_details" class="attr_details">
|
276
|
-
<h2>Instance Attribute Details</h2>
|
277
|
-
|
278
|
-
|
279
|
-
<span id="args=-instance_method"></span>
|
280
|
-
<span id="args-instance_method"></span>
|
281
|
-
<div class="method_details first">
|
282
|
-
<p class="signature first" id="args-instance_method">
|
283
|
-
|
284
|
-
- (<tt>Object</tt>) <strong>args</strong>
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
</p><div class="docstring">
|
289
|
-
<div class="discussion">
|
290
|
-
<p>Returns the value of attribute args</p>
|
291
|
-
|
292
|
-
</div>
|
293
|
-
</div>
|
294
|
-
<div class="tags">
|
295
|
-
<h3>Returns:</h3>
|
296
|
-
<ul class="return">
|
297
|
-
|
298
|
-
<li>
|
299
|
-
|
300
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
—
|
306
|
-
<div class='inline'><p>the current value of args</p></div>
|
307
|
-
|
308
|
-
</li>
|
309
|
-
|
310
|
-
</ul>
|
311
|
-
|
312
|
-
</div><table class="source_code">
|
313
|
-
<tr>
|
314
|
-
<td>
|
315
|
-
<pre class="lines">
|
316
|
-
|
317
|
-
|
318
|
-
33
|
319
|
-
34
|
320
|
-
35</pre>
|
321
|
-
</td>
|
322
|
-
<td>
|
323
|
-
<pre class="code"><span class="info file"># File 'lib/marilyn-rpc/mails.rb', line 33</span>
|
324
|
-
|
325
|
-
<span class='def def kw'>def</span> <span class='args identifier id'>args</span>
|
326
|
-
<span class='@args ivar id'>@args</span>
|
327
|
-
<span class='end end kw'>end</span>
|
328
|
-
</pre>
|
329
|
-
</td>
|
330
|
-
</tr>
|
331
|
-
</table>
|
332
|
-
</div>
|
333
|
-
|
334
|
-
|
335
|
-
<span id="method=-instance_method"></span>
|
336
|
-
<span id="method-instance_method"></span>
|
337
|
-
<div class="method_details ">
|
338
|
-
<p class="signature " id="method-instance_method">
|
339
|
-
|
340
|
-
- (<tt>Object</tt>) <strong>method</strong>
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
</p><div class="docstring">
|
345
|
-
<div class="discussion">
|
346
|
-
<p>Returns the value of attribute method</p>
|
347
|
-
|
348
|
-
</div>
|
349
|
-
</div>
|
350
|
-
<div class="tags">
|
351
|
-
<h3>Returns:</h3>
|
352
|
-
<ul class="return">
|
353
|
-
|
354
|
-
<li>
|
355
|
-
|
356
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
—
|
362
|
-
<div class='inline'><p>the current value of method</p></div>
|
363
|
-
|
364
|
-
</li>
|
365
|
-
|
366
|
-
</ul>
|
367
|
-
|
368
|
-
</div><table class="source_code">
|
369
|
-
<tr>
|
370
|
-
<td>
|
371
|
-
<pre class="lines">
|
372
|
-
|
373
|
-
|
374
|
-
33
|
375
|
-
34
|
376
|
-
35</pre>
|
377
|
-
</td>
|
378
|
-
<td>
|
379
|
-
<pre class="code"><span class="info file"># File 'lib/marilyn-rpc/mails.rb', line 33</span>
|
380
|
-
|
381
|
-
<span class='def def kw'>def</span> <span class='method identifier id'>method</span>
|
382
|
-
<span class='@method ivar id'>@method</span>
|
383
|
-
<span class='end end kw'>end</span>
|
384
|
-
</pre>
|
385
|
-
</td>
|
386
|
-
</tr>
|
387
|
-
</table>
|
388
|
-
</div>
|
389
|
-
|
390
|
-
|
391
|
-
<span id="path=-instance_method"></span>
|
392
|
-
<span id="path-instance_method"></span>
|
393
|
-
<div class="method_details ">
|
394
|
-
<p class="signature " id="path-instance_method">
|
395
|
-
|
396
|
-
- (<tt>Object</tt>) <strong>path</strong>
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
</p><div class="docstring">
|
401
|
-
<div class="discussion">
|
402
|
-
<p>Returns the value of attribute path</p>
|
403
|
-
|
404
|
-
</div>
|
405
|
-
</div>
|
406
|
-
<div class="tags">
|
407
|
-
<h3>Returns:</h3>
|
408
|
-
<ul class="return">
|
409
|
-
|
410
|
-
<li>
|
411
|
-
|
412
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
—
|
418
|
-
<div class='inline'><p>the current value of path</p></div>
|
419
|
-
|
420
|
-
</li>
|
421
|
-
|
422
|
-
</ul>
|
423
|
-
|
424
|
-
</div><table class="source_code">
|
425
|
-
<tr>
|
426
|
-
<td>
|
427
|
-
<pre class="lines">
|
428
|
-
|
429
|
-
|
430
|
-
33
|
431
|
-
34
|
432
|
-
35</pre>
|
433
|
-
</td>
|
434
|
-
<td>
|
435
|
-
<pre class="code"><span class="info file"># File 'lib/marilyn-rpc/mails.rb', line 33</span>
|
436
|
-
|
437
|
-
<span class='def def kw'>def</span> <span class='path identifier id'>path</span>
|
438
|
-
<span class='@path ivar id'>@path</span>
|
439
|
-
<span class='end end kw'>end</span>
|
440
|
-
</pre>
|
441
|
-
</td>
|
442
|
-
</tr>
|
443
|
-
</table>
|
444
|
-
</div>
|
445
|
-
|
446
|
-
|
447
|
-
<span id="tag=-instance_method"></span>
|
448
|
-
<span id="tag-instance_method"></span>
|
449
|
-
<div class="method_details ">
|
450
|
-
<p class="signature " id="tag-instance_method">
|
451
|
-
|
452
|
-
- (<tt>Object</tt>) <strong>tag</strong>
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
</p><div class="docstring">
|
457
|
-
<div class="discussion">
|
458
|
-
<p>Returns the value of attribute tag</p>
|
459
|
-
|
460
|
-
</div>
|
461
|
-
</div>
|
462
|
-
<div class="tags">
|
463
|
-
<h3>Returns:</h3>
|
464
|
-
<ul class="return">
|
465
|
-
|
466
|
-
<li>
|
467
|
-
|
468
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
—
|
474
|
-
<div class='inline'><p>the current value of tag</p></div>
|
475
|
-
|
476
|
-
</li>
|
477
|
-
|
478
|
-
</ul>
|
479
|
-
|
480
|
-
</div><table class="source_code">
|
481
|
-
<tr>
|
482
|
-
<td>
|
483
|
-
<pre class="lines">
|
484
|
-
|
485
|
-
|
486
|
-
33
|
487
|
-
34
|
488
|
-
35</pre>
|
489
|
-
</td>
|
490
|
-
<td>
|
491
|
-
<pre class="code"><span class="info file"># File 'lib/marilyn-rpc/mails.rb', line 33</span>
|
492
|
-
|
493
|
-
<span class='def def kw'>def</span> <span class='tag identifier id'>tag</span>
|
494
|
-
<span class='@tag ivar id'>@tag</span>
|
495
|
-
<span class='end end kw'>end</span>
|
496
|
-
</pre>
|
497
|
-
</td>
|
498
|
-
</tr>
|
499
|
-
</table>
|
500
|
-
</div>
|
501
|
-
|
502
|
-
</div>
|
503
|
-
|
504
|
-
|
505
|
-
<div id="instance_method_details" class="method_details_list">
|
506
|
-
<h2>Instance Method Details</h2>
|
507
|
-
|
508
|
-
|
509
|
-
<div class="method_details first">
|
510
|
-
<p class="signature first" id="decode-instance_method">
|
511
|
-
|
512
|
-
- (<tt>Object</tt>) <strong>decode</strong>(data)
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
</p><table class="source_code">
|
517
|
-
<tr>
|
518
|
-
<td>
|
519
|
-
<pre class="lines">
|
520
|
-
|
521
|
-
|
522
|
-
41
|
523
|
-
42
|
524
|
-
43</pre>
|
525
|
-
</td>
|
526
|
-
<td>
|
527
|
-
<pre class="code"><span class="info file"># File 'lib/marilyn-rpc/mails.rb', line 41</span>
|
528
|
-
|
529
|
-
<span class='def def kw'>def</span> <span class='decode identifier id'>decode</span><span class='lparen token'>(</span><span class='data identifier id'>data</span><span class='rparen token'>)</span>
|
530
|
-
<span class='self self kw'>self</span><span class='dot token'>.</span><span class='tag identifier id'>tag</span><span class='comma token'>,</span> <span class='self self kw'>self</span><span class='dot token'>.</span><span class='path identifier id'>path</span><span class='comma token'>,</span> <span class='self self kw'>self</span><span class='dot token'>.</span><span class='method identifier id'>method</span><span class='comma token'>,</span> <span class='self self kw'>self</span><span class='dot token'>.</span><span class='args identifier id'>args</span> <span class='assign token'>=</span> <span class='deserialize identifier id'>deserialize</span><span class='lparen token'>(</span><span class='only_data identifier id'>only_data</span><span class='lparen token'>(</span><span class='data identifier id'>data</span><span class='rparen token'>)</span><span class='rparen token'>)</span>
|
531
|
-
<span class='end end kw'>end</span>
|
532
|
-
</pre>
|
533
|
-
</td>
|
534
|
-
</tr>
|
535
|
-
</table>
|
536
|
-
</div>
|
537
|
-
|
538
|
-
<div class="method_details ">
|
539
|
-
<p class="signature " id="encode-instance_method">
|
540
|
-
|
541
|
-
- (<tt>Object</tt>) <strong>encode</strong>
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
</p><table class="source_code">
|
546
|
-
<tr>
|
547
|
-
<td>
|
548
|
-
<pre class="lines">
|
549
|
-
|
550
|
-
|
551
|
-
37
|
552
|
-
38
|
553
|
-
39</pre>
|
554
|
-
</td>
|
555
|
-
<td>
|
556
|
-
<pre class="code"><span class="info file"># File 'lib/marilyn-rpc/mails.rb', line 37</span>
|
557
|
-
|
558
|
-
<span class='def def kw'>def</span> <span class='encode identifier id'>encode</span>
|
559
|
-
<span class='TYPE constant id'>TYPE</span> <span class='plus op'>+</span> <span class='serialize identifier id'>serialize</span><span class='lparen token'>(</span><span class='lbrack token'>[</span><span class='self self kw'>self</span><span class='dot token'>.</span><span class='tag identifier id'>tag</span><span class='comma token'>,</span> <span class='self self kw'>self</span><span class='dot token'>.</span><span class='path identifier id'>path</span><span class='comma token'>,</span> <span class='self self kw'>self</span><span class='dot token'>.</span><span class='method identifier id'>method</span><span class='comma token'>,</span> <span class='self self kw'>self</span><span class='dot token'>.</span><span class='args identifier id'>args</span><span class='rbrack token'>]</span><span class='rparen token'>)</span>
|
560
|
-
<span class='end end kw'>end</span>
|
561
|
-
</pre>
|
562
|
-
</td>
|
563
|
-
</tr>
|
564
|
-
</table>
|
565
|
-
</div>
|
566
|
-
|
567
|
-
</div>
|
568
|
-
|
569
|
-
</div>
|
570
|
-
|
571
|
-
<div id="footer">
|
572
|
-
Generated on Wed Jun 8 18:26:45 2011 by
|
573
|
-
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
574
|
-
0.6.8 (ruby-1.8.7).
|
575
|
-
</div>
|
576
|
-
|
577
|
-
</body>
|
578
|
-
</html>
|