Skip to content

Commit b6f4e17

Browse files
author
Chris Park
committed
Merge branch 'develop'
2 parents 3d409ad + 4391a03 commit b6f4e17

File tree

84 files changed

+3768
-2212
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

84 files changed

+3768
-2212
lines changed

.gitmodules

Lines changed: 0 additions & 3 deletions
This file was deleted.

.travis.yml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,7 @@ node_js:
44
- "0.12.7"
55
- "1.0.4"
66
- "4.2.2"
7-
# Handle git submodules yourself
8-
git:
9-
submodules: false
10-
# Use sed to replace the SSH URL with the public URL, then initialize submodules
117
before_install:
12-
- sed -i 's/[email protected]:/https:\/\/github.com\//' .gitmodules
13-
- git submodule update --init --recursive
148
- npm install -g npm
159
before_script:
1610
- npm install grunt-cli -g
@@ -19,6 +13,6 @@ notifications:
1913
slack:
2014
rooms:
2115
- secure: 4FRaTAAiYyeUvgw2RhmblgbNiJO4wmd34OBgWcwURjP9oVmFfSwR9r1LNCdUGxrPOghexSY2DjXIuvIrfTfi/xYbhHb3Kw7PEAyB8IuBMlKtY4NSFou62S2VhYpxyg58T+C7P2zi0eDnDE06pwTCoGPaimxMZQY91yQ0yPYDPVXbwe5SjEgamzlwGBxlS/0A6w1iCPHg27/iO2hXtdW3oLS2I0F/Q8Q95RBkX9hpg6yqHlTV7jRbSqvQ9OFBqk/tXMHQvhoPDGgCgQDuykJuaAYx7g9d0YL0eEYYOh9B/TJ/kNOwdRFBu5kuQ2/nFS5Z0S3Y3UIhdYjUmm9gSMnwIbYnrW22EqDJLoT9Zi3Gv7Prg/8/fSkWsof7BJTMSuXUqO1AxDGKIxFv9uSF1daZoY+AC1ooU1xDu1nNvWVYPlkwEdDxxmHpFkGT3ESTZYccPovQl8Z5K0I1BBAVdJKDzm07lE6VHbxkKcvK6gG0TN3uLxnSlQtjkfJ+aVMq1kxeVsB9lEsKs9oezsKzzbftMm525aXPg+OAv+31CUFWxvT/p4ps8Q+AV6aZpoPHkpK8VryyNirUeZ/m4m4ebDHhD9vcN+JqE9gzshT+0U3g19SvLiUMQtbuZ2BUvrq2hh2LEGs03AFZaNg9AEUVA1PQRhV5NILyoS/lbiBYJPT39Sg=
22-
- secure: D4VxkkZlj7uaaFbqEBITkJCusVeii436N8X6GijuosUSaee9lqGYUF5ZS9lV6VGMKs719IfSJsCc2v/N4nc9Y/8AKgXd7AWHUwaRR+MC6rLwv9xqH8ZlkTPUKHUXkUQe1f9042PcMxzYa9r0+uKniM9l915Yx0PLaawJrWe3ZVig/uBhn5FueLhtUACzLJcjNcri/BKEgmP2+EgUsupUhujd0MsQd8xN5YIIv6VM5oD0XWXZCnBqHoZK+Qq7LfwDnTmUk7juqTOAjefF6v8IJTDELvSdK9QW7f9x7h0ICabIrI+Gl4IbNLJYEnELBi+X7da2YJUTgUoQrlBB4z+T8KybD8myqV/pJc1n0xrk84g1MtYQ3ahZn7eD3DTjIvK+ML8qAAGwxibF8VsV+GSoo5FcB6e3vV+glHODlwszstVs11PpL1grurVdoa5HPhUbm1jtQixOwO7h8GgGpwO20PuMLfyOfTjfoMcJ3ISjGNHRmUwcCH9avcaHqMLPLHht0z+8inVlDZeTcN+Wi8tk1YXwuQYUkTW46iFmoZNGdygRjTu43h9hCqdG7vcoKrR8oDbMT8X/sfs+z/UaBbuYBr9dT8rrdKJoa9115PaYpCs529DLrw1iGmzr5CkAXDElc1y2F352nwVS+dX7/OIQz1/dbT1ozWQ9Blx6ez5XN84=
23-
- secure: g/eOC2QCn7oUW234u/P1kmh9OASO9t5g6iC+DflNdnedHnpw8IEG9CsLAnNynOY0KvC/2/Q6BAIFpT/qO8BPdaC2eQnd9LDurOXExxvjKZgTujhqgzijJGzVPSL8//hafj0Ec2+iJZFo/DYMPqUpYDsiKxX53+SMz9/GN/PKVKsI7bzuaOm04xXktU0A76pVfaG0N/qFSVHI64SShACoUXRpTzyUbmksRgzk7FB162R+TH1soPsR3vPh8c2SSWC9msrDc4iljcBhSFTdjL68z+srjDPYMSoOcFXXFNP+dmL+Q0veL/E4e40e7CWIU1O3grOcEcCkaSoZVSpGduNnCst8h6MpgauPtrgwHk4zGMoSl+L6al+nFo/3h2dXeebrQ0tY/hRfZi4Q8xwqG9083TBqi71fTpoFZ7sNtrY4Kdtl5Oa2CFUo7lVn1JB9qQwSa0eai3Whv0RyRqqQe77aDUj0dfD2R3Q61rX5OF/f++W0XtNwHQubzmj8HD/cFneShIQsbl9KgYXoR6HiXcbBiNdmmZjSrzkPYh7vlsujYrz6Cg2msKybWJ/FfOz0tS1cjlCtiCMOTExN6tEF8YCp9l+s+5RLe61pgFPy4Snr9pEjuTS5DYliTyZMY2ZZC1clBQtgE8E2qCG1QSzqnqqiGxj2K4zmLPpB4y1XpW8e3yk=
16+
# - secure: D4VxkkZlj7uaaFbqEBITkJCusVeii436N8X6GijuosUSaee9lqGYUF5ZS9lV6VGMKs719IfSJsCc2v/N4nc9Y/8AKgXd7AWHUwaRR+MC6rLwv9xqH8ZlkTPUKHUXkUQe1f9042PcMxzYa9r0+uKniM9l915Yx0PLaawJrWe3ZVig/uBhn5FueLhtUACzLJcjNcri/BKEgmP2+EgUsupUhujd0MsQd8xN5YIIv6VM5oD0XWXZCnBqHoZK+Qq7LfwDnTmUk7juqTOAjefF6v8IJTDELvSdK9QW7f9x7h0ICabIrI+Gl4IbNLJYEnELBi+X7da2YJUTgUoQrlBB4z+T8KybD8myqV/pJc1n0xrk84g1MtYQ3ahZn7eD3DTjIvK+ML8qAAGwxibF8VsV+GSoo5FcB6e3vV+glHODlwszstVs11PpL1grurVdoa5HPhUbm1jtQixOwO7h8GgGpwO20PuMLfyOfTjfoMcJ3ISjGNHRmUwcCH9avcaHqMLPLHht0z+8inVlDZeTcN+Wi8tk1YXwuQYUkTW46iFmoZNGdygRjTu43h9hCqdG7vcoKrR8oDbMT8X/sfs+z/UaBbuYBr9dT8rrdKJoa9115PaYpCs529DLrw1iGmzr5CkAXDElc1y2F352nwVS+dX7/OIQz1/dbT1ozWQ9Blx6ez5XN84=
17+
# - secure: g/eOC2QCn7oUW234u/P1kmh9OASO9t5g6iC+DflNdnedHnpw8IEG9CsLAnNynOY0KvC/2/Q6BAIFpT/qO8BPdaC2eQnd9LDurOXExxvjKZgTujhqgzijJGzVPSL8//hafj0Ec2+iJZFo/DYMPqUpYDsiKxX53+SMz9/GN/PKVKsI7bzuaOm04xXktU0A76pVfaG0N/qFSVHI64SShACoUXRpTzyUbmksRgzk7FB162R+TH1soPsR3vPh8c2SSWC9msrDc4iljcBhSFTdjL68z+srjDPYMSoOcFXXFNP+dmL+Q0veL/E4e40e7CWIU1O3grOcEcCkaSoZVSpGduNnCst8h6MpgauPtrgwHk4zGMoSl+L6al+nFo/3h2dXeebrQ0tY/hRfZi4Q8xwqG9083TBqi71fTpoFZ7sNtrY4Kdtl5Oa2CFUo7lVn1JB9qQwSa0eai3Whv0RyRqqQe77aDUj0dfD2R3Q61rX5OF/f++W0XtNwHQubzmj8HD/cFneShIQsbl9KgYXoR6HiXcbBiNdmmZjSrzkPYh7vlsujYrz6Cg2msKybWJ/FfOz0tS1cjlCtiCMOTExN6tEF8YCp9l+s+5RLe61pgFPy4Snr9pEjuTS5DYliTyZMY2ZZC1clBQtgE8E2qCG1QSzqnqqiGxj2K4zmLPpB4y1XpW8e3yk=
2418

CHANGES.txt

Lines changed: 0 additions & 3 deletions
This file was deleted.

README.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,10 @@ api.rosette(endpoint, function(err, res){
3030
| ------------- |------------- |-------------
3131
| content | categories, entities, language, morphology, relationships, sentences, sentiment, tokens | Either content or contentUri required |
3232
| contentUri | categories, entities, language, morphology, relationships, sentences, sentiment, tokens | Either content or contentUri required |
33-
| contentType | categories, entities, language, morphology, relationships, sentences, sentiment, tokens | No |
34-
| language | categories, entities, language, morphology, relationships, sentences, sentiment, tokens, matchedName | No |
33+
| language | categories, entities, language, morphology, relationships, sentences, sentiment, tokens, name similarity | No |
3534
| documentFile | categories, entities, language, morphology, relationships, sentences, sentiment, tokens | No |
36-
| name1 | name matching | Yes |
37-
| name2 | name matching| Yes |
35+
| name1 | name similarity | Yes |
36+
| name2 | name similarity| Yes |
3837
| name | name translation | Yes |
3938
| targetLanguage | name translation | Yes |
4039
| entityType | name translation | No |

docker/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ RUN apt-get -y update && apt-get install -y git && apt-get install -y vim && apt
66

77
ENV API_KEY api_key
88

9+
RUN mkdir /nodejs-dev
910
COPY runAll.sh /nodejs-dev/runAll.sh
1011
RUN chmod 755 /nodejs-dev/runAll.sh
1112

@@ -14,4 +15,4 @@ WORKDIR /nodejs-dev
1415

1516
CMD ./runAll.sh $API_KEY $FILENAME $ALT_URL $GIT_USERNAME $VERSION
1617

17-
VOLUME ["/source"]
18+
VOLUME ["/source"]

docker/runAll.sh

Lines changed: 74 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
#!/bin/bash
22

3+
ping_url="https://api.rosette.com/rest/v1/"
4+
retcode=0
5+
6+
#------------------- Functions -------------------------------------
7+
38
#Gets called when the user doesn't provide any args
49
function HELP {
510
echo -e "\nusage: source_file.py --key API_KEY [--url ALT_URL]"
@@ -12,6 +17,55 @@ function HELP {
1217
exit 1
1318
}
1419

20+
#Checks if Rosette API key is valid
21+
function checkAPI() {
22+
match=$(curl "${ping_url}ping" -H "X-RosetteAPI-Key: ${API_KEY}" | grep -o "forbidden")
23+
if [ ! -z $match ]; then
24+
echo -e "\nInvalid Rosette API Key"
25+
exit 1
26+
fi
27+
}
28+
29+
# add the trailing slash of the alt_url if necessary
30+
function cleanURL() {
31+
if [ ! -z "${ALT_URL}" ]; then
32+
if [[ ! ${ALT_URL} == */ ]]; then
33+
ALT_URL="${ALT_URL}/"
34+
echo "No Slash detected"
35+
fi
36+
ping_url=${ALT_URL}
37+
fi
38+
}
39+
40+
#Checks for valid url
41+
function validateURL() {
42+
match=$(curl "${ping_url}ping" -H "X-RosetteAPI-Key: ${API_KEY}" | grep -o "Rosette API")
43+
if [ "${match}" = "" ]; then
44+
echo -e "\n${ping_url} server not responding\n"
45+
exit 1
46+
fi
47+
}
48+
49+
function runExample() {
50+
echo -e "\n---------- ${1} start -------------"
51+
result=""
52+
if [ -z ${ALT_URL} ]; then
53+
result="$(node ${1} --key ${API_KEY} 2>&1 )"
54+
else
55+
result="$(node ${1} --key ${API_KEY} --url ${ALT_URL} 2>&1 )"
56+
fi
57+
echo "${result}"
58+
echo -e "\n---------- ${1} end -------------"
59+
if [[ $result == *"Exception"* ]]; then
60+
retcode=1
61+
elif [[ $result == *"processingFailure"* ]]; then
62+
retcode=1
63+
fi
64+
}
65+
66+
67+
#------------------- Functions End ----------------------------------
68+
1569
#Gets API_KEY, FILENAME and ALT_URL if present
1670
while getopts ":API_KEY:FILENAME:ALT_URL:GIT_USERNAME:VERSION" arg; do
1771
case "${arg}" in
@@ -38,38 +92,28 @@ while getopts ":API_KEY:FILENAME:ALT_URL:GIT_USERNAME:VERSION" arg; do
3892
esac
3993
done
4094

41-
#Checks if Rosette API key is valid
42-
function checkAPI {
43-
match=$(curl "https://api.rosette.com/rest/v1/ping" -H "user_key: ${API_KEY}" | grep -o "forbidden")
44-
if [ ! -z $match ]; then
45-
echo -e "\nInvalid Rosette API Key"
46-
exit 1
47-
fi
48-
}
95+
cleanURL
96+
97+
validateURL
4998

5099
#Copy the mounted content in /source to current WORKDIR
51-
cp -r -n /source/* .
100+
cp -r -n /source/. .
52101

53102
#Run unit tests
54103

55-
cd mock-data
56-
mkdir status
57-
mkdir other
58-
cd response
59-
find . -name "*.status" -exec mv {} ../status \;
60-
find . -name "info.json" -exec mv {} ../other \;
61-
find . -name "ping.json" -exec mv {} ../other \;
62-
find . -name "checkVersion.json" -exec mv {} ../other \;
63-
find . -name "retry-fail.json" -exec mv {} ../other \;
64-
find . -name "bad_info.json" -exec mv {} ../other \;
65-
66-
cd ../../tests
104+
cd tests
67105
npm install -g mocha
68106
npm install mocha
69107
npm install -g istanbul
70108
npm install chai
71109
npm install nock
110+
npm install -g eslint
111+
npm install multipart-stream
72112
istanbul cover _mocha unittests.js
113+
#run eslint
114+
eslint ../lib/**
115+
116+
73117

74118
#Run the examples
75119
if [ ! -z ${API_KEY} ]; then
@@ -79,24 +123,17 @@ if [ ! -z ${API_KEY} ]; then
79123
npm install argparse
80124
npm install temporary
81125
if [ ! -z ${FILENAME} ]; then
82-
if [ ! -z ${ALT_URL} ]; then
83-
node ${FILENAME} --key ${API_KEY} --url ${ALT_URL}
84-
else
85-
node ${FILENAME} --key ${API_KEY}
86-
fi
87-
elif [ ! -z ${ALT_URL} ]; then
88-
find . -name '*.js' -exec node {} --key ${API_KEY} --url ${ALT_URL} \;
126+
runExample ${FILENAME}
89127
else
90-
find . -name '*.js' -exec node {} --key ${API_KEY} \;
128+
for file in *.js; do
129+
runExample $file
130+
done
91131
fi
92132
else
93133
HELP
134+
retcode=1
94135
fi
95136

96-
#run eslint
97-
npm install -g eslint
98-
eslint ../lib/**
99-
100137
#Generate gh-pages and push them to git account (if git username is provided)
101138
if [ ! -z ${GIT_USERNAME} ] && [ ! -z ${VERSION} ]; then
102139
#clone nodejs git repo
@@ -116,4 +153,7 @@ if [ ! -z ${GIT_USERNAME} ] && [ ! -z ${VERSION} ]; then
116153
git add .
117154
git commit -a -m "publish grunt apidocs ${VERSION}"
118155
git push
119-
fi
156+
fi
157+
158+
exit ${retcode}
159+

examples/Dockerfile

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@ RUN apt-get -y update && apt-get install -y git && apt-get install -y vim && apt
77
ENV API_KEY api_key
88

99
#set the working directory
10-
WORKDIR /source/examples
10+
RUN mkdir /nodejs-dev
11+
WORKDIR /nodejs-dev
12+
COPY runAll.sh /nodejs-dev/runAll.sh
1113

12-
CMD ./runAll.sh $API_KEY $FILENAME $ALT_URL; /bin/bash
14+
CMD chmod 0755 ./runAll.sh && ./runAll.sh $API_KEY $FILENAME $ALT_URL
15+
16+
VOLUME ["/source"]
1317

14-
VOLUME ["/source"]

examples/base64_input_example.js

Lines changed: 0 additions & 27 deletions
This file was deleted.
Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
1-
"use strict";
2-
3-
var Api = require("../lib/Api");
4-
var ArgumentParser = require("argparse").ArgumentParser;
5-
6-
var parser = new ArgumentParser({
7-
addHelp: true,
8-
description: "Get the category of a piece of a document at a URL"
9-
});
10-
parser.addArgument(["--key"], {help: "Rosette API key", required: true});
11-
parser.addArgument(["--url"], {help: "Rosette API alt-url", required: false});
12-
var args = parser.parseArgs();
13-
var api = new Api(args.key);
14-
var endpoint = "categories";
15-
16-
var categories_url_data = "http://www.onlocationvacations.com/2015/03/05/the-new-ghostbusters-movie-begins-filming-in-boston-in-june/";
17-
api.parameters.contentUri = categories_url_data;
18-
19-
api.rosette(endpoint, function(err, res){
20-
if(err){
21-
console.log(err);
22-
} else {
23-
console.log(JSON.stringify(res, null, 2));
24-
}
1+
"use strict";
2+
3+
var Api = require("../lib/Api");
4+
var ArgumentParser = require("argparse").ArgumentParser;
5+
6+
var parser = new ArgumentParser({
7+
addHelp: true,
8+
description: "Get the category of a piece of a document at a URL"
9+
});
10+
parser.addArgument(["--key"], {help: "Rosette API key", required: true});
11+
parser.addArgument(["--url"], {help: "Rosette API alt-url", required: false});
12+
var args = parser.parseArgs();
13+
var api = new Api(args.key, args.url);
14+
var endpoint = "categories";
15+
16+
var categories_url_data = "http://www.onlocationvacations.com/2015/03/05/the-new-ghostbusters-movie-begins-filming-in-boston-in-june/";
17+
api.parameters.contentUri = categories_url_data;
18+
19+
api.rosette(endpoint, function(err, res){
20+
if(err){
21+
console.log(err);
22+
} else {
23+
console.log(JSON.stringify(res, null, 2));
24+
}
2525
});
Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
1-
"use strict";
2-
3-
var Api = require("../lib/Api");
4-
var ArgumentParser = require("argparse").ArgumentParser;
5-
6-
var parser = new ArgumentParser({
7-
addHelp: true,
8-
description: "Get the entities from a piece of text"
9-
});
10-
parser.addArgument(["--key"], {help: "Rosette API key", required: true});
11-
parser.addArgument(["--url"], {help: "Rosette API alt-url", required: false});
12-
var args = parser.parseArgs();
13-
14-
var api = new Api(args.key);
15-
var endpoint = "entities";
16-
17-
api.parameters.content = "Bill Murray will appear in new Ghostbusters film: Dr. Peter Venkman was spotted filming a cameo in Boston this… http://dlvr.it/BnsFfS";
18-
19-
api.rosette(endpoint, function(err, res){
20-
if(err){
21-
console.log(err);
22-
} else {
23-
console.log(JSON.stringify(res, null, 2));
24-
}
1+
"use strict";
2+
3+
var Api = require("../lib/Api");
4+
var ArgumentParser = require("argparse").ArgumentParser;
5+
6+
var parser = new ArgumentParser({
7+
addHelp: true,
8+
description: "Get the entities from a piece of text"
9+
});
10+
parser.addArgument(["--key"], {help: "Rosette API key", required: true});
11+
parser.addArgument(["--url"], {help: "Rosette API alt-url", required: false});
12+
var args = parser.parseArgs();
13+
14+
var api = new Api(args.key, args.url);
15+
var endpoint = "entities";
16+
17+
api.parameters.content = "Bill Murray will appear in new Ghostbusters film: Dr. Peter Venkman was spotted filming a cameo in Boston this… http://dlvr.it/BnsFfS";
18+
19+
api.rosette(endpoint, function(err, res){
20+
if(err){
21+
console.log(err);
22+
} else {
23+
console.log(JSON.stringify(res, null, 2));
24+
}
2525
});

0 commit comments

Comments
 (0)