nitro 0.3.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. data/ChangeLog +284 -0
  2. data/{LICENCE → LICENSE} +1 -1
  3. data/README +13 -17
  4. data/RELEASES +13 -1
  5. data/Rakefile +1 -9
  6. data/bin/cluster.rb +5 -5
  7. data/examples/blog/README +45 -0
  8. data/examples/blog/apache.conf +0 -0
  9. data/examples/blog/app.rb +21 -0
  10. data/examples/blog/config.rb +88 -0
  11. data/examples/blog/lib/blog.rb +104 -0
  12. data/examples/blog/log/app.log +117 -0
  13. data/examples/blog/root/comments.xhtml +38 -0
  14. data/examples/blog/root/entry_form.xhtml +18 -0
  15. data/examples/blog/root/index.xhtml +43 -0
  16. data/examples/blog/root/login.xhtml +24 -0
  17. data/examples/blog/root/m/bubbles.gif +0 -0
  18. data/examples/blog/root/m/comments_curve.gif +0 -0
  19. data/examples/blog/root/m/down.gif +0 -0
  20. data/examples/blog/root/m/footer_bg.gif +0 -0
  21. data/examples/blog/root/m/garrow.gif +0 -0
  22. data/examples/blog/root/m/gbull.gif +0 -0
  23. data/examples/blog/root/m/grbull.gif +0 -0
  24. data/examples/blog/root/m/h1_bg.gif +0 -0
  25. data/examples/blog/root/m/header_bg.gif +0 -0
  26. data/examples/blog/root/m/obull.gif +0 -0
  27. data/examples/blog/root/m/page_bg.gif +0 -0
  28. data/examples/blog/root/m/side_title_bg.gif +0 -0
  29. data/examples/blog/root/m/sidebar_bg.gif +0 -0
  30. data/examples/blog/root/recent_posts.xhtml +14 -0
  31. data/examples/blog/root/style.css +201 -0
  32. data/examples/blog/root/style.xsl +118 -0
  33. data/examples/blog/root/view_entry.xhtml +29 -0
  34. data/examples/og/run.rb +27 -29
  35. data/examples/tiny/README +3 -4
  36. data/examples/tiny/app.rb +6 -16
  37. data/examples/tiny/config.rb +30 -0
  38. data/examples/tiny/log/app.log +23 -0
  39. data/examples/tiny/root/{index.sx → index.xhtml} +3 -6
  40. data/lib/{n/std.rb → nitro.rb} +9 -4
  41. data/lib/{n → nitro}/application.rb +13 -7
  42. data/lib/{n → nitro}/config.rb +38 -8
  43. data/lib/{n → nitro}/events.rb +1 -1
  44. data/lib/{n → nitro}/l10n.rb +1 -1
  45. data/lib/{n → nitro}/logger.rb +8 -8
  46. data/lib/{n → nitro}/macros.rb +3 -3
  47. data/lib/{n → nitro}/mixins.rb +1 -1
  48. data/lib/nitro/properties.rb +301 -0
  49. data/lib/{n → nitro}/server.rb +2 -2
  50. data/lib/{n → nitro}/server/appserver.rb +14 -5
  51. data/lib/{n → nitro}/server/cluster.rb +5 -5
  52. data/lib/{n → nitro}/server/cookie.rb +1 -1
  53. data/lib/nitro/server/dispatcher.rb +66 -0
  54. data/lib/{n → nitro}/server/filters.rb +7 -7
  55. data/lib/{n → nitro}/server/filters/autologin.rb +3 -3
  56. data/lib/{n → nitro}/server/fragment.rb +3 -3
  57. data/lib/{n → nitro}/server/handlers.rb +3 -3
  58. data/lib/nitro/server/render.rb +200 -0
  59. data/lib/{n → nitro}/server/request.rb +6 -6
  60. data/lib/{n → nitro}/server/requestpart.rb +5 -5
  61. data/lib/{n → nitro}/server/script.rb +3 -3
  62. data/lib/{n → nitro}/server/server.rb +4 -4
  63. data/lib/{n → nitro}/server/session.rb +3 -3
  64. data/lib/nitro/server/shaders.rb +165 -0
  65. data/lib/{n → nitro}/server/user.rb +1 -1
  66. data/lib/nitro/server/webrick.rb +175 -0
  67. data/lib/nitro/service.rb +25 -0
  68. data/lib/{n → nitro}/sitemap.rb +2 -2
  69. data/lib/{n → nitro}/ui/date-select.rb +0 -0
  70. data/lib/{n → nitro}/ui/pager.rb +1 -1
  71. data/lib/{n → nitro}/ui/popup.rb +1 -1
  72. data/lib/{n → nitro}/ui/select.rb +1 -1
  73. data/lib/{n → nitro}/ui/tabs.rb +1 -1
  74. data/lib/{n → nitro}/utils/array.rb +1 -1
  75. data/lib/{n → nitro}/utils/cache.rb +1 -1
  76. data/lib/{n → nitro}/utils/gfx.rb +1 -1
  77. data/lib/{n → nitro}/utils/hash.rb +1 -1
  78. data/lib/{n → nitro}/utils/html.rb +1 -1
  79. data/lib/{n → nitro}/utils/http.rb +1 -1
  80. data/lib/{n → nitro}/utils/mail.rb +1 -1
  81. data/lib/{n → nitro}/utils/number.rb +1 -1
  82. data/lib/{n → nitro}/utils/pool.rb +1 -1
  83. data/lib/{n → nitro}/utils/string.rb +19 -95
  84. data/lib/{n → nitro}/utils/template.rb +0 -0
  85. data/lib/{n → nitro}/utils/time.rb +1 -1
  86. data/lib/{n → nitro}/utils/uri.rb +3 -3
  87. data/lib/nitro/version.rb +11 -0
  88. data/lib/{n/og.rb → og.rb} +61 -31
  89. data/lib/{n/og → og}/backend.rb +13 -7
  90. data/lib/{n/og → og}/backends/mysql.rb +43 -39
  91. data/lib/{n/og → og}/backends/psql.rb +42 -38
  92. data/lib/{n/og → og}/connection.rb +21 -9
  93. data/lib/{n/og → og}/meta.rb +18 -12
  94. data/lib/xsl/base.xsl +11 -88
  95. data/test/n/server/tc_cookie.rb +1 -1
  96. data/test/n/server/tc_filters.rb +1 -1
  97. data/test/n/server/tc_request.rb +3 -3
  98. data/test/n/server/tc_requestpart.rb +2 -2
  99. data/test/n/server/tc_session.rb +1 -1
  100. data/test/n/tc_events.rb +1 -1
  101. data/test/n/tc_og.rb +16 -18
  102. data/test/n/tc_properties.rb +22 -18
  103. data/test/n/tc_sitemap.rb +2 -2
  104. data/test/n/ui/tc_pager.rb +4 -4
  105. data/test/n/utils/tc_cache.rb +1 -1
  106. data/test/n/utils/tc_hash.rb +1 -1
  107. data/test/n/utils/tc_html.rb +1 -1
  108. data/test/n/utils/tc_http.rb +1 -1
  109. data/test/n/utils/tc_number.rb +1 -1
  110. data/test/n/utils/tc_strings.rb +1 -46
  111. data/test/n/utils/tc_uri.rb +1 -1
  112. metadata +101 -108
  113. data/examples/simple/README +0 -42
  114. data/examples/simple/app.rb +0 -31
  115. data/examples/simple/conf/apache.conf +0 -100
  116. data/examples/simple/conf/config.rb +0 -72
  117. data/examples/simple/conf/debug-config.rb +0 -26
  118. data/examples/simple/conf/live-config.rb +0 -26
  119. data/examples/simple/conf/requires.rb +0 -43
  120. data/examples/simple/ctl +0 -32
  121. data/examples/simple/env.rb +0 -32
  122. data/examples/simple/install.rb +0 -12
  123. data/examples/simple/lib/articles/entities.rb +0 -37
  124. data/examples/simple/lib/articles/lc-en.rb +0 -36
  125. data/examples/simple/lib/articles/methods.rb +0 -55
  126. data/examples/simple/lib/articles/part.rb +0 -57
  127. data/examples/simple/root/add-article.sx +0 -15
  128. data/examples/simple/root/article-form.ss +0 -20
  129. data/examples/simple/root/comments-form.ss +0 -16
  130. data/examples/simple/root/comments.si +0 -30
  131. data/examples/simple/root/index.sx +0 -44
  132. data/examples/simple/root/shader/shader.xsl +0 -100
  133. data/examples/simple/root/shader/style.css +0 -9
  134. data/examples/simple/root/view-article.sx +0 -29
  135. data/examples/tiny/conf/config.rb +0 -62
  136. data/examples/tiny/conf/requires.rb +0 -33
  137. data/examples/tiny/ctl +0 -16
  138. data/lib/n/parts.rb +0 -157
  139. data/lib/n/properties.rb +0 -199
  140. data/lib/n/server/dispatcher.rb +0 -55
  141. data/lib/n/server/handlers/code-handler.rb +0 -182
  142. data/lib/n/server/handlers/page-handler.rb +0 -612
  143. data/lib/n/server/webrick.rb +0 -283
  144. data/lib/n/shaders.rb +0 -166
  145. data/lib/n/sync/clc.rb +0 -110
  146. data/lib/n/sync/handler.rb +0 -229
  147. data/lib/n/sync/server.rb +0 -176
  148. data/lib/p/README +0 -1
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0"?>
2
+
3
+ <span>
4
+ <h2>Recent posts</h2>
5
+ <?r if @entries ?>
6
+ <ul>
7
+ <?r for entry in @entries ?>
8
+ <li><a href="view_entry?oid=#{entry.oid}">#{entry.title}</a></li>
9
+ <?r end ?>
10
+ </ul>
11
+ <?r else ?>
12
+ no entries
13
+ <?r end ?>
14
+ </span>
@@ -0,0 +1,201 @@
1
+ body {
2
+ margin: 0;
3
+ padding: 0;
4
+ font-family: Verdana, sans-serif;
5
+ font-size: small;
6
+ color: #333;
7
+ background: #e0e0e0;
8
+ }
9
+
10
+ a:link {
11
+ color: #69c;
12
+ }
13
+
14
+ a:visited {
15
+ color: #666699;
16
+ }
17
+
18
+ a:hover {
19
+ color: #693;
20
+ }
21
+
22
+ a:active {
23
+ color: #cc3333;
24
+ text-decoration: none;
25
+ }
26
+
27
+ input, textarea {
28
+ font-family: Verdana, sans-serif;
29
+ font-size: small;
30
+ }
31
+
32
+ #page {
33
+ position: relative; top: 50%; left: 50%;
34
+ margin: 0px; margin-left: -400px;
35
+ width: 847px;
36
+ background: url(m/page_bg.gif) repeat-y;
37
+ }
38
+
39
+ #header {
40
+ margin: 0px;
41
+ color: #fff;
42
+ font-family: "Lucida Grande", "Trebuchet MS";
43
+ background: url(m/header_bg.gif) no-repeat top left;
44
+ }
45
+
46
+ #header h1 {
47
+ margin: 0px;
48
+ padding: 45px 60px 50px 160px;
49
+ background: url(m/h1_bg.gif) no-repeat bottom left;
50
+ }
51
+
52
+ #footer {
53
+ height: 40px;
54
+ color: #fff;
55
+ font-size: 80%;
56
+ background: url(m/footer_bg.gif) repeat-y;
57
+ padding-top: 15px; padding-left: 90px;
58
+ }
59
+
60
+ #footer a {
61
+ color: #fff;
62
+ }
63
+
64
+ #footer a:hover {
65
+ color: #fc0;
66
+ }
67
+
68
+ .main {
69
+ float: left;
70
+ margin: 10px; margin-left: 60px;
71
+ padding-left: 2px;
72
+ margin-bottom: 20px;
73
+ width: 460px;
74
+ }
75
+
76
+ .main li {
77
+ list-style: none;
78
+ padding-left: 14px;
79
+ margin-bottom: 3px;
80
+ background: url(m/obull.gif) no-repeat 0 6px;
81
+ }
82
+
83
+ .side {
84
+ color: #999;
85
+ margin: 0 41px 0px 547px;
86
+ padding-top: 25px; padding-left: 20px; padding-right: 20px;
87
+ font-size: 85%;
88
+ line-height: 1.4em;
89
+ background: url(m/sidebar_bg.gif) no-repeat 0 0;
90
+ }
91
+
92
+ .side h2 {
93
+ margin: 0 0 0 0;
94
+ padding: 25px 0 0 30px;
95
+ color: #666;
96
+ height: 32px !important;
97
+ height /**/:57px; /* for IE5/Win */
98
+ font-family: "Lucida Grande", "Trebuchet MS";
99
+ font-size: 130%;
100
+ background: url(m/side_title_bg.gif) no-repeat 0px 15px;
101
+ }
102
+
103
+ .side ul {
104
+ margin-top: 0px;
105
+ padding: 0px;
106
+ }
107
+
108
+ .side li {
109
+ list-style: none;
110
+ margin-left: 0px; margin-bottom: 3px;
111
+ padding-left: 14px;
112
+ background: url(m/gbull.gif) no-repeat 0 6px;
113
+ }
114
+
115
+ .entry {
116
+ border-bottom: 1px solid #eee;
117
+ margin-top: 15px; margin-bottom: 15px;
118
+ }
119
+
120
+ .full-entry {
121
+ margin-top: 15px; margin-bottom: 15px;
122
+ }
123
+
124
+ h2.date {
125
+ margin-top: 0;
126
+ padding-left: 14px;
127
+ font-size: 90%;
128
+ color: #f93;
129
+ background: url(m/down.gif) no-repeat 0 50%;
130
+ }
131
+
132
+ .post {
133
+ padding-left: 15px;
134
+ padding-bottom: 15px;
135
+ }
136
+
137
+ .post h3.title {
138
+ margin-top: 0;
139
+ font-family: "Lucida Grande", "Trebuchet MS";
140
+ font-size: 130%;
141
+ letter-spacing: -1px;
142
+ color: #f63;
143
+ }
144
+
145
+ .post .footer {
146
+ margin: 0; margin-top: 10px;
147
+ padding: 0 0 0 14px;
148
+ font-size: 88%;
149
+ color: #999;
150
+ background: url(m/grbull.gif) no-repeat 0 6px;
151
+ }
152
+
153
+ #comments {
154
+ margin-top: 30px;
155
+ padding-top: 10px;
156
+ font-size: 85%;
157
+ line-height: 1.5em;
158
+ color: #666;
159
+ background: #eee url(m/comments_curve.gif) no-repeat top left;
160
+ }
161
+
162
+ #comments h2 {
163
+ margin: 20px 0 15px 0;
164
+ padding: 8px 0 0 40px;
165
+ font-family: "Lucida Grande", "Trebuchet MS";
166
+ font-size: 130%;
167
+ color: #666;
168
+ background: url(m/bubbles.gif) no-repeat 10px 0;
169
+ height: 29px !important; /* for most browsers */
170
+ height /**/:37px; /* for IE5/Win */
171
+ }
172
+
173
+ #comments form {
174
+ margin: 10px;
175
+ padding-bottom: 10px;
176
+ }
177
+
178
+ .comment {
179
+ padding: 10px;
180
+ border-bottom: 1px solid #ddd;
181
+ }
182
+
183
+ .comment .footer {
184
+ margin: 4px 0 0 0;
185
+ padding: 0 0 0 60px;
186
+ color: #999;
187
+ background: url(m/garrow.gif) no-repeat 44px 2px;
188
+ }
189
+
190
+ .error {
191
+ color: #f00;
192
+ }
193
+
194
+ .clear {
195
+ clear: both;
196
+ height: 0px;
197
+ line-height: 0px;
198
+ font-size: 0px;
199
+ overflow: hidden;
200
+ background-color: #f00;
201
+ }
@@ -0,0 +1,118 @@
1
+ <?xml version="1.0"?>
2
+
3
+ <!--
4
+ A Simple Shader
5
+
6
+ code:
7
+ * George Moschovitis <gm@navel.gr>
8
+
9
+ (c) 2004 Navel, all rights reserved.
10
+ $Id: style.xsl 149 2004-11-13 19:52:32Z gmosx $
11
+ -->
12
+
13
+ <!DOCTYPE shader
14
+ [
15
+ <!ENTITY nbsp "<![CDATA[&nbsp;]]>">
16
+ <!ENTITY copy "<![CDATA[&copy;]]>">
17
+ <!ENTITY euro "<![CDATA[&euro;]]>">
18
+ <!ENTITY laquo "<![CDATA[&laquo;]]>">
19
+ <!ENTITY raquo "<![CDATA[&raquo;]]>">
20
+ ]>
21
+
22
+ <xsl:stylesheet
23
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
24
+ xmlns:xl="http://www.w3.org/1999/xlink"
25
+ xmlns:x="http://www.navel.gr/xml/shader.xsd" version="1.0"
26
+ exclude-result-prefixes="x xl">
27
+
28
+ <xsl:include href="../../lib/xsl/base.xsl" />
29
+
30
+ <xsl:output method="xml" indent="yes" encoding="iso-8859-1" />
31
+
32
+ <xsl:template name="x:head">
33
+ <head>
34
+ <title>#$name</title>
35
+ <meta name="title" content="Blog" />
36
+ <meta name="description" content="Example" />
37
+ <meta name="keywords" content="nitro, example, blog" />
38
+ <meta name="category" content="example" />
39
+ <meta name="robots" content="index, follow" />
40
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
41
+
42
+ <xsl:apply-templates select="x:block[@id='meta']"/>
43
+
44
+ <base href="#$srv_url/" />
45
+ <link href="/style.css" rel="stylesheet" type="text/css" media="screen" />
46
+
47
+ <xsl:apply-templates select="x:cell[@id='head']"/>
48
+ </head>
49
+ </xsl:template>
50
+
51
+ <xsl:template name="x:header">
52
+ <div id="header">
53
+ <h1>#$name</h1>
54
+ </div>
55
+ </xsl:template>
56
+
57
+ <xsl:template name="x:footer">
58
+ <div id="footer">
59
+ </div>
60
+ </xsl:template>
61
+
62
+ <!--
63
+ can only include x:blocks, all other templates are ignored
64
+ -->
65
+ <xsl:template match="x:page">
66
+ <html>
67
+ <xsl:call-template name="x:head" />
68
+ <body>
69
+ <div id="page">
70
+
71
+ <xsl:call-template name="x:header" />
72
+
73
+ <xsl:apply-templates select="x:cell[@id='top']" />
74
+
75
+ <div class="block main">
76
+ <xsl:apply-templates select="x:cell[@id='main']" />
77
+ </div>
78
+
79
+ <div class="block side">
80
+ <h2>About</h2>
81
+ This is a simple blog powered by <a href="http://www.navel.gr/nitro">
82
+ Nitro</a> Web Engine. Have a look at the source code and enjoy
83
+ the power of Ruby.
84
+ <ruby>unless session['owner']</ruby>
85
+ <p><a href="login">Login</a> as owner.</p>
86
+ <ruby>else</ruby>
87
+ <p><a href="logout">Logout</a>.</p>
88
+ <ruby>end</ruby>
89
+
90
+ <xsl:apply-templates select="x:cell[@id='side']" />
91
+
92
+ <h2>Linkage</h2>
93
+ <ul>
94
+ <li><a target="_new" href="http://www.navel.gr">Navel Ltd</a></li>
95
+ <li><a target="_new" href="http://www.navel.gr/nitro">Nitro Web Engine</a></li>
96
+ <li><a target="_new" href="http://www.ruby-lang.org">Ruby</a></li>
97
+ <li><a target="_new" href="http://www.blogger.com">Blogger</a></li>
98
+ <li><a target="_new" href="http://www.w3c.org">W3 Consortium</a></li>
99
+ </ul>
100
+
101
+ <br />
102
+ <p>
103
+ powered by <b><a href="http://www.navel.gr/nitro">Nitro</a></b>,
104
+ Skin from <a href="http://www.blogger.com">Blogger.com</a>.
105
+ </p>
106
+ </div>
107
+
108
+ <div class="clear">.</div>
109
+
110
+ <xsl:apply-templates select="x:cell[@id='bottom']" />
111
+
112
+ <xsl:call-template name="x:footer" />
113
+ </div>
114
+ </body>
115
+ </html>
116
+ </xsl:template>
117
+
118
+ </xsl:stylesheet>
@@ -0,0 +1,29 @@
1
+ <?xml version="1.0"?>
2
+
3
+ <x:page xmlns:x="http://www.navel.gr/xml/shader.xsd">
4
+
5
+ <x:cell id="main">
6
+
7
+ <div class="full-@entry">
8
+ <h2 class="date">#{@entry.create_time.strftime('%B %e, %G')}</h2>
9
+ <div class="post">
10
+ <h3 class="title">#{@entry.title}</h3>
11
+ #{@entry.body}
12
+ <div class="footer">
13
+ posted by gmosx at #{@entry.create_time.strftime('%R %p')}
14
+ <?r if session['owner'] ?>
15
+ [<a href="del_entry?oid=#{@entry.oid}">del</a>]
16
+ <?r end ?>
17
+ </div>
18
+ </div>
19
+ </div>
20
+
21
+ <div id="comments">
22
+ <include href="comments" />
23
+ </div>
24
+
25
+ <p><a href="/">Home</a></p>
26
+ </x:cell>
27
+
28
+ </x:page>
29
+
@@ -6,13 +6,13 @@
6
6
  # * George Moschovitis <gm@navel.gr>
7
7
  #
8
8
  # (c) 2004 Navel, all rights reserved.
9
- # $Id: run.rb 124 2004-11-01 12:34:17Z gmosx $
9
+ # $Id: run.rb 155 2004-11-13 20:32:12Z gmosx $
10
10
 
11
11
  $:.unshift "../../lib"
12
12
 
13
- require "n/std"
14
- require "n/logger"
15
- require "n/og"
13
+ require "nitro"
14
+ require "nitro/logger"
15
+ require "og"
16
16
 
17
17
  # Full debug information.
18
18
  $DBG = true
@@ -20,7 +20,7 @@ $DBG = true
20
20
  # = A child class
21
21
  #
22
22
  class Comment
23
- prop_accessor String, :body
23
+ prop_accessor :body, String
24
24
 
25
25
  def initialize(body = nil)
26
26
  @body = body
@@ -43,9 +43,9 @@ class Part; end
43
43
  # = A Parent class
44
44
  #
45
45
  class User
46
- prop_accessor String, :name
46
+ prop_accessor :name, String
47
47
 
48
- has_many UserComment, :comments
48
+ has_many :comments, UserComment
49
49
 
50
50
  def initialize(name = nil)
51
51
  @name = name
@@ -59,22 +59,24 @@ end
59
59
  # = A parent class
60
60
  #
61
61
  class Article
62
- prop_accessor String, :title
63
- prop_accessor String, :body
62
+ prop_accessor :title, String
63
+ prop_accessor :body, String
64
64
  # override the default O->R mapping
65
- prop_accessor Fixnum, "smallint DEFAULT 1", :level
66
- # store a Ruby Hash in the Database. Marshal
65
+ prop_accessor :level, Fixnum, :sql => "smallint DEFAULT 1"
66
+ # store a Ruby Hash in the Database. YAML
67
67
  # is used for serializing the attribute.
68
- prop_accessor Hash, :options
69
- prop_accessor Time, :create_time
68
+ # no need to define the class, but you can if you want.
69
+ prop_accessor :options
70
+ # exactly like the standard Ruby attr creates only the reader.
71
+ prop :create_time, Time
70
72
 
71
73
  # define comment relation:
72
- has_many ArticleComment, :comments
74
+ has_many :comments, ArticleComment
73
75
 
74
- has_many Part, :parts
76
+ has_many :parts, Part
75
77
 
76
78
  # define author relation:
77
- belongs_to User, :author
79
+ belongs_to :author, User
78
80
 
79
81
  # this attribute is NOT stored in the db.
80
82
  attr_accessor :other_options
@@ -97,20 +99,20 @@ end
97
99
  # = Article comment
98
100
  #
99
101
  class ArticleComment < Comment
100
- belongs_to Article, :article
102
+ belongs_to :article, Article
101
103
  end
102
104
 
103
105
  # = User comment
104
106
  #
105
107
  class UserComment < Comment
106
- belongs_to User, :author
108
+ belongs_to :author, User
107
109
  end
108
110
 
109
111
  # = Another child class
110
112
  #
111
113
  class Part
112
- prop_accessor String, :name
113
- belongs_to Article, :article
114
+ prop_accessor :name, String
115
+ belongs_to :article, Article
114
116
 
115
117
  def initialize(name = nil)
116
118
  @name = name
@@ -126,7 +128,7 @@ end
126
128
  $log = Logger.new(STDERR);
127
129
 
128
130
  # Og configuration.
129
- =begin
131
+
130
132
  config = {
131
133
  :address => "localhost",
132
134
  :database => "test",
@@ -135,7 +137,7 @@ config = {
135
137
  :password => "navelrulez",
136
138
  :connection_count => 1
137
139
  }
138
- =end
140
+ =begin
139
141
  config = {
140
142
  :address => "localhost",
141
143
  :database => "test",
@@ -144,18 +146,14 @@ config = {
144
146
  :password => "navelrulez",
145
147
  :connection_count => 1
146
148
  }
147
-
149
+ =end
148
150
  # Cleanup the database for earlier executions
149
151
 
150
- N::Og.drop_db!(config)
152
+ Og::Database.drop_db!(config)
151
153
 
152
154
  # Initialize Og
153
155
 
154
- $og = N::Og.new(config)
155
-
156
- # Define the managed objects
157
-
158
- $og.manage_classes(Article, User, ArticleComment, UserComment, Part)
156
+ $og = Og::Database.new(config)
159
157
 
160
158
  # Get an Og connection for this thread.
161
159