protected static boolean canRun() { Response response = null; try { response = WebClient.create(readRestUrl() + GROBID_ISALIVE_PATH) .accept(MediaType.TEXT_HTML).get(); String resp = response.readEntity(String.class); return resp != null && !resp.equals("") && resp.startsWith("<h4>"); } catch (Exception e) { //swallow...can't run return false; } }
protected static boolean canRun() { try { Response response = WebClient .create(TEXT_REST_HOST + TEXT_LID_PATH) .get(); String json = response.readEntity(String.class); JsonArray jsonArray = new JsonParser().parse(json).getAsJsonObject().get("all_languages").getAsJsonArray(); return jsonArray.size() != 0; } catch (Exception e) { LOG.warn("Can't run", e); return false; } } }
public NLTKNERecogniser(){ try { String restHostUrlStr=""; try { restHostUrlStr = readRestUrl(); } catch (IOException e) { LOG.warn("Can't read rest url", e); } if (restHostUrlStr == null || restHostUrlStr.equals("")) { this.restHostUrlStr = NLTK_REST_HOST; } else { this.restHostUrlStr = restHostUrlStr; } Response response = WebClient.create(restHostUrlStr).accept(MediaType.TEXT_HTML).get(); int responseCode = response.getStatus(); if(responseCode == 200){ available = true; } else{ LOG.info("NLTKRest Server is not running"); } } catch (Exception e) { LOG.warn(e.getMessage(), e); } }
@Test public void testBooksAreReturned() throws JsonProcessingException { Response r = createWebClient("/rest/api/bookstore", MediaType.APPLICATION_JSON).get(); assertEquals(Status.OK.getStatusCode(), r.getStatus()); final Book[] books = r.readEntity(Book[].class); assertThat(Arrays.asList(books), hasItems(new Book("New Book #1", 1), new Book("New Book #2", 2))); r.close(); }
@Override public String translate(String text, String sourceLanguage, String targetLanguage) throws TikaException, IOException { if (!this.isAvailable) return text; Response response = client.accept(MediaType.APPLICATION_JSON) .query("key", apiKey).query("source", sourceLanguage) .query("target", targetLanguage).query("q", text).get(); BufferedReader reader = new BufferedReader(new InputStreamReader( (InputStream) response.getEntity(), UTF_8)); String line = null; StringBuffer responseText = new StringBuffer(); while ((line = reader.readLine()) != null) { responseText.append(line); } ObjectMapper mapper = new ObjectMapper(); JsonNode jsonResp = mapper.readTree(responseText.toString()); return jsonResp.findValuesAsText("translatedText").get(0); }
public GrobidNERecogniser(){ try { String restHostUrlStr=""; try { restHostUrlStr = readRestUrl(); } catch (IOException e) { LOG.warn("couldn't read rest url", e); } if (restHostUrlStr == null || restHostUrlStr.equals("")) { this.restHostUrlStr = GROBID_REST_HOST; } else { this.restHostUrlStr = restHostUrlStr; } Response response = WebClient.create(restHostUrlStr).accept(MediaType.APPLICATION_JSON).get(); int responseCode = response.getStatus(); if(responseCode == 200){ available = true; } else{ LOG.info("Grobid REST Server is not running"); } } catch (Exception e) { LOG.info(e.getMessage(), e); } }
/** * Load the supported languages from the <a href="https://developer.lingo24.com/premium-machine-translation-api">Premium MT API</a>. * Support is continually expanding. * @return <code>Set<String></code> of supported languages. */ private Set<String> getAllLanguages() { Set<String> languages = new HashSet<>(); if (!isAvailable) { return languages; } WebClient _client = null; try { _client = WebClient.create(LINGO24_TRANSLATE_URL_BASE + LINGO24_SOURCELANG_ACTION); Response response = _client.accept(MediaType.APPLICATION_JSON) .query("user_key", userKey).get(); String json = response.readEntity(String.class); JsonArray jsonArray = new JsonParser().parse(json).getAsJsonObject().get("source_langs").getAsJsonArray(); for (JsonElement jsonElement : jsonArray) { languages.add(jsonElement.getAsJsonArray().get(0).getAsString()); } } catch (Throwable e) { LOG.warn("problem detecting", e); } finally { if (_client != null) { _client.close(); } } return languages; }
private Set<String> getAllLanguages() { Set<String> languages = new HashSet<>(); try { Response response = WebClient .create(restHostUrlStr + TEXT_LID_PATH) .get(); String json = response.readEntity(String.class); JsonArray jsonArray = new JsonParser().parse(json).getAsJsonObject().get("all_languages").getAsJsonArray(); for (JsonElement jsonElement : jsonArray) { languages.add(jsonElement.toString()); } } catch (Exception e) { LOG.warn("problem getting and parsing json", e); } return languages; }
@Override public String translate(String text, String sourceLanguage, String targetLanguage) throws TikaException, IOException { if (!this.isAvailable) return text; Response response = client.accept(MediaType.APPLICATION_JSON) .query("user_key", userKey).query("source", sourceLanguage) .query("target", targetLanguage).query("q", text).get(); BufferedReader reader = new BufferedReader(new InputStreamReader( (InputStream) response.getEntity(), UTF_8)); String line = null; StringBuffer responseText = new StringBuffer(); while ((line = reader.readLine()) != null) { responseText.append(line); } ObjectMapper mapper = new ObjectMapper(); JsonNode jsonResp = mapper.readTree(responseText.toString()); if (jsonResp.findValuesAsText("errors").isEmpty()) { return jsonResp.findValuesAsText("translation").get(0); } else { throw new TikaException(jsonResp.findValue("errors").get(0).asText()); } }
@Test public void testGetAllBooksIs() throws Exception { final Response response = createWebClient("/bookstore/is", MediaType.TEXT_PLAIN).get(); try { assertEquals(200, response.getStatus()); assertThat(response.readEntity(String.class), equalTo(IOUtils.readStringFromStream( getClass().getResourceAsStream("/files/books.txt")))); } finally { response.close(); } }
WebClient client = WebClient.create(YANDEX_TRANSLATE_URL_BASE); Response response = client.accept(MediaType.APPLICATION_JSON) .query("key", this.apiKey).query("lang", langCode) .query("text", text).get(); BufferedReader reader = new BufferedReader(new InputStreamReader( (InputStream) response.getEntity(), UTF_8));
private void awaitServerStartup() throws Exception { Instant started = Instant.now(); long elapsed = Duration.between(started, Instant.now()).toMillis(); WebClient client = WebClient.create(endPoint+"/tika").accept("text/plain"); while (elapsed < 30000) { try { Response response = client.get(); if (response.getStatus() == 200) { return; } LOG.info("tika test client failed to connect to server with status: {}", response.getStatus()); } catch (javax.ws.rs.ProcessingException e) { LOG.info("tika test client failed to connect to server: {}", e.getMessage()); LOG.debug("tika test client failed to connect to server", e); } Thread.sleep(100); elapsed = Duration.between(started, Instant.now()).toMillis(); } }
@Test public void testProperPathWelcome() throws Exception{ Response response = WebClient .create(endPoint + WELCOME_PATH) .type("text/html") .accept("text/html") .get(); String html = getStringFromInputStream((InputStream) response.getEntity()); assertContains(PATH_RESOURCE, html); assertContains(PATH_RESOURCE_2, html); } }