onemorecloud-websolr-rails 1.4.1 → 1.4.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/CHANGELOG +2 -0
- data/VERSION +1 -1
- data/lib/acts_as_solr.rb +3 -1
- data/lib/class_methods.rb +4 -0
- data/lib/solr/connection.rb +11 -0
- data/websolr-rails.gemspec +4 -4
- metadata +6 -5
data/CHANGELOG
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.4.
|
1
|
+
1.4.3
|
data/lib/acts_as_solr.rb
CHANGED
@@ -32,7 +32,9 @@ require File.dirname(__FILE__) + '/deprecation'
|
|
32
32
|
require File.dirname(__FILE__) + '/search_results'
|
33
33
|
require File.dirname(__FILE__) + '/lazy_document'
|
34
34
|
require File.dirname(__FILE__) + '/will_paginate_support'
|
35
|
+
|
35
36
|
module ActsAsSolr
|
37
|
+
class ConnectionError < RuntimeError; end
|
36
38
|
|
37
39
|
class Post
|
38
40
|
def self.execute(request)
|
@@ -51,7 +53,7 @@ module ActsAsSolr
|
|
51
53
|
connection = Solr::Connection.new(url)
|
52
54
|
return connection.send(request)
|
53
55
|
rescue
|
54
|
-
raise "Couldn't connect to the Solr server at #{url}. #{$!}"
|
56
|
+
raise ActsAsSolr::ConnectionError, "Couldn't connect to the Solr server at #{url}. #{$!}"
|
55
57
|
false
|
56
58
|
end
|
57
59
|
end
|
data/lib/class_methods.rb
CHANGED
@@ -116,6 +116,10 @@ module ActsAsSolr #:nodoc:
|
|
116
116
|
return parse_results(data, options) if data
|
117
117
|
end
|
118
118
|
|
119
|
+
def all_multi_solr_search(query, options = {})
|
120
|
+
parse_query(query, options, "")
|
121
|
+
end
|
122
|
+
|
119
123
|
# Finds instances of a model and returns an array with the ids:
|
120
124
|
# Book.find_id_by_solr "rails" => [1,4,7]
|
121
125
|
# The options accepted are the same as find_by_solr
|
data/lib/solr/connection.rb
CHANGED
@@ -16,6 +16,8 @@ require 'net/http'
|
|
16
16
|
|
17
17
|
class Solr::Connection
|
18
18
|
attr_reader :url, :autocommit, :connection
|
19
|
+
|
20
|
+
ILLEGAL_XML_CHARS = /[\x00-\x1F]/
|
19
21
|
|
20
22
|
# create a connection to a solr instance using the url for the solr
|
21
23
|
# application context:
|
@@ -155,6 +157,15 @@ class Solr::Connection
|
|
155
157
|
# send the http post request to solr; for convenience there are shortcuts
|
156
158
|
# to some requests: add(), query(), commit(), delete() or send()
|
157
159
|
def post(request)
|
160
|
+
if ENV["DEBUG"]
|
161
|
+
puts "POST #{@url.path + "/" + request.handler}"
|
162
|
+
puts "-- DATA -------------------"
|
163
|
+
puts request.to_s
|
164
|
+
puts "-- END DATA ---------------"
|
165
|
+
end
|
166
|
+
|
167
|
+
request = request.gsub(ILLEGAL_XML_CHARS, '')
|
168
|
+
|
158
169
|
response = @connection.post(@url.path + "/" + request.handler,
|
159
170
|
request.to_s,
|
160
171
|
{ "Content-Type" => request.content_type })
|
data/websolr-rails.gemspec
CHANGED
@@ -4,12 +4,12 @@
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
|
-
s.name = %q{websolr-rails}
|
8
|
-
s.version = "1.4.
|
7
|
+
s.name = %q{onemorecloud-websolr-rails}
|
8
|
+
s.version = "1.4.3"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kyle Maxwell"]
|
12
|
-
s.date = %q{2009-
|
12
|
+
s.date = %q{2009-10-10}
|
13
13
|
s.default_executable = %q{websolr}
|
14
14
|
s.description = %q{acts_as_solr compatible gem for websolr}
|
15
15
|
s.email = %q{kyle@kylemaxwell.com}
|
@@ -190,7 +190,7 @@ Gem::Specification.new do |s|
|
|
190
190
|
s.homepage = %q{http://github.com/onemorecloud/websolr-rails}
|
191
191
|
s.rdoc_options = ["--main", "README.rdoc", "README.rdoc", "lib"]
|
192
192
|
s.require_paths = ["lib"]
|
193
|
-
s.rubygems_version = %q{1.3.
|
193
|
+
s.rubygems_version = %q{1.3.4}
|
194
194
|
s.summary = %q{acts_as_solr compatible gem for websolr}
|
195
195
|
s.test_files = [
|
196
196
|
"test/db/connections/mysql/connection.rb",
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onemorecloud-websolr-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kyle Maxwell
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-10-10 00:00:00 -07:00
|
13
13
|
default_executable: websolr
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -199,9 +199,10 @@ files:
|
|
199
199
|
- test/unit/solr_instance.rb
|
200
200
|
- test/unit/test_helper.rb
|
201
201
|
- websolr-rails.gemspec
|
202
|
-
has_rdoc:
|
202
|
+
has_rdoc: true
|
203
203
|
homepage: http://github.com/onemorecloud/websolr-rails
|
204
|
-
licenses:
|
204
|
+
licenses: []
|
205
|
+
|
205
206
|
post_install_message:
|
206
207
|
rdoc_options:
|
207
208
|
- --main
|
@@ -225,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
225
226
|
requirements: []
|
226
227
|
|
227
228
|
rubyforge_project:
|
228
|
-
rubygems_version: 1.3.
|
229
|
+
rubygems_version: 1.3.4
|
229
230
|
signing_key:
|
230
231
|
specification_version: 3
|
231
232
|
summary: acts_as_solr compatible gem for websolr
|