From 2825eb22e660e22917f268bb5001ef7278ede088 Mon Sep 17 00:00:00 2001 From: Miguel Molina Date: Tue, 8 Aug 2017 17:36:52 +0200 Subject: [PATCH] get jnaerator from a jitpack jar Signed-off-by: Miguel Molina --- java/Makefile | 9 +++------ java/src/main/java/tech/sourced/enry/Enry.java | 10 +++++++--- java/src/test/java/tech/sourced/enry/EnryTest.java | 5 ++--- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/java/Makefile b/java/Makefile index ceb89c3..af1905c 100644 --- a/java/Makefile +++ b/java/Makefile @@ -3,6 +3,7 @@ JARS_DIR=./lib JAR=$(JARS_DIR)/enry.jar JNAERATOR_DIR=./.jnaerator JNAERATOR_JAR=$(JNAERATOR_DIR)/jnaerator.jar +JNAERATOR_JAR_URL="https://jitpack.io/com/github/nativelibs4java/JNAerator/jnaerator/$(JNAERATOR_VERSION)/jnaerator-$(JNAERATOR_VERSION)-shaded.jar" RESOURCES_SRC=../.shared RESOURCES_DIR=./shared HEADER_FILE=$(RESOURCES_DIR)/libenry.h @@ -25,12 +26,8 @@ $(RESOURCES_DIR): os-shared-lib cp -R $(RESOURCES_SRC) $(RESOURCES_DIR) $(JNAERATOR_JAR): $(RESOURCES_DIR) - git clone --depth 1 https://github.com/nativelibs4java/jnaerator.git $(JNAERATOR_DIR) && \ - cd $(JNAERATOR_DIR) && \ - git checkout $(JNAERATOR_VERSION) && \ - mvn clean install && \ - mv jnaerator/target/jnaerator-*-shaded.jar ./jnaerator.jar && \ - cd ..; + mkdir $(JNAERATOR_DIR) && \ + wget $(JNAERATOR_JAR_URL) -O $(JNAERATOR_JAR) os-shared-lib: @os_name="$(shell uname -s)" && \ diff --git a/java/src/main/java/tech/sourced/enry/Enry.java b/java/src/main/java/tech/sourced/enry/Enry.java index 7fad0eb..a1eaa21 100644 --- a/java/src/main/java/tech/sourced/enry/Enry.java +++ b/java/src/main/java/tech/sourced/enry/Enry.java @@ -37,11 +37,15 @@ public class Enry { * If there are more than one possible language, it returns the first * language in alphabetical order and safe to false. * - * @param content of the file + * @param filename name of the file with the extension + * @param content of the file * @return guessed result */ - public static Guess getLanguageByContent(byte[] content) { - GetLanguageByContent_return.ByValue res = nativeLib.GetLanguageByContent(toGoByteSlice(content)); + public static Guess getLanguageByContent(String filename, byte[] content) { + GetLanguageByContent_return.ByValue res = nativeLib.GetLanguageByContent( + toGoString(filename), + toGoByteSlice(content) + ); return new Guess(toJavaString(res.r0), toJavaBool(res.r1)); } diff --git a/java/src/test/java/tech/sourced/enry/EnryTest.java b/java/src/test/java/tech/sourced/enry/EnryTest.java index 540d69e..9311d57 100644 --- a/java/src/test/java/tech/sourced/enry/EnryTest.java +++ b/java/src/test/java/tech/sourced/enry/EnryTest.java @@ -18,14 +18,13 @@ public class EnryTest { assertEquals("PHP", Enry.getLanguage("foobar.php", code.getBytes())); } - // TODO: this is a bug in enry, fix when it's fixed there - @Test(expected = AssertionError.class) + @Test public void getLanguageByContent() { String code = "