dam5s-happymapper 0.3.2

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/spec/spec.opts ADDED
@@ -0,0 +1 @@
1
+ --colour
@@ -0,0 +1,13 @@
1
+ begin
2
+ require 'spec'
3
+ rescue LoadError
4
+ require 'rubygems'
5
+ gem 'rspec'
6
+ require 'spec'
7
+ end
8
+
9
+ require File.join(File.dirname(__FILE__), '..', 'lib', 'happymapper')
10
+
11
+ def fixture_file(filename)
12
+ File.read(File.dirname(__FILE__) + "/fixtures/#{filename}")
13
+ end
@@ -0,0 +1,47 @@
1
+ @media screen, projection {
2
+ /*
3
+ Copyright (c) 2007, Yahoo! Inc. All rights reserved.
4
+ Code licensed under the BSD License:
5
+ http://developer.yahoo.net/yui/license.txt
6
+ version: 2.2.0
7
+ */
8
+ body {font:13px arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}table {font-size:inherit;font:100%;}select, input, textarea {font:99% arial,helvetica,clean,sans-serif;}pre, code {font:115% monospace;*font-size:100%;}body * {line-height:1.22em;}
9
+ body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}/*ol,ul {list-style:none;}*/caption,th {text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym {border:0;}
10
+ /* end of yahoo reset and fonts */
11
+
12
+ body {color:#333; background:#4b1a1a; line-height:1.3;}
13
+ p {margin:0 0 20px;}
14
+ a {color:#4b1a1a;}
15
+ a:hover {text-decoration:none;}
16
+ strong {font-weight:bold;}
17
+ em {font-style:italics;}
18
+ h1,h2,h3,h4,h5,h6 {font-weight:bold;}
19
+ h1 {font-size:197%; margin:30px 0; color:#4b1a1a;}
20
+ h2 {font-size:174%; margin:20px 0; color:#b8111a;}
21
+ h3 {font-size:152%; margin:10px 0;}
22
+ h4 {font-size:129%; margin:10px 0;}
23
+ pre {background:#eee; margin:0 0 20px; padding:20px; border:1px solid #ccc; font-size:100%; overflow:auto;}
24
+ code {font-size:100%; margin:0; padding:0;}
25
+ ul, ol {margin:10px 0 10px 25px;}
26
+ ol li {margin:0 0 10px;}
27
+
28
+
29
+
30
+
31
+
32
+ div#wrapper {background:#fff; width:560px; margin:0 auto; padding:20px; border:10px solid #bc8c46; border-width:0 10px;}
33
+ div#header {position:relative; border-bottom:1px dotted; margin:0 0 10px; padding:0 0 10px;}
34
+ div#header p {margin:0; padding:0;}
35
+ div#header h1 {margin:0; padding:0;}
36
+ ul#nav {position:absolute; top:0; right:0; list-style:none; margin:0; padding:0;}
37
+ ul#nav li {display:inline; padding:0 0 0 5px;}
38
+ ul#nav li a {}
39
+ div#content {}
40
+ div#footer {margin:40px 0 0; border-top:1px dotted; padding:10px 0 0;}
41
+
42
+
43
+
44
+
45
+
46
+
47
+ }
@@ -0,0 +1,98 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
5
+ <title>HappyMapper by John Nunemaker</title>
6
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
7
+ </head>
8
+ <body>
9
+
10
+ <div id="wrapper">
11
+ <div id="header">
12
+ <h1>HappyMapper</h1>
13
+ <p>Object to xml mapping library.</p>
14
+
15
+ <ul id="nav">
16
+ <li><a href="rdoc/">Docs</a></li>
17
+ <li><a href="http://github.com/jnunemaker/happymapper">Github</a></li>
18
+ <li><a href="http://jnunemaker.lighthouseapp.com/projects/20014-happy-mapper/overview">Lighthouse</a></li>
19
+ <li><a href="http://rubyforge.org/projects/happymapper/">Rubyforge</a></li>
20
+ </ul>
21
+ </div>
22
+
23
+ <div id="content">
24
+ <h2>Install</h2>
25
+ <pre><code>$ sudo gem install happymapper</code></pre>
26
+
27
+ <h2>Examples</h2>
28
+
29
+ <h3>Given the following xml:</h3>
30
+ <pre><code>&lt;statuses type="array">
31
+ &lt;status>
32
+ &lt;created_at>Sat Aug 09 05:38:12 +0000 2008&lt;/created_at>
33
+ &lt;id>882281424&lt;/id>
34
+ &lt;text>I so just thought the guy lighting the Olympic torch was falling when he began to run on the wall. Wow that would have been catastrophic.&lt;/text>
35
+ &lt;source>web&lt;/source>
36
+ &lt;truncated>false&lt;/truncated>
37
+ &lt;in_reply_to_status_id>1234&lt;/in_reply_to_status_id>
38
+ &lt;in_reply_to_user_id>12345&lt;/in_reply_to_user_id>
39
+ &lt;favorited>&lt;/favorited>
40
+ &lt;user>
41
+ &lt;id>4243&lt;/id>
42
+ &lt;name>John Nunemaker&lt;/name>
43
+ &lt;screen_name>jnunemaker&lt;/screen_name>
44
+ &lt;location>Mishawaka, IN, US&lt;/location>
45
+ &lt;description>Loves his wife, ruby, notre dame football and iu basketball&lt;/description>
46
+ &lt;profile_image_url>http://s3.amazonaws.com/twitter_production/profile_images/53781608/Photo_75_normal.jpg&lt;/profile_image_url>
47
+ &lt;url>http://addictedtonew.com&lt;/url>
48
+ &lt;protected>false&lt;/protected>
49
+ &lt;followers_count>486&lt;/followers_count>
50
+ &lt;/user>
51
+ &lt;/status>
52
+ &lt;/statuses></code></pre>
53
+
54
+ <h3>You could have the following objects:</h3>
55
+
56
+ <pre><code>class User
57
+ include HappyMapper
58
+
59
+ element :id, Integer
60
+ element :name, String
61
+ element :screen_name, String
62
+ element :location, String
63
+ element :description, String
64
+ element :profile_image_url, String
65
+ element :url, String
66
+ element :protected, Boolean
67
+ element :followers_count, Integer
68
+ end
69
+
70
+ class Status
71
+ include HappyMapper
72
+
73
+ element :id, Integer
74
+ element :text, String
75
+ element :created_at, Time
76
+ element :source, String
77
+ element :truncated, Boolean
78
+ element :in_reply_to_status_id, Integer
79
+ element :in_reply_to_user_id, Integer
80
+ element :favorited, Boolean
81
+ has_one :user, User
82
+ end
83
+
84
+ statuses = Status.parse(file_contents)
85
+ statuses.each do |status|
86
+ puts status.user.name, status.user.screen_name, status.text, status.source, ''
87
+ end</code></pre>
88
+
89
+ <h2>Support</h2>
90
+ <p>Conversations welcome in the <a href="http://groups.google.com/group/happymapper">google group</a> and bugs/features over at <a href="http://github.com/jnunemaker/happymapper/issues/">Github</a>.</p>
91
+ </div>
92
+
93
+ <div id="footer">
94
+ <p>Created by <a href="http://addictedtonew.com/about/">John Nunemaker</a></p>
95
+ </div>
96
+ </div>
97
+ </body>
98
+ </html>
metadata ADDED
@@ -0,0 +1,122 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dam5s-happymapper
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.2
5
+ platform: ruby
6
+ authors:
7
+ - John Nunemaker
8
+ - Dave Bolton
9
+ - Damien Le Berrigaud
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+
14
+ date: 2009-08-28 00:00:00 -07:00
15
+ default_executable:
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
18
+ name: libxml-ruby
19
+ type: :runtime
20
+ version_requirement:
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "="
24
+ - !ruby/object:Gem::Version
25
+ version: 1.1.3
26
+ version:
27
+ - !ruby/object:Gem::Dependency
28
+ name: echoe
29
+ type: :development
30
+ version_requirement:
31
+ version_requirements: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: "0"
36
+ version:
37
+ description: object to xml mapping library
38
+ email: nunemaker@gmail.com
39
+ executables: []
40
+
41
+ extensions: []
42
+
43
+ extra_rdoc_files:
44
+ - lib/happymapper/attribute.rb
45
+ - lib/happymapper/element.rb
46
+ - lib/happymapper/item.rb
47
+ - lib/happymapper/version.rb
48
+ - lib/happymapper.rb
49
+ - README
50
+ - TODO
51
+ files:
52
+ - examples/amazon.rb
53
+ - examples/current_weather.rb
54
+ - examples/dashed_elements.rb
55
+ - examples/post.rb
56
+ - examples/twitter.rb
57
+ - happymapper.gemspec
58
+ - History
59
+ - lib/happymapper/attribute.rb
60
+ - lib/happymapper/element.rb
61
+ - lib/happymapper/item.rb
62
+ - lib/happymapper/version.rb
63
+ - lib/happymapper.rb
64
+ - License
65
+ - Manifest
66
+ - Rakefile
67
+ - README
68
+ - spec/fixtures/address.xml
69
+ - spec/fixtures/commit.xml
70
+ - spec/fixtures/current_weather.xml
71
+ - spec/fixtures/family_tree.xml
72
+ - spec/fixtures/multiple_namespaces.xml
73
+ - spec/fixtures/pita.xml
74
+ - spec/fixtures/posts.xml
75
+ - spec/fixtures/product_default_namespace.xml
76
+ - spec/fixtures/product_no_namespace.xml
77
+ - spec/fixtures/product_single_namespace.xml
78
+ - spec/fixtures/quarters.xml
79
+ - spec/fixtures/radar.xml
80
+ - spec/fixtures/statuses.xml
81
+ - spec/happymapper_attribute_spec.rb
82
+ - spec/happymapper_element_spec.rb
83
+ - spec/happymapper_item_spec.rb
84
+ - spec/happymapper_spec.rb
85
+ - spec/spec.opts
86
+ - spec/spec_helper.rb
87
+ - TODO
88
+ - website/css/common.css
89
+ - website/index.html
90
+ has_rdoc: true
91
+ homepage: http://happymapper.rubyforge.org
92
+ post_install_message: May you have many happy mappings!
93
+ rdoc_options:
94
+ - --line-numbers
95
+ - --inline-source
96
+ - --title
97
+ - Happymapper
98
+ - --main
99
+ - README
100
+ require_paths:
101
+ - lib
102
+ required_ruby_version: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - ">="
105
+ - !ruby/object:Gem::Version
106
+ version: "0"
107
+ version:
108
+ required_rubygems_version: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: "1.2"
113
+ version:
114
+ requirements: []
115
+
116
+ rubyforge_project: happymapper
117
+ rubygems_version: 1.2.0
118
+ signing_key:
119
+ specification_version: 2
120
+ summary: object to xml mapping library
121
+ test_files: []
122
+