cyx-solr_query 0.2.0 → 0.2.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.
Files changed (4) hide show
  1. data/VERSION +1 -1
  2. data/lib/solr_query.rb +22 -7
  3. data/solr_query.gemspec +1 -1
  4. metadata +1 -1
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.2.2
data/lib/solr_query.rb CHANGED
@@ -48,6 +48,17 @@ class SolrQuery
48
48
  end
49
49
  end
50
50
 
51
+ def match( field, value, args = [] )
52
+ return if value.blank?
53
+ escaping = !args.include?( :raw )
54
+
55
+ if args.include?(:not)
56
+ stream.push("NOT(#{field}:#{like(value, escaping)})")
57
+ else
58
+ stream.push("#{field}:#{like(value, escaping)}")
59
+ end
60
+ end
61
+
51
62
  def term( value, escaping = true )
52
63
  return if value.to_s.strip.blank?
53
64
  stream.push( escape(value, escaping) )
@@ -75,18 +86,22 @@ class SolrQuery
75
86
  end
76
87
 
77
88
  def escape( str, escaping = true )
78
- if escaping
79
- self.class.escape( str )
80
- else
81
- str
82
- end
89
+ ret =
90
+ if escaping
91
+ self.class.escape( str )
92
+ else
93
+ str
94
+ end
95
+ sanitize( ret )
96
+ end
97
+
98
+ def sanitize( str )
99
+ str.gsub(':', ' ')
83
100
  end
84
101
 
85
102
  def quote( str )
86
103
  if str.to_s.index(' ')
87
104
  "\"#{str}\""
88
- elsif str.to_s.index(':')
89
- str.gsub(':', ' ')
90
105
  else
91
106
  str
92
107
  end
data/solr_query.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{solr_query}
5
- s.version = "0.2.0"
5
+ s.version = "0.2.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Cyril David"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cyx-solr_query
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cyril David