shipping 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/README ADDED
@@ -0,0 +1,46 @@
1
+ == Welcome to Shipping
2
+
3
+ Shipping is a module that connects APIs for various shippers like UPS and FedEx.
4
+
5
+ == Download
6
+
7
+ * gem install shipping
8
+ * http://rubyforge.org/projects/shipping
9
+ * svn co http://rufy.com/svn/shipping/trunk
10
+
11
+ === Usage
12
+ There is going to be some data that will persist for all connections. For example, you will not want to repeat the fedex account number every time in your implementation code. To set default values, setup a file called .shipping.yml in the home directory of the user who will be using this library. An example file would be:
13
+
14
+ fedex_url: https://gatewaybeta.fedex.com/GatewayDC
15
+ fedex_account: 1234556
16
+ fedex_meter: 387878
17
+
18
+ ups_account: 7B4F74E3075AEEFF
19
+ ups_user: username
20
+ ups_password: password
21
+
22
+ You can set as many default values as you would like in this file.
23
+
24
+ require 'shipping'
25
+
26
+ ups = Shipping::UPS.new :zip => 97202, :sender_zip => 10001, :weight => 2
27
+ ups.price => 8.77
28
+ ups.valid_address? => false
29
+
30
+ ups.city = "Portland"
31
+ ups.valid_address? => true
32
+
33
+ Alternately, you can instantiate the base class and then see both UPS and FedEx information.
34
+
35
+ ship = Shipping::Base.new :zip => 97202, :state => "OR", :sender_zip => 10001, :weight => 2
36
+ ship.ups.price => 8.77
37
+ ship.fedex.price => 5.17
38
+
39
+ ship.city = "Portland"
40
+ ship.ups.valid_address? => true
41
+
42
+ == Authors
43
+ * Lucas Carlson (mailto:lucas@rufy.com)
44
+
45
+ This library is released under the terms of the GNU LGPL.
46
+
data/Rakefile ADDED
@@ -0,0 +1,93 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+ require 'rake/testtask'
4
+ require 'rake/rdoctask'
5
+ require 'rake/gempackagetask'
6
+ require 'rake/contrib/rubyforgepublisher'
7
+
8
+ PKG_VERSION = "1.0.0"
9
+
10
+ PKG_FILES = FileList[
11
+ "lib/**/*", "bin/*", "test/**/*", "[A-Z]*", "Rakefile", "doc/**/*"
12
+ ]
13
+
14
+ desc "Default Task"
15
+ task :default => [ :test ]
16
+
17
+ # Run the unit tests
18
+ desc "Run all unit tests"
19
+ Rake::TestTask.new("test") { |t|
20
+ t.libs << "lib"
21
+ t.pattern = 'test/*/*_test.rb'
22
+ t.verbose = true
23
+ }
24
+
25
+ # Make a console, useful when working on tests
26
+ desc "Generate a test console"
27
+ task :console do
28
+ verbose( false ) { sh "irb -I lib/ -r 'shipping'" }
29
+ end
30
+
31
+ # Genereate the RDoc documentation
32
+ desc "Create documentation"
33
+ Rake::RDocTask.new("doc") { |rdoc|
34
+ rdoc.title = "Ruby Shipping - UPS, FedEx, USPS"
35
+ rdoc.rdoc_dir = 'doc'
36
+ rdoc.rdoc_files.include('README')
37
+ rdoc.rdoc_files.include('lib/**/*.rb')
38
+ }
39
+
40
+ # Genereate the package
41
+ spec = Gem::Specification.new do |s|
42
+
43
+ #### Basic information.
44
+
45
+ s.name = 'shipping'
46
+ s.version = PKG_VERSION
47
+ s.summary = <<-EOF
48
+ A general shipping module to find out the shipping prices via UPS or FedEx.
49
+ EOF
50
+ s.description = <<-EOF
51
+ A general shipping module to find out the shipping prices via UPS or FedEx.
52
+ EOF
53
+
54
+ #### Which files are to be included in this gem? Everything! (Except CVS directories.)
55
+
56
+ s.files = PKG_FILES
57
+
58
+ #### Load-time details: library and application (you will need one or both).
59
+
60
+ s.require_path = 'lib'
61
+ s.autorequire = 'shipping'
62
+
63
+ #### Documentation and testing.
64
+
65
+ s.has_rdoc = true
66
+
67
+ #### Author and project details.
68
+
69
+ s.author = "Lucas Carlson"
70
+ s.email = "lucas@rufy.com"
71
+ s.homepage = "http://shipping.rufy.com/"
72
+ end
73
+
74
+ Rake::GemPackageTask.new(spec) do |pkg|
75
+ pkg.need_zip = true
76
+ pkg.need_tar = true
77
+ end
78
+
79
+ desc "Report code statistics (KLOCs, etc) from the application"
80
+ task :stats do
81
+ require 'code_statistics'
82
+ CodeStatistics.new(
83
+ ["Library", "lib"],
84
+ ["Units", "test"]
85
+ ).to_s
86
+ end
87
+
88
+ desc "Publish new documentation"
89
+ task :publish do
90
+ `ssh rufy update-shipping-doc`
91
+ `scp pkg/shipping-1.0.0.* rufy:www/shipping.rufy.com/docs/`
92
+ Rake::RubyForgePublisher.new('shipping', 'cardmagic').upload
93
+ end
@@ -0,0 +1,323 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Class: Shipping::Base</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Class</strong></td>
53
+ <td class="class-name-in-header">Shipping::Base</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/lib/shipping/base_rb.html">
59
+ lib/shipping/base.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="top-aligned-row">
66
+ <td><strong>Parent:</strong></td>
67
+ <td>
68
+ Object
69
+ </td>
70
+ </tr>
71
+ </table>
72
+ </div>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+
77
+
78
+
79
+ <div id="contextContent">
80
+
81
+
82
+
83
+ </div>
84
+
85
+ <div id="method-list">
86
+ <h3 class="section-bar">Methods</h3>
87
+
88
+ <div class="name-list">
89
+ <a href="#M000006">fedex</a>&nbsp;&nbsp;
90
+ <a href="#M000005">new</a>&nbsp;&nbsp;
91
+ <a href="#M000007">ups</a>&nbsp;&nbsp;
92
+ </div>
93
+ </div>
94
+
95
+ </div>
96
+
97
+
98
+ <!-- if includes -->
99
+
100
+ <div id="section">
101
+
102
+
103
+ <div id="constants-list">
104
+ <h3 class="section-bar">Constants</h3>
105
+
106
+ <div class="name-list">
107
+ <table summary="Constants">
108
+ <tr class="top-aligned-row context-row">
109
+ <td class="context-item-name">STATES</td>
110
+ <td>=</td>
111
+ <td class="context-item-value">{&quot;al&quot; =&gt; &quot;alabama&quot;, &quot;ne&quot; =&gt; &quot;nebraska&quot;, &quot;ak&quot; =&gt; &quot;alaska&quot;, &quot;nv&quot; =&gt; &quot;nevada&quot;, &quot;az&quot; =&gt; &quot;arizona&quot;, &quot;nh&quot; =&gt; &quot;new hampshire&quot;, &quot;ar&quot; =&gt; &quot;arkansas&quot;, &quot;nj&quot; =&gt; &quot;new jersey&quot;, &quot;ca&quot; =&gt; &quot;california&quot;, &quot;nm&quot; =&gt; &quot;new mexico&quot;, &quot;co&quot; =&gt; &quot;colorado&quot;, &quot;ny&quot; =&gt; &quot;new york&quot;, &quot;ct&quot; =&gt; &quot;connecticut&quot;, &quot;nc&quot; =&gt; &quot;north carolina&quot;, &quot;de&quot; =&gt; &quot;delaware&quot;, &quot;nd&quot; =&gt; &quot;north dakota&quot;, &quot;fl&quot; =&gt; &quot;florida&quot;, &quot;oh&quot; =&gt; &quot;ohio&quot;, &quot;ga&quot; =&gt; &quot;georgia&quot;, &quot;ok&quot; =&gt; &quot;oklahoma&quot;, &quot;hi&quot; =&gt; &quot;hawaii&quot;, &quot;or&quot; =&gt; &quot;oregon&quot;, &quot;id&quot; =&gt; &quot;idaho&quot;, &quot;pa&quot; =&gt; &quot;pennsylvania&quot;, &quot;il&quot; =&gt; &quot;illinois&quot;, &quot;pr&quot; =&gt; &quot;puerto rico&quot;, &quot;in&quot; =&gt; &quot;indiana&quot;, &quot;ri&quot; =&gt; &quot;rhode island&quot;, &quot;ia&quot; =&gt; &quot;iowa&quot;, &quot;sc&quot; =&gt; &quot;south carolina&quot;, &quot;ks&quot; =&gt; &quot;kansas&quot;, &quot;sd&quot; =&gt; &quot;south dakota&quot;, &quot;ky&quot; =&gt; &quot;kentucky&quot;, &quot;tn&quot; =&gt; &quot;tennessee&quot;, &quot;la&quot; =&gt; &quot;louisiana&quot;, &quot;tx&quot; =&gt; &quot;texas&quot;, &quot;me&quot; =&gt; &quot;maine&quot;, &quot;ut&quot; =&gt; &quot;utah&quot;, &quot;md&quot; =&gt; &quot;maryland&quot;, &quot;vt&quot; =&gt; &quot;vermont&quot;, &quot;ma&quot; =&gt; &quot;massachusetts&quot;, &quot;va&quot; =&gt; &quot;virginia&quot;, &quot;mi&quot; =&gt; &quot;michigan&quot;, &quot;wa&quot; =&gt; &quot;washington&quot;, &quot;mn&quot; =&gt; &quot;minnesota&quot;, &quot;dc&quot; =&gt; &quot;district of columbia&quot;, &quot;ms&quot; =&gt; &quot;mississippi&quot;, &quot;wv&quot; =&gt; &quot;west virginia&quot;, &quot;mo&quot; =&gt; &quot;missouri&quot;, &quot;wi&quot; =&gt; &quot;wisconsin&quot;, &quot;mt&quot; =&gt; &quot;montana&quot;, &quot;wy&quot; =&gt; &quot;wyoming&quot;}</td>
112
+ </tr>
113
+ </table>
114
+ </div>
115
+ </div>
116
+
117
+
118
+
119
+ <div id="attribute-list">
120
+ <h3 class="section-bar">Attributes</h3>
121
+
122
+ <div class="name-list">
123
+ <table>
124
+ <tr class="top-aligned-row context-row">
125
+ <td class="context-item-name">city</td>
126
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
127
+ <td class="context-item-desc"></td>
128
+ </tr>
129
+ <tr class="top-aligned-row context-row">
130
+ <td class="context-item-name">country</td>
131
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
132
+ <td class="context-item-desc"></td>
133
+ </tr>
134
+ <tr class="top-aligned-row context-row">
135
+ <td class="context-item-name">data</td>
136
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
137
+ <td class="context-item-desc"></td>
138
+ </tr>
139
+ <tr class="top-aligned-row context-row">
140
+ <td class="context-item-name">declared_value</td>
141
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
142
+ <td class="context-item-desc"></td>
143
+ </tr>
144
+ <tr class="top-aligned-row context-row">
145
+ <td class="context-item-name">fedex_account</td>
146
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
147
+ <td class="context-item-desc"></td>
148
+ </tr>
149
+ <tr class="top-aligned-row context-row">
150
+ <td class="context-item-name">fedex_meter</td>
151
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
152
+ <td class="context-item-desc"></td>
153
+ </tr>
154
+ <tr class="top-aligned-row context-row">
155
+ <td class="context-item-name">fedex_url</td>
156
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
157
+ <td class="context-item-desc"></td>
158
+ </tr>
159
+ <tr class="top-aligned-row context-row">
160
+ <td class="context-item-name">insured_value</td>
161
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
162
+ <td class="context-item-desc"></td>
163
+ </tr>
164
+ <tr class="top-aligned-row context-row">
165
+ <td class="context-item-name">package_total</td>
166
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
167
+ <td class="context-item-desc"></td>
168
+ </tr>
169
+ <tr class="top-aligned-row context-row">
170
+ <td class="context-item-name">packaging_type</td>
171
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
172
+ <td class="context-item-desc"></td>
173
+ </tr>
174
+ <tr class="top-aligned-row context-row">
175
+ <td class="context-item-name">required</td>
176
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
177
+ <td class="context-item-desc"></td>
178
+ </tr>
179
+ <tr class="top-aligned-row context-row">
180
+ <td class="context-item-name">response</td>
181
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
182
+ <td class="context-item-desc"></td>
183
+ </tr>
184
+ <tr class="top-aligned-row context-row">
185
+ <td class="context-item-name">sender_city</td>
186
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
187
+ <td class="context-item-desc"></td>
188
+ </tr>
189
+ <tr class="top-aligned-row context-row">
190
+ <td class="context-item-name">sender_country</td>
191
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
192
+ <td class="context-item-desc"></td>
193
+ </tr>
194
+ <tr class="top-aligned-row context-row">
195
+ <td class="context-item-name">sender_state</td>
196
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
197
+ <td class="context-item-desc"></td>
198
+ </tr>
199
+ <tr class="top-aligned-row context-row">
200
+ <td class="context-item-name">sender_zip</td>
201
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
202
+ <td class="context-item-desc"></td>
203
+ </tr>
204
+ <tr class="top-aligned-row context-row">
205
+ <td class="context-item-name">service_type</td>
206
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
207
+ <td class="context-item-desc"></td>
208
+ </tr>
209
+ <tr class="top-aligned-row context-row">
210
+ <td class="context-item-name">state</td>
211
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
212
+ <td class="context-item-desc"></td>
213
+ </tr>
214
+ <tr class="top-aligned-row context-row">
215
+ <td class="context-item-name">transaction_type</td>
216
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
217
+ <td class="context-item-desc"></td>
218
+ </tr>
219
+ <tr class="top-aligned-row context-row">
220
+ <td class="context-item-name">ups_account</td>
221
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
222
+ <td class="context-item-desc"></td>
223
+ </tr>
224
+ <tr class="top-aligned-row context-row">
225
+ <td class="context-item-name">ups_password</td>
226
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
227
+ <td class="context-item-desc"></td>
228
+ </tr>
229
+ <tr class="top-aligned-row context-row">
230
+ <td class="context-item-name">ups_user</td>
231
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
232
+ <td class="context-item-desc"></td>
233
+ </tr>
234
+ <tr class="top-aligned-row context-row">
235
+ <td class="context-item-name">weight</td>
236
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
237
+ <td class="context-item-desc"></td>
238
+ </tr>
239
+ <tr class="top-aligned-row context-row">
240
+ <td class="context-item-name">weight_units</td>
241
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
242
+ <td class="context-item-desc"></td>
243
+ </tr>
244
+ <tr class="top-aligned-row context-row">
245
+ <td class="context-item-name">zip</td>
246
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
247
+ <td class="context-item-desc"></td>
248
+ </tr>
249
+ </table>
250
+ </div>
251
+ </div>
252
+
253
+
254
+
255
+ <!-- if method_list -->
256
+ <div id="methods">
257
+ <h3 class="section-bar">Public Class methods</h3>
258
+
259
+ <div id="method-M000005" class="method-detail">
260
+ <a name="M000005"></a>
261
+
262
+ <div class="method-heading">
263
+ <a href="Base.src/M000005.html" target="Code" class="method-signature"
264
+ onclick="popupCode('Base.src/M000005.html');return false;">
265
+ <span class="method-name">new</span><span class="method-args">(options = {})</span>
266
+ </a>
267
+ </div>
268
+
269
+ <div class="method-description">
270
+ </div>
271
+ </div>
272
+
273
+ <h3 class="section-bar">Public Instance methods</h3>
274
+
275
+ <div id="method-M000006" class="method-detail">
276
+ <a name="M000006"></a>
277
+
278
+ <div class="method-heading">
279
+ <a href="Base.src/M000006.html" target="Code" class="method-signature"
280
+ onclick="popupCode('Base.src/M000006.html');return false;">
281
+ <span class="method-name">fedex</span><span class="method-args">()</span>
282
+ </a>
283
+ </div>
284
+
285
+ <div class="method-description">
286
+ <p>
287
+ Initializes an instance of <a href="FedEx.html">Shipping::FedEx</a> with
288
+ the same instance variables as the base object
289
+ </p>
290
+ </div>
291
+ </div>
292
+
293
+ <div id="method-M000007" class="method-detail">
294
+ <a name="M000007"></a>
295
+
296
+ <div class="method-heading">
297
+ <a href="Base.src/M000007.html" target="Code" class="method-signature"
298
+ onclick="popupCode('Base.src/M000007.html');return false;">
299
+ <span class="method-name">ups</span><span class="method-args">()</span>
300
+ </a>
301
+ </div>
302
+
303
+ <div class="method-description">
304
+ <p>
305
+ Initializes an instance of <a href="UPS.html">Shipping::UPS</a> with the
306
+ same instance variables as the base object
307
+ </p>
308
+ </div>
309
+ </div>
310
+
311
+
312
+ </div>
313
+
314
+
315
+ </div>
316
+
317
+
318
+ <div id="validator-badges">
319
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
320
+ </div>
321
+
322
+ </body>
323
+ </html>
@@ -0,0 +1,26 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (Shipping::Base)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/shipping/base.rb, line 20</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span> = {})
15
+ <span class="ruby-identifier">prefs</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:prefs</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;~/.shipping.yml&quot;</span>)
16
+ <span class="ruby-constant">YAML</span>.<span class="ruby-identifier">load</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">prefs</span>)).<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">pref</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-identifier">eval</span>(<span class="ruby-node">&quot;@#{pref} = #{value.inspect}&quot;</span>)} <span class="ruby-keyword kw">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-identifier">prefs</span>)
17
+
18
+ <span class="ruby-ivar">@required</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
19
+
20
+ <span class="ruby-comment cmt"># include all provided data</span>
21
+ <span class="ruby-identifier">options</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">method</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
22
+ <span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-node">&quot;@#{method}&quot;</span>, <span class="ruby-identifier">value</span>)
23
+ <span class="ruby-keyword kw">end</span>
24
+ <span class="ruby-keyword kw">end</span></pre>
25
+ </body>
26
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>fedex (Shipping::Base)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/shipping/base.rb, line 33</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">fedex</span>
15
+ <span class="ruby-constant">Shipping</span><span class="ruby-operator">::</span><span class="ruby-constant">FedEx</span>.<span class="ruby-identifier">new</span> <span class="ruby-identifier">prepare_vars</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>ups (Shipping::Base)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/shipping/base.rb, line 38</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ups</span>
15
+ <span class="ruby-constant">Shipping</span><span class="ruby-operator">::</span><span class="ruby-constant">UPS</span>.<span class="ruby-identifier">new</span> <span class="ruby-identifier">prepare_vars</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>