semaphore_classification 0.2.0 → 0.2.1
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/README.rdoc +9 -0
- data/VERSION +1 -1
- data/lib/semaphore_classification.rb +1 -0
- data/lib/semaphore_classification/connection.rb +6 -3
- metadata +4 -4
data/README.rdoc
CHANGED
@@ -14,6 +14,15 @@ To classify documents:
|
|
14
14
|
|
15
15
|
Mostly likely you will specify a :document_uri when classifying documents, but if you do not you will need to specify an :alternate_body
|
16
16
|
|
17
|
+
Note that the classify method will only return the term IDs that matched and not
|
18
|
+
the term itself. In order to set it to return the terms as well, you can use the
|
19
|
+
option:
|
20
|
+
|
21
|
+
Semaphore::Client.decode_term_ids = true
|
22
|
+
|
23
|
+
This will slow down your classifications, however, as a new HTTP request is made
|
24
|
+
for each term in the response.
|
25
|
+
|
17
26
|
== Semaphore::Client.decode_term_id(<term_id>) Options
|
18
27
|
|
19
28
|
This method is used when you have the ID of a term and would like to retrieve
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.1
|
@@ -14,6 +14,7 @@ module Semaphore
|
|
14
14
|
class NotFound < SemaphoreError; end
|
15
15
|
class ServerError < SemaphoreError; end
|
16
16
|
class Unavailable < SemaphoreError; end
|
17
|
+
class Timeout < SemaphoreError; end
|
17
18
|
class DecodeError < SemaphoreError; end
|
18
19
|
class RealmNotSpecified < SemaphoreError; end
|
19
20
|
end
|
@@ -18,16 +18,16 @@ module Semaphore
|
|
18
18
|
private
|
19
19
|
|
20
20
|
def request(method, data)
|
21
|
-
response = send_request
|
21
|
+
response = send_request(method, construct_document(data))
|
22
22
|
|
23
|
-
deconstruct_document
|
23
|
+
deconstruct_document response
|
24
24
|
end
|
25
25
|
|
26
26
|
def send_request(method, data)
|
27
27
|
RestClient.proxy = @proxy unless @proxy.nil?
|
28
28
|
|
29
29
|
begin
|
30
|
-
response = RestClient.post
|
30
|
+
response = RestClient.post(@realm, :XML_INPUT => data, :multipart => true)
|
31
31
|
rescue => e
|
32
32
|
raise_errors(e.response)
|
33
33
|
end
|
@@ -65,6 +65,7 @@ module Semaphore
|
|
65
65
|
|
66
66
|
def deconstruct_document(response)
|
67
67
|
data = Array.new
|
68
|
+
raise(Timeout, "The Semaphore server could not be reached") if response.nil?
|
68
69
|
|
69
70
|
if !response.body.empty?
|
70
71
|
begin
|
@@ -85,6 +86,8 @@ module Semaphore
|
|
85
86
|
end
|
86
87
|
|
87
88
|
def raise_errors(response)
|
89
|
+
raise(Timeout, "The Semaphore server could not be reached") if response.nil?
|
90
|
+
|
88
91
|
case response.code
|
89
92
|
when 500
|
90
93
|
raise ServerError, "Semaphore Classification Server had an internal error. #{response.description}\n\n#{response.body}"
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: semaphore_classification
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 21
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 2
|
9
|
-
-
|
10
|
-
version: 0.2.
|
9
|
+
- 1
|
10
|
+
version: 0.2.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Mauricio Gomes
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-
|
18
|
+
date: 2010-11-01 00:00:00 -04:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|