gsa 0.11.3 → 0.11.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5abca2a96706faaeca930fb764d64cc67442e4e2
4
- data.tar.gz: d594a1d40c7720b9611935d4de171e90bd935a8d
3
+ metadata.gz: c65dc3f27b816581a96f0b2d609578e887a5f5ed
4
+ data.tar.gz: 8120f0bb607c5d2df5a3f34d3ff42c4432768c4e
5
5
  SHA512:
6
- metadata.gz: d20881560022b5c69bd67d5669329cfb4af1fe84d297a32a4ae0d4cd7541238061d887858c463b6d5e6b9c99ef6c04de43e536578f411b854cbff8273d8d9b0f
7
- data.tar.gz: 31d4506ff1623bb8bdda4143804f4e6ec8e123dfd0cf852c7aec96b7a0fdbbea3983ce44744d4f13ca7eedd49af909fd435734222cba79420b9180c00e208f21
6
+ metadata.gz: 98032d1c8044b4a44d22270c4609e691a6c60fbbcbc15e866e8a1eec89bb0a90e31f842dee3ed176312b5205aa1d99b078eed08276bd28b4c3aa5a05f4addb1a
7
+ data.tar.gz: 87c14dd3e868218bc15c0c3690e44ee97d362438dd150d9f0ceadc5a9f859ac17c58b43899dbed6f8c860337592dac5e985ee52b217eeea8d67d88483c782763
@@ -14,9 +14,9 @@ Gem::Specification.new do |spec|
14
14
  }
15
15
 
16
16
  spec.description = %q{
17
- Harness GSA indexing power easily and immediately with one-line feeding,
18
- searching, and faceting. This gem is tailored for the use in commerce
19
- and other such uses outside the scope of the out-of-the-box GSA
17
+ Harness GSA indexing power easily and immediately with one-line feeding,
18
+ searching, and faceting. This gem is tailored for the use in commerce
19
+ and other such uses outside the scope of the out-of-the-box GSA
20
20
  "internal search".
21
21
  }
22
22
 
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
35
35
  spec.add_development_dependency 'rspec', '~> 2.13.0'
36
36
 
37
37
  spec.add_runtime_dependency 'rest-client', '~> 1.6.7'
38
- spec.add_runtime_dependency 'activesupport', '~> 4.0.0'
38
+ spec.add_runtime_dependency 'activesupport', '> 4.0.0'
39
39
  spec.add_runtime_dependency 'json', '~> 1.8.0'
40
40
  spec.add_runtime_dependency 'nokogiri', '> 1.5.0'
41
41
  end
@@ -5,9 +5,14 @@ module Facade
5
5
  end
6
6
 
7
7
  def search(query, filters={})
8
- raw_results = search_gsa_index(query, filters)
8
+ check_base_uri
9
+ raw_results = GSA::Searcher.search(query, filters)
9
10
  return raw_results if raw_results == GSA::NO_RESULTS
10
- beautify_search_results(raw_results)
11
+ if filters[:embedded]
12
+ raw_results
13
+ else
14
+ beautify_search_results(raw_results)
15
+ end
11
16
  end
12
17
 
13
18
  def uids(pretty_search_results, uid)
@@ -22,12 +27,8 @@ module Facade
22
27
  end
23
28
  end
24
29
 
25
- def search_gsa_index(query, filters={})
26
- if GSA.base_uri
27
- GSA::Searcher.search(query, filters)
28
- else
29
- raise GSA::URINotSetError, GSA::NO_URI_TEXT
30
- end
30
+ def check_base_uri
31
+ raise GSA::URINotSetError, GSA::NO_URI_TEXT unless GSA.base_uri
31
32
  end
32
33
 
33
34
  def beautify_search_results(search_results)
@@ -1,22 +1,31 @@
1
1
  module GSA
2
2
  class Searcher
3
- def self.search(query, args={})
3
+ FIELDS = [
4
+ :tlen, :proxyreload, :proxystylesheet, :emmain, :emsingleres, :emdstyle, :dnavs, :entqr, :entsp,
5
+ :query, :filter, :getfields, :sort, :num, :output, :start, :client, :site, :requiredfields
6
+ ]
7
+
8
+ def self.search(query, args = {})
4
9
  query = clean_query(query)
5
- filter = args[:filter] || GSA::DEFAULT_FILTER
6
- getfields = args[:getfields] || GSA::DEFAULT_GETFIELDS
7
- sort = args[:sort] || GSA::DEFAULT_SORT
8
- num = args[:num] || GSA::DEFAULT_NUM
9
- output = args[:output] || GSA::DEFAULT_OUTPUT
10
- start = args[:start] || GSA::DEFAULT_START
11
- client = args[:client] || GSA::DEFAULT_CLIENT
12
- site = args[:collection] || GSA::DEFAULT_COLLECTION
13
- requiredfields = args[:filters] || nil
10
+ args[:site] = args[:collection] || GSA::DEFAULT_COLLECTION
11
+ args[:requiredfields] = args[:filters] || nil
12
+
13
+ search = "#{GSA.base_uri}/search?q=#{query}"
14
+
15
+ FIELDS.each do |field|
16
+ begin
17
+ value = args[field] || GSA.send("DEFAULT_#{field.capitalize}")
18
+ search = "#{search}&#{field.to_s}=#{value}"
19
+ rescue NoMethodError
20
+ end
21
+ end
14
22
 
15
- search = "#{GSA.base_uri}/search?q=#{query}&filter=#{filter}&site=#{site}&getfields=#{getfields}&sort=#{sort}&num=#{num}&start=#{start}&output=#{output}&client=#{client}"
16
- search = "#{search}&requiredfields=#{clean_query(requiredfields)}" if requiredfields
23
+ puts "URL = #{search}"
17
24
 
18
- search_results = parsed_json( RestClient.get(search) )
25
+ results = RestClient.get(search)
26
+ return results if args[:embedded]
19
27
 
28
+ search_results = parsed_json(results)
20
29
  results_found?(search_results) ? search_results : GSA::NO_RESULTS
21
30
  end
22
31
 
@@ -1,3 +1,3 @@
1
1
  module GSA
2
- VERSION = "0.11.3"
2
+ VERSION = "0.11.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gsa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.3
4
+ version: 0.11.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel J. Long
@@ -9,151 +9,151 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-02-25 00:00:00.000000000 Z
12
+ date: 2015-07-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: '1.3'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ~>
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
27
  version: '1.3'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: webmock
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ~>
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
48
  version: 1.13.0
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ~>
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: 1.13.0
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: vcr
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ~>
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
62
  version: 2.5.0
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
69
  version: 2.5.0
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: simplecov
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ~>
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
76
  version: 0.7.1
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ~>
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: 0.7.1
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rspec
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ~>
88
+ - - "~>"
89
89
  - !ruby/object:Gem::Version
90
90
  version: 2.13.0
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ~>
95
+ - - "~>"
96
96
  - !ruby/object:Gem::Version
97
97
  version: 2.13.0
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: rest-client
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ~>
102
+ - - "~>"
103
103
  - !ruby/object:Gem::Version
104
104
  version: 1.6.7
105
105
  type: :runtime
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ~>
109
+ - - "~>"
110
110
  - !ruby/object:Gem::Version
111
111
  version: 1.6.7
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: activesupport
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ~>
116
+ - - ">"
117
117
  - !ruby/object:Gem::Version
118
118
  version: 4.0.0
119
119
  type: :runtime
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - ~>
123
+ - - ">"
124
124
  - !ruby/object:Gem::Version
125
125
  version: 4.0.0
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: json
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ~>
130
+ - - "~>"
131
131
  - !ruby/object:Gem::Version
132
132
  version: 1.8.0
133
133
  type: :runtime
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - ~>
137
+ - - "~>"
138
138
  - !ruby/object:Gem::Version
139
139
  version: 1.8.0
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: nokogiri
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - '>'
144
+ - - ">"
145
145
  - !ruby/object:Gem::Version
146
146
  version: 1.5.0
147
147
  type: :runtime
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - '>'
151
+ - - ">"
152
152
  - !ruby/object:Gem::Version
153
153
  version: 1.5.0
154
154
  description: "\n Harness GSA indexing power easily and immediately with one-line
155
- feeding, \n searching, and faceting. This gem is tailored for the use in commerce
156
- \n and other such uses outside the scope of the out-of-the-box GSA \n \"internal
155
+ feeding,\n searching, and faceting. This gem is tailored for the use in commerce\n
156
+ \ and other such uses outside the scope of the out-of-the-box GSA\n \"internal
157
157
  search\".\n "
158
158
  email:
159
159
  - dlong@1000bulbs.com
@@ -161,7 +161,7 @@ executables: []
161
161
  extensions: []
162
162
  extra_rdoc_files: []
163
163
  files:
164
- - .gitignore
164
+ - ".gitignore"
165
165
  - Gemfile
166
166
  - LICENSE.txt
167
167
  - README.md
@@ -216,12 +216,12 @@ require_paths:
216
216
  - lib
217
217
  required_ruby_version: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - '>='
219
+ - - ">="
220
220
  - !ruby/object:Gem::Version
221
221
  version: '0'
222
222
  required_rubygems_version: !ruby/object:Gem::Requirement
223
223
  requirements:
224
- - - '>='
224
+ - - ">="
225
225
  - !ruby/object:Gem::Version
226
226
  version: '0'
227
227
  requirements: []