acts_as_searchable 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1 @@
1
+ Thu Apr 06 22:35:46 CEST 2006
@@ -0,0 +1,165 @@
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>File: README</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="fileHeader">
50
+ <h1>README</h1>
51
+ <table class="header-table">
52
+ <tr class="top-aligned-row">
53
+ <td><strong>Path:</strong></td>
54
+ <td>README
55
+ </td>
56
+ </tr>
57
+ <tr class="top-aligned-row">
58
+ <td><strong>Last Update:</strong></td>
59
+ <td>Thu Apr 06 20:47:16 CEST 2006</td>
60
+ </tr>
61
+ </table>
62
+ </div>
63
+ <!-- banner header -->
64
+
65
+ <div id="bodyContent">
66
+
67
+
68
+
69
+ <div id="contextContent">
70
+
71
+ <div id="description">
72
+ <h1>acts_as_searchable</h1>
73
+ <p>
74
+ This library adds fulltext searching capabilities based on Hyper Estraier
75
+ (<a
76
+ href="http://hyperestraier.sourceforge.net">hyperestraier.sourceforge.net</a>/)
77
+ to an ActiveRecord model.
78
+ </p>
79
+ <h2>Pre-requisites</h2>
80
+ <p>
81
+ A working Hyper Estraier instance, setup instructions:
82
+ </p>
83
+ <ul>
84
+ <li><a
85
+ href="http://hyperestraier.sourceforge.net/nguide-en.html">hyperestraier.sourceforge.net/nguide-en.html</a>
86
+
87
+ </li>
88
+ </ul>
89
+ <h2>Resources</h2>
90
+ <p>
91
+ Install
92
+ </p>
93
+ <ul>
94
+ <li>gem install acts_as_searchable
95
+
96
+ </li>
97
+ </ul>
98
+ <p>
99
+ Bugtracking
100
+ </p>
101
+ <ul>
102
+ <li><a
103
+ href="http://trac.poocs.net/projects/plugins">trac.poocs.net/projects/plugins</a>
104
+
105
+ </li>
106
+ </ul>
107
+ <p>
108
+ Rubyforge project
109
+ </p>
110
+ <ul>
111
+ <li><a
112
+ href="http://rubyforge.org/projects/ar-searchable">rubyforge.org/projects/ar-searchable</a>
113
+
114
+ </li>
115
+ </ul>
116
+ <p>
117
+ RDocs
118
+ </p>
119
+ <ul>
120
+ <li><a
121
+ href="http://ar-searchable.rubyforge.org">ar-searchable.rubyforge.org</a>
122
+
123
+ </li>
124
+ </ul>
125
+ <p>
126
+ Subversion
127
+ </p>
128
+ <ul>
129
+ <li>svn://poocs.net/plugins/acts_as_searchable
130
+
131
+ </li>
132
+ </ul>
133
+
134
+ </div>
135
+
136
+
137
+ </div>
138
+
139
+
140
+ </div>
141
+
142
+
143
+ <!-- if includes -->
144
+
145
+ <div id="section">
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+ <!-- if method_list -->
155
+
156
+
157
+ </div>
158
+
159
+
160
+ <div id="validator-badges">
161
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
162
+ </div>
163
+
164
+ </body>
165
+ </html>
@@ -0,0 +1,140 @@
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>File: acts_as_searchable.rb</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="fileHeader">
50
+ <h1>acts_as_searchable.rb</h1>
51
+ <table class="header-table">
52
+ <tr class="top-aligned-row">
53
+ <td><strong>Path:</strong></td>
54
+ <td>lib/acts_as_searchable.rb
55
+ </td>
56
+ </tr>
57
+ <tr class="top-aligned-row">
58
+ <td><strong>Last Update:</strong></td>
59
+ <td>Wed Apr 05 23:41:36 CEST 2006</td>
60
+ </tr>
61
+ </table>
62
+ </div>
63
+ <!-- banner header -->
64
+
65
+ <div id="bodyContent">
66
+
67
+
68
+
69
+ <div id="contextContent">
70
+
71
+ <div id="description">
72
+ <p>
73
+ Copyright &#169; 2006 Patrick Lenz
74
+ </p>
75
+ <p>
76
+ Permission is hereby granted, free of charge, to any person obtaining a
77
+ copy of this software and associated documentation files (the
78
+ &quot;Software&quot;), to deal in the Software without restriction,
79
+ including without limitation the rights to use, copy, modify, merge,
80
+ publish, distribute, sublicense, and/or sell copies of the Software, and to
81
+ permit persons to whom the Software is furnished to do so, subject to the
82
+ following conditions:
83
+ </p>
84
+ <p>
85
+ The above copyright notice and this permission notice shall be included in
86
+ all copies or substantial portions of the Software.
87
+ </p>
88
+ <p>
89
+ THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND,
90
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
91
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
92
+ NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
93
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
94
+ OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
95
+ USE OR OTHER DEALINGS IN THE SOFTWARE.
96
+ </p>
97
+ <p>
98
+ Thanks: Rick Olson (technoweenie) for his numerous plugins that served as
99
+ an example
100
+ </p>
101
+
102
+ </div>
103
+
104
+ <div id="requires-list">
105
+ <h3 class="section-bar">Required files</h3>
106
+
107
+ <div class="name-list">
108
+ vendor/estraierpure&nbsp;&nbsp;
109
+ </div>
110
+ </div>
111
+
112
+ </div>
113
+
114
+
115
+ </div>
116
+
117
+
118
+ <!-- if includes -->
119
+
120
+ <div id="section">
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+ <!-- if method_list -->
130
+
131
+
132
+ </div>
133
+
134
+
135
+ <div id="validator-badges">
136
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
137
+ </div>
138
+
139
+ </body>
140
+ </html>
@@ -0,0 +1,253 @@
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>File: estraierpure.rb</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="fileHeader">
50
+ <h1>estraierpure.rb</h1>
51
+ <table class="header-table">
52
+ <tr class="top-aligned-row">
53
+ <td><strong>Path:</strong></td>
54
+ <td>lib/vendor/estraierpure.rb
55
+ </td>
56
+ </tr>
57
+ <tr class="top-aligned-row">
58
+ <td><strong>Last Update:</strong></td>
59
+ <td>Wed Apr 05 23:05:01 CEST 2006</td>
60
+ </tr>
61
+ </table>
62
+ </div>
63
+ <!-- banner header -->
64
+
65
+ <div id="bodyContent">
66
+
67
+
68
+
69
+ <div id="contextContent">
70
+
71
+ <div id="description">
72
+ <h1>Pure Ruby Interface of Hyper Estraier</h1>
73
+ <p>
74
+ Hyper Estraier is a full-text search system for communities.
75
+ </p>
76
+ <h2>Introduction</h2>
77
+ <p>
78
+ This is a package implementing the node API of <a
79
+ href="http://hyperestraier.sourceforge.net/">Hyper Estraier</a>. This is a
80
+ pure ruby package. So, it works on Linux, Mac OS X, Windows, and so on. It
81
+ does not depend on the core library of Hyper Estraier. Applications are
82
+ implemented as clients of node servers running on local or remote machines.
83
+ </p>
84
+ <p>
85
+ Though Hyper Estraier itself is released under the terms of the GNU LGPL,
86
+ this package is released under the terms of a BSD-style license.
87
+ </p>
88
+ <h2>Setting</h2>
89
+ <p>
90
+ Get the package of the latest version of Hyper Estraier.
91
+ </p>
92
+ <p>
93
+ Extract the package and enter the sub directory `rubypure&#8217; and
94
+ perform installation.
95
+ </p>
96
+ <pre>
97
+ cd rubypure
98
+ ./configure
99
+ make
100
+ su
101
+ make install
102
+ </pre>
103
+ <p>
104
+ The package `estraierpure&#8217; should be required in each source file of
105
+ application programs and include the module `EstraierPure&#8217; at
106
+ pleasure.
107
+ </p>
108
+ <h2>Example of Gatherer</h2>
109
+ <p>
110
+ The following is the simplest implementation of a gatherer.
111
+ </p>
112
+ <pre>
113
+ require &quot;estraierpure&quot;
114
+ include EstraierPure
115
+
116
+ # create and configure the node connecton object
117
+ node = Node::new
118
+ node.set_url(&quot;http://localhost:1978/node/test1&quot;)
119
+ node.set_auth(&quot;admin&quot;, &quot;admin&quot;)
120
+
121
+ # create a document object
122
+ doc = Document::new
123
+
124
+ # add attributes to the document object
125
+ doc.add_attr(&quot;@uri&quot;, &quot;http://estraier.gov/example.txt&quot;)
126
+ doc.add_attr(&quot;@title&quot;, &quot;Over the Rainbow&quot;)
127
+
128
+ # add the body text to the document object
129
+ doc.add_text(&quot;Somewhere over the rainbow. Way up high.&quot;)
130
+ doc.add_text(&quot;There's a land that I heard of once in a lullaby.&quot;)
131
+
132
+ # register the document object to the node
133
+ unless node.put_doc(doc)
134
+ STDERR.printf(&quot;error: %d\n&quot;, node.status)
135
+ end
136
+ </pre>
137
+ <h2>Example of Searcher</h2>
138
+ <p>
139
+ The following is the simplest implementation of a searcher.
140
+ </p>
141
+ <pre>
142
+ require &quot;estraierpure&quot;
143
+ include EstraierPure
144
+
145
+ # create and configure the node connecton object
146
+ node = Node::new
147
+ node.set_url(&quot;http://localhost:1978/node/test1&quot;)
148
+
149
+ # create a search condition object
150
+ cond = Condition::new
151
+
152
+ # set the search phrase to the search condition object
153
+ cond.set_phrase(&quot;rainbow AND lullaby&quot;)
154
+
155
+ # get the result of search
156
+ nres = node.search(cond, 0);
157
+ if nres
158
+ # for each document in the result
159
+ for i in 0...nres.doc_num
160
+ # get a result document object
161
+ rdoc = nres.get_doc(i)
162
+ # display attributes
163
+ value = rdoc.attr(&quot;@uri&quot;)
164
+ printf(&quot;URI: %s\n&quot;, value) if value
165
+ value = rdoc.attr(&quot;@title&quot;)
166
+ printf(&quot;Title: %s\n&quot;, value) if value
167
+ # display the snippet text */
168
+ printf(&quot;%s&quot;, rdoc.snippet)
169
+ end
170
+ else
171
+ STDERR.printf(&quot;error: %d\n&quot;, node.status)
172
+ end
173
+ </pre>
174
+ <h2>License</h2>
175
+ <pre>
176
+ Copyright (C) 2004-2006 Mikio Hirabayashi
177
+ All rights reserved.
178
+ </pre>
179
+ <p>
180
+ Redistribution and use in source and binary forms, with or without
181
+ modification, are permitted provided that the following conditions are met:
182
+ </p>
183
+ <ul>
184
+ <li>Redistributions of source code must retain the above copyright notice, this
185
+ list of conditions and the following disclaimer.
186
+
187
+ </li>
188
+ <li>Redistributions in binary form must reproduce the above copyright notice,
189
+ this list of conditions and the following disclaimer in the documentation
190
+ and/or other materials provided with the distribution.
191
+
192
+ </li>
193
+ <li>Neither the name of Mikio Hirabayashi nor the names of its contributors may
194
+ be used to endorse or promote products derived from this software without
195
+ specific prior written permission.
196
+
197
+ </li>
198
+ </ul>
199
+ <p>
200
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
201
+ &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
202
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
203
+ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
204
+ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
205
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
206
+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
207
+ OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
208
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
209
+ OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
210
+ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
211
+ </p>
212
+
213
+ </div>
214
+
215
+ <div id="requires-list">
216
+ <h3 class="section-bar">Required files</h3>
217
+
218
+ <div class="name-list">
219
+ uri&nbsp;&nbsp;
220
+ socket&nbsp;&nbsp;
221
+ stringio&nbsp;&nbsp;
222
+ </div>
223
+ </div>
224
+
225
+ </div>
226
+
227
+
228
+ </div>
229
+
230
+
231
+ <!-- if includes -->
232
+
233
+ <div id="section">
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+ <!-- if method_list -->
243
+
244
+
245
+ </div>
246
+
247
+
248
+ <div id="validator-badges">
249
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
250
+ </div>
251
+
252
+ </body>
253
+ </html>