From 42ed5c8563bf2fd220ae438c48e6799a7fdd06f7 Mon Sep 17 00:00:00 2001 From: Erick Date: Sun, 3 May 2015 12:56:25 -0700 Subject: [PATCH 1/5] changed the way that SocketNER retrieves data from the socket server; may address issue #14 and issue #11. --- ner/client.py | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/ner/client.py b/ner/client.py index a532b8d..66010eb 100644 --- a/ner/client.py +++ b/ner/client.py @@ -9,6 +9,7 @@ import json import re +import time import socket from itertools import groupby @@ -123,7 +124,27 @@ def tag_text(self, text): if not isinstance(text, bytes): text = text.encode('utf-8') s.sendall(text) - tagged_text = s.recv(10*len(text)) + + timeout = 2 # Consider making this configurable? + lastResponse = time.time() + tagged_text = '' # Response content will be appended as it is received. + while True: + # If some data has already been received, bail after `timeout` seconds. + if len(tagged_text) > 0 and time.time() - lastResponse > timeout: + break + + # Wait a bit longer if no data has been received, just in case. + elif time.time() - lastResponse > timeout * 2: + break + + data = s.recv(4092) # Retrieve a small chunk of the response. + if data: + tagged_text += data + lastResponse = time.time() + else: # Wait a bit before looking again. + time.sleep(0.1) + + return tagged_text.decode('utf-8') From 8d2719ee489c00d7b4473697debca2a634be9efc Mon Sep 17 00:00:00 2001 From: Erick Peirson Date: Thu, 5 May 2016 16:24:56 -0400 Subject: [PATCH 2/5] added travis file --- .travis.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..5d0c8e9 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,4 @@ +language: python +python: + - "2.7 +script: python run_tests From 2a90079ec4c9a4118b3445ab6712f4900c3e4f2f Mon Sep 17 00:00:00 2001 From: Erick Peirson Date: Thu, 5 May 2016 16:26:22 -0400 Subject: [PATCH 3/5] bump --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 5d0c8e9..96d0051 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,3 +2,4 @@ language: python python: - "2.7 script: python run_tests + From de3cb2fa4e2d069dc4ddec3710529bd7940b60cb Mon Sep 17 00:00:00 2001 From: Erick Peirson Date: Thu, 5 May 2016 16:27:09 -0400 Subject: [PATCH 4/5] bump --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 96d0051..2afc69d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: python python: - - "2.7 + - "2.7 script: python run_tests From 9515b71252ca5d6faddb23ca71228a1b3155db21 Mon Sep 17 00:00:00 2001 From: Erick Peirson Date: Thu, 5 May 2016 16:27:42 -0400 Subject: [PATCH 5/5] bump --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 2afc69d..d0060e0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: python python: - - "2.7 + - "2.7" script: python run_tests