http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/SparkParagraphIT.java ---------------------------------------------------------------------- diff --git a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/SparkParagraphIT.java b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/SparkParagraphIT.java index 1804fc4..479eae5 100644 --- a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/SparkParagraphIT.java +++ b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/SparkParagraphIT.java @@ -17,7 +17,7 @@ package org.apache.zeppelin.integration; - +import java.util.List; import org.apache.zeppelin.AbstractZeppelinIT; import org.apache.zeppelin.WebDriverManager; import org.hamcrest.CoreMatchers; @@ -32,13 +32,10 @@ import org.openqa.selenium.WebElement; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.List; - public class SparkParagraphIT extends AbstractZeppelinIT { private static final Logger LOG = LoggerFactory.getLogger(SparkParagraphIT.class); - @Rule - public ErrorCollector collector = new ErrorCollector(); + @Rule public ErrorCollector collector = new ErrorCollector(); @Before public void startUp() { @@ -72,33 +69,35 @@ public class SparkParagraphIT extends AbstractZeppelinIT { val bank = bankText.map(s => s.split(";")).filter(s => s(0) != "\"age\"").map(s => Bank(s(0).toInt,s(1).replaceAll("\"", ""),s(2).replaceAll("\"", ""),s(3).replaceAll("\"", ""),s(5).replaceAll("\"", "").toInt)).toDF() bank.registerTempTable("bank") */ - setTextOfParagraph(2, "import org.apache.commons.io.IOUtils\\n" + - "import java.net.URL\\n" + - "import java.nio.charset.Charset\\n" + - "val bankText = sc.parallelize(IOUtils.toString(new URL(\"https://s3.amazonaws.com/apache-zeppelin/tutorial/bank/bank.csv\"),Charset.forName(\"utf8\")).split(\"\\\\n\"))\\n" + - "case class Bank(age: Integer, job: String, marital: String, education: String, balance: Integer)\\n" + - "\\n" + - "val bank = bankText.map(s => s.split(\";\")).filter(s => s(0) != \"\\\\\"age\\\\\"\").map(s => Bank(s(0).toInt,s(1).replaceAll(\"\\\\\"\", \"\"),s(2).replaceAll(\"\\\\\"\", \"\"),s(3).replaceAll(\"\\\\\"\", \"\"),s(5).replaceAll(\"\\\\\"\", \"\").toInt)).toDF()\\n" + - "bank.registerTempTable(\"bank\")"); + setTextOfParagraph( + 2, + "import org.apache.commons.io.IOUtils\\n" + + "import java.net.URL\\n" + + "import java.nio.charset.Charset\\n" + + "val bankText = sc.parallelize(IOUtils.toString(new URL(\"https://s3.amazonaws.com/apache-zeppelin/tutorial/bank/bank.csv\"),Charset.forName(\"utf8\")).split(\"\\\\n\"))\\n" + + "case class Bank(age: Integer, job: String, marital: String, education: String, balance: Integer)\\n" + + "\\n" + + "val bank = bankText.map(s => s.split(\";\")).filter(s => s(0) != \"\\\\\"age\\\\\"\").map(s => Bank(s(0).toInt,s(1).replaceAll(\"\\\\\"\", \"\"),s(2).replaceAll(\"\\\\\"\", \"\"),s(3).replaceAll(\"\\\\\"\", \"\"),s(5).replaceAll(\"\\\\\"\", \"\").toInt)).toDF()\\n" + + "bank.registerTempTable(\"bank\")"); runParagraph(2); try { waitForParagraph(2, "FINISHED"); } catch (TimeoutException e) { waitForParagraph(2, "ERROR"); - collector.checkThat("2nd Paragraph from SparkParagraphIT of testSpark status:", - "ERROR", CoreMatchers.equalTo("FINISHED") - ); + collector.checkThat( + "2nd Paragraph from SparkParagraphIT of testSpark status:", + "ERROR", + CoreMatchers.equalTo("FINISHED")); } - WebElement paragraph2Result = driver.findElement(By.xpath( - getParagraphXPath(2) + "//div[contains(@id,\"_text\")]")); + WebElement paragraph2Result = + driver.findElement(By.xpath(getParagraphXPath(2) + "//div[contains(@id,\"_text\")]")); - collector.checkThat("2nd Paragraph from SparkParagraphIT of testSpark result: ", - paragraph2Result.getText().toString(), CoreMatchers.containsString( - "import org.apache.commons.io.IOUtils" - ) - ); + collector.checkThat( + "2nd Paragraph from SparkParagraphIT of testSpark result: ", + paragraph2Result.getText().toString(), + CoreMatchers.containsString("import org.apache.commons.io.IOUtils")); } catch (Exception e) { handleException("Exception in SparkParagraphIT while testSpark", e); @@ -108,9 +107,8 @@ public class SparkParagraphIT extends AbstractZeppelinIT { @Test public void testPySpark() throws Exception { try { - setTextOfParagraph(1, "%pyspark\\n" + - "for x in range(0, 3):\\n" + - " print \"test loop %d\" % (x)"); + setTextOfParagraph( + 1, "%pyspark\\n" + "for x in range(0, 3):\\n" + " print \"test loop %d\" % (x)"); runParagraph(1); @@ -118,35 +116,37 @@ public class SparkParagraphIT extends AbstractZeppelinIT { waitForParagraph(1, "FINISHED"); } catch (TimeoutException e) { waitForParagraph(1, "ERROR"); - collector.checkThat("Paragraph from SparkParagraphIT of testPySpark status: ", - "ERROR", CoreMatchers.equalTo("FINISHED") - ); + collector.checkThat( + "Paragraph from SparkParagraphIT of testPySpark status: ", + "ERROR", + CoreMatchers.equalTo("FINISHED")); } - WebElement paragraph1Result = driver.findElement(By.xpath( - getParagraphXPath(1) + "//div[contains(@id,\"_text\")]")); - collector.checkThat("Paragraph from SparkParagraphIT of testPySpark result: ", - paragraph1Result.getText().toString(), CoreMatchers.containsString("test loop 0\ntest loop 1\ntest loop 2") - ); + WebElement paragraph1Result = + driver.findElement(By.xpath(getParagraphXPath(1) + "//div[contains(@id,\"_text\")]")); + collector.checkThat( + "Paragraph from SparkParagraphIT of testPySpark result: ", + paragraph1Result.getText().toString(), + CoreMatchers.containsString("test loop 0\ntest loop 1\ntest loop 2")); // the last statement's evaluation result is printed - setTextOfParagraph(2, "%pyspark\\n" + - "sc.version\\n" + - "1+1"); + setTextOfParagraph(2, "%pyspark\\n" + "sc.version\\n" + "1+1"); runParagraph(2); try { waitForParagraph(2, "FINISHED"); } catch (TimeoutException e) { waitForParagraph(2, "ERROR"); - collector.checkThat("Paragraph from SparkParagraphIT of testPySpark status: ", - "ERROR", CoreMatchers.equalTo("FINISHED") - ); + collector.checkThat( + "Paragraph from SparkParagraphIT of testPySpark status: ", + "ERROR", + CoreMatchers.equalTo("FINISHED")); } - WebElement paragraph2Result = driver.findElement(By.xpath( - getParagraphXPath(2) + "//div[contains(@id,\"_text\")]")); - collector.checkThat("Paragraph from SparkParagraphIT of testPySpark result: ", - paragraph2Result.getText().toString(), CoreMatchers.equalTo("2") - ); + WebElement paragraph2Result = + driver.findElement(By.xpath(getParagraphXPath(2) + "//div[contains(@id,\"_text\")]")); + collector.checkThat( + "Paragraph from SparkParagraphIT of testPySpark result: ", + paragraph2Result.getText().toString(), + CoreMatchers.equalTo("2")); } catch (Exception e) { handleException("Exception in SparkParagraphIT while testPySpark", e); @@ -156,74 +156,86 @@ public class SparkParagraphIT extends AbstractZeppelinIT { @Test public void testSqlSpark() throws Exception { try { - setTextOfParagraph(1,"%sql\\n" + - "select * from bank limit 1"); + setTextOfParagraph(1, "%sql\\n" + "select * from bank limit 1"); runParagraph(1); try { waitForParagraph(1, "FINISHED"); } catch (TimeoutException e) { waitForParagraph(1, "ERROR"); - collector.checkThat("Paragraph from SparkParagraphIT of testSqlSpark status: ", - "ERROR", CoreMatchers.equalTo("FINISHED") - ); + collector.checkThat( + "Paragraph from SparkParagraphIT of testSqlSpark status: ", + "ERROR", + CoreMatchers.equalTo("FINISHED")); } // Age, Job, Marital, Education, Balance - List<WebElement> tableHeaders = driver.findElements(By.cssSelector("span.ui-grid-header-cell-label")); + List<WebElement> tableHeaders = + driver.findElements(By.cssSelector("span.ui-grid-header-cell-label")); String headerNames = ""; - for(WebElement header : tableHeaders) { + for (WebElement header : tableHeaders) { headerNames += header.getText().toString() + "|"; } - collector.checkThat("Paragraph from SparkParagraphIT of testSqlSpark result: ", - headerNames, CoreMatchers.equalTo("age|job|marital|education|balance|")); + collector.checkThat( + "Paragraph from SparkParagraphIT of testSqlSpark result: ", + headerNames, + CoreMatchers.equalTo("age|job|marital|education|balance|")); } catch (Exception e) { handleException("Exception in SparkParagraphIT while testSqlSpark", e); } } -// @Test + // @Test public void testDep() throws Exception { try { // restart spark interpreter before running %dep clickAndWait(By.xpath("//span[@uib-tooltip='Interpreter binding']")); - clickAndWait(By.xpath("//div[font[contains(text(), 'spark')]]/preceding-sibling::a[@uib-tooltip='Restart']")); + clickAndWait( + By.xpath( + "//div[font[contains(text(), 'spark')]]/preceding-sibling::a[@uib-tooltip='Restart']")); clickAndWait(By.xpath("//button[contains(.,'OK')]")); - setTextOfParagraph(1,"%dep z.load(\"org.apache.commons:commons-csv:1.1\")"); + setTextOfParagraph(1, "%dep z.load(\"org.apache.commons:commons-csv:1.1\")"); runParagraph(1); try { waitForParagraph(1, "FINISHED"); - WebElement paragraph1Result = driver.findElement(By.xpath(getParagraphXPath(1) + - "//div[contains(@id,'_text')]")); - collector.checkThat("Paragraph from SparkParagraphIT of testSqlSpark result: ", - paragraph1Result.getText(), CoreMatchers.containsString("res0: org.apache.zeppelin.dep.Dependency = org.apache.zeppelin.dep.Dependency")); + WebElement paragraph1Result = + driver.findElement(By.xpath(getParagraphXPath(1) + "//div[contains(@id,'_text')]")); + collector.checkThat( + "Paragraph from SparkParagraphIT of testSqlSpark result: ", + paragraph1Result.getText(), + CoreMatchers.containsString( + "res0: org.apache.zeppelin.dep.Dependency = org.apache.zeppelin.dep.Dependency")); setTextOfParagraph(2, "import org.apache.commons.csv.CSVFormat"); runParagraph(2); try { waitForParagraph(2, "FINISHED"); - WebElement paragraph2Result = driver.findElement(By.xpath(getParagraphXPath(2) + - "//div[contains(@id,'_text')]")); - collector.checkThat("Paragraph from SparkParagraphIT of testSqlSpark result: ", - paragraph2Result.getText(), CoreMatchers.equalTo("import org.apache.commons.csv.CSVFormat")); + WebElement paragraph2Result = + driver.findElement(By.xpath(getParagraphXPath(2) + "//div[contains(@id,'_text')]")); + collector.checkThat( + "Paragraph from SparkParagraphIT of testSqlSpark result: ", + paragraph2Result.getText(), + CoreMatchers.equalTo("import org.apache.commons.csv.CSVFormat")); } catch (TimeoutException e) { waitForParagraph(2, "ERROR"); - collector.checkThat("Second paragraph from SparkParagraphIT of testDep status: ", - "ERROR", CoreMatchers.equalTo("FINISHED") - ); + collector.checkThat( + "Second paragraph from SparkParagraphIT of testDep status: ", + "ERROR", + CoreMatchers.equalTo("FINISHED")); } } catch (TimeoutException e) { waitForParagraph(1, "ERROR"); - collector.checkThat("First paragraph from SparkParagraphIT of testDep status: ", - "ERROR", CoreMatchers.equalTo("FINISHED") - ); + collector.checkThat( + "First paragraph from SparkParagraphIT of testDep status: ", + "ERROR", + CoreMatchers.equalTo("FINISHED")); } } catch (Exception e) { handleException("Exception in SparkParagraphIT while testDep", e);
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/ZeppelinIT.java ---------------------------------------------------------------------- diff --git a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/ZeppelinIT.java b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/ZeppelinIT.java index 74c3326..a26af43 100644 --- a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/ZeppelinIT.java +++ b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/ZeppelinIT.java @@ -17,6 +17,10 @@ package org.apache.zeppelin.integration; +import static org.apache.commons.lang3.StringUtils.isNotBlank; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + import org.apache.zeppelin.AbstractZeppelinIT; import org.apache.zeppelin.WebDriverManager; import org.apache.zeppelin.ZeppelinITUtils; @@ -34,26 +38,19 @@ import org.openqa.selenium.WebElement; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import static org.apache.commons.lang3.StringUtils.isNotBlank; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - /** * Test Zeppelin with web browser. * - * To test, ZeppelinServer should be running on port 8080 - * On OSX, you'll need firefox 42.0 installed, then you can run with - * - * PATH=~/Applications/Firefox.app/Contents/MacOS/:$PATH TEST_SELENIUM="" \ - * mvn -Dtest=org.apache.zeppelin.integration.ZeppelinIT -Denforcer.skip=true \ - * test -pl zeppelin-server + * <p>To test, ZeppelinServer should be running on port 8080 On OSX, you'll need firefox 42.0 + * installed, then you can run with * + * <p>PATH=~/Applications/Firefox.app/Contents/MacOS/:$PATH TEST_SELENIUM="" \ mvn + * -Dtest=org.apache.zeppelin.integration.ZeppelinIT -Denforcer.skip=true \ test -pl zeppelin-server */ public class ZeppelinIT extends AbstractZeppelinIT { private static final Logger LOG = LoggerFactory.getLogger(ZeppelinIT.class); - @Rule - public ErrorCollector collector = new ErrorCollector(); + @Rule public ErrorCollector collector = new ErrorCollector(); @Before public void startUp() { @@ -77,13 +74,15 @@ public class ZeppelinIT extends AbstractZeppelinIT { * print angular template * %angular <div id='angularTestButton' ng-click='myVar=myVar+1'>BindingTest_{{myVar}}_</div> */ - setTextOfParagraph(1, "println(\"%angular <div id=\\'angularTestButton\\' ng-click=\\'myVar=myVar+1\\'>BindingTest_{{myVar}}_</div>\")"); + setTextOfParagraph( + 1, + "println(\"%angular <div id=\\'angularTestButton\\' ng-click=\\'myVar=myVar+1\\'>BindingTest_{{myVar}}_</div>\")"); runParagraph(1); waitForParagraph(1, "FINISHED"); // check expected text - waitForText("BindingTest__", By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); + waitForText( + "BindingTest__", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); /* * Bind variable @@ -95,9 +94,8 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(2, "FINISHED"); // check expected text - waitForText("BindingTest_1_", By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); - + waitForText( + "BindingTest_1_", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); /* * print variable @@ -108,18 +106,20 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(3, "FINISHED"); // check expected text - waitForText("myVar=1", By.xpath( - getParagraphXPath(3) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); + waitForText( + "myVar=1", + By.xpath(getParagraphXPath(3) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); /* * Click element */ - driver.findElement(By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")).click(); + driver + .findElement(By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")) + .click(); // check expected text - waitForText("BindingTest_2_", By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); + waitForText( + "BindingTest_2_", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); /* * Register watcher @@ -127,40 +127,44 @@ public class ZeppelinIT extends AbstractZeppelinIT { * z.run(2, context) * } */ - setTextOfParagraph(4, "z.angularWatch(\"myVar\", (before:Object, after:Object, context:org.apache.zeppelin.interpreter.InterpreterContext)=>{ z.run(2, false)})"); + setTextOfParagraph( + 4, + "z.angularWatch(\"myVar\", (before:Object, after:Object, context:org.apache.zeppelin.interpreter.InterpreterContext)=>{ z.run(2, false)})"); runParagraph(4); waitForParagraph(4, "FINISHED"); - /* * Click element, again and see watcher works */ - driver.findElement(By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")).click(); + driver + .findElement(By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")) + .click(); // check expected text - waitForText("BindingTest_3_", By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); + waitForText( + "BindingTest_3_", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); waitForParagraph(3, "FINISHED"); // check expected text by watcher - waitForText("myVar=3", By.xpath( - getParagraphXPath(3) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); - + waitForText( + "myVar=3", + By.xpath(getParagraphXPath(3) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); /* * Click element, again and see watcher still works */ - driver.findElement(By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")).click(); + driver + .findElement(By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")) + .click(); // check expected text - waitForText("BindingTest_4_", By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); + waitForText( + "BindingTest_4_", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); waitForParagraph(3, "FINISHED"); // check expected text by watcher - waitForText("myVar=4", By.xpath( - getParagraphXPath(3) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); + waitForText( + "myVar=4", + By.xpath(getParagraphXPath(3) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); /* * Unbind @@ -171,8 +175,8 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(5, "FINISHED"); // check expected text - waitForText("BindingTest__", - By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); + waitForText( + "BindingTest__", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); /* * Bind again and see rebind works. @@ -181,14 +185,19 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(2, "FINISHED"); // check expected text - waitForText("BindingTest_1_", - By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); + waitForText( + "BindingTest_1_", By.xpath(getParagraphXPath(1) + "//div[@id=\"angularTestButton\"]")); - driver.findElement(By.xpath(".//*[@id='main']//button[@ng-click='moveNoteToTrash(note.id)']")) + driver + .findElement(By.xpath(".//*[@id='main']//button[@ng-click='moveNoteToTrash(note.id)']")) .sendKeys(Keys.ENTER); ZeppelinITUtils.sleep(1000, false); - driver.findElement(By.xpath("//div[@class='modal-dialog'][contains(.,'This note will be moved to trash')]" + - "//div[@class='modal-footer']//button[contains(.,'OK')]")).click(); + driver + .findElement( + By.xpath( + "//div[@class='modal-dialog'][contains(.,'This note will be moved to trash')]" + + "//div[@class='modal-footer']//button[contains(.,'OK')]")) + .click(); ZeppelinITUtils.sleep(100, false); LOG.info("testCreateNotebook Test executed"); @@ -201,28 +210,36 @@ public class ZeppelinIT extends AbstractZeppelinIT { public void testSparkInterpreterDependencyLoading() throws Exception { try { // navigate to interpreter page - WebElement settingButton = driver.findElement(By.xpath("//button[@class='nav-btn dropdown-toggle ng-scope']")); + WebElement settingButton = + driver.findElement(By.xpath("//button[@class='nav-btn dropdown-toggle ng-scope']")); settingButton.click(); WebElement interpreterLink = driver.findElement(By.xpath("//a[@href='#/interpreter']")); interpreterLink.click(); // add new dependency to spark interpreter - driver.findElement(By.xpath("//div[@id='spark']//button[contains(.,'edit')]")).sendKeys(Keys.ENTER); + driver + .findElement(By.xpath("//div[@id='spark']//button[contains(.,'edit')]")) + .sendKeys(Keys.ENTER); - WebElement depArtifact = pollingWait(By.xpath("//input[@ng-model='setting.depArtifact']"), - MAX_BROWSER_TIMEOUT_SEC); + WebElement depArtifact = + pollingWait( + By.xpath("//input[@ng-model='setting.depArtifact']"), MAX_BROWSER_TIMEOUT_SEC); String artifact = "org.apache.commons:commons-csv:1.1"; depArtifact.sendKeys(artifact); driver.findElement(By.xpath("//div[@id='spark']//form//button[1]")).click(); - clickAndWait(By.xpath("//div[@class='modal-dialog'][contains(.,'Do you want to update this interpreter and restart with new settings?')]" + - "//div[@class='modal-footer']//button[contains(.,'OK')]")); + clickAndWait( + By.xpath( + "//div[@class='modal-dialog'][contains(.,'Do you want to update this interpreter and restart with new settings?')]" + + "//div[@class='modal-footer']//button[contains(.,'OK')]")); try { - clickAndWait(By.xpath("//div[@class='modal-dialog'][contains(.,'Do you want to " + - "update this interpreter and restart with new settings?')]//" + - "div[@class='bootstrap-dialog-close-button']/button")); + clickAndWait( + By.xpath( + "//div[@class='modal-dialog'][contains(.,'Do you want to " + + "update this interpreter and restart with new settings?')]//" + + "div[@class='bootstrap-dialog-close-button']/button")); } catch (TimeoutException | StaleElementReferenceException e) { - //Modal dialog got closed earlier than expected nothing to worry. + // Modal dialog got closed earlier than expected nothing to worry. } driver.navigate().back(); @@ -236,29 +253,36 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(1, "FINISHED"); // check expected text - WebElement paragraph1Result = driver.findElement(By.xpath( - getParagraphXPath(1) + "//div[contains(@id,\"_text\")]")); + WebElement paragraph1Result = + driver.findElement(By.xpath(getParagraphXPath(1) + "//div[contains(@id,\"_text\")]")); - collector.checkThat("Paragraph from ZeppelinIT of testSparkInterpreterDependencyLoading result: ", - paragraph1Result.getText().toString(), CoreMatchers.containsString( - "import org.apache.commons.csv.CSVFormat" - ) - ); + collector.checkThat( + "Paragraph from ZeppelinIT of testSparkInterpreterDependencyLoading result: ", + paragraph1Result.getText().toString(), + CoreMatchers.containsString("import org.apache.commons.csv.CSVFormat")); - //delete created notebook for cleanup. + // delete created notebook for cleanup. deleteTestNotebook(driver); ZeppelinITUtils.sleep(1000, false); // reset dependency settingButton.click(); interpreterLink.click(); - driver.findElement(By.xpath("//div[@id='spark']//button[contains(.,'edit')]")).sendKeys(Keys.ENTER); - WebElement testDepRemoveBtn = pollingWait(By.xpath("//tr[descendant::text()[contains(.,'" + - artifact + "')]]/td[3]/button"), MAX_IMPLICIT_WAIT); + driver + .findElement(By.xpath("//div[@id='spark']//button[contains(.,'edit')]")) + .sendKeys(Keys.ENTER); + WebElement testDepRemoveBtn = + pollingWait( + By.xpath("//tr[descendant::text()[contains(.,'" + artifact + "')]]/td[3]/button"), + MAX_IMPLICIT_WAIT); testDepRemoveBtn.sendKeys(Keys.ENTER); driver.findElement(By.xpath("//div[@id='spark']//form//button[1]")).click(); - driver.findElement(By.xpath("//div[@class='modal-dialog'][contains(.,'Do you want to update this interpreter and restart with new settings?')]" + - "//div[@class='modal-footer']//button[contains(.,'OK')]")).click(); + driver + .findElement( + By.xpath( + "//div[@class='modal-dialog'][contains(.,'Do you want to update this interpreter and restart with new settings?')]" + + "//div[@class='modal-footer']//button[contains(.,'OK')]")) + .click(); } catch (Exception e) { handleException("Exception in ZeppelinIT while testSparkInterpreterDependencyLoading ", e); } @@ -273,12 +297,13 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(1, "READY"); // Create 1st paragraph - setTextOfParagraph(1, - "%angular <div id=\\'angularRunParagraph\\'>Run second paragraph</div>"); + setTextOfParagraph( + 1, "%angular <div id=\\'angularRunParagraph\\'>Run second paragraph</div>"); runParagraph(1); waitForParagraph(1, "FINISHED"); - waitForText("Run second paragraph", By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularRunParagraph\"]")); + waitForText( + "Run second paragraph", + By.xpath(getParagraphXPath(1) + "//div[@id=\"angularRunParagraph\"]")); // Create 2nd paragraph setTextOfParagraph(2, "%sh echo TEST"); @@ -286,17 +311,22 @@ public class ZeppelinIT extends AbstractZeppelinIT { waitForParagraph(2, "FINISHED"); // Get 2nd paragraph id - final String secondParagraphId = driver.findElement(By.xpath(getParagraphXPath(2) - + "//div[@class=\"control ng-scope\"]//ul[@class=\"dropdown-menu dropdown-menu-right\"]/li[1]")) + final String secondParagraphId = + driver + .findElement( + By.xpath( + getParagraphXPath(2) + + "//div[@class=\"control ng-scope\"]//ul[@class=\"dropdown-menu dropdown-menu-right\"]/li[1]")) .getAttribute("textContent"); assertTrue("Cannot find paragraph id for the 2nd paragraph", isNotBlank(secondParagraphId)); // Update first paragraph to call z.runParagraph() with 2nd paragraph id - setTextOfParagraph(1, - "%angular <div id=\\'angularRunParagraph\\' ng-click=\\'z.runParagraph(\"" - + secondParagraphId.trim() - + "\")\\'>Run second paragraph</div>"); + setTextOfParagraph( + 1, + "%angular <div id=\\'angularRunParagraph\\' ng-click=\\'z.runParagraph(\"" + + secondParagraphId.trim() + + "\")\\'>Run second paragraph</div>"); runParagraph(1); waitForParagraph(1, "FINISHED"); @@ -304,23 +334,24 @@ public class ZeppelinIT extends AbstractZeppelinIT { setTextOfParagraph(2, "%sh echo NEW_VALUE"); // Click on 1 paragraph to trigger z.runParagraph() function - driver.findElement(By.xpath( - getParagraphXPath(1) + "//div[@id=\"angularRunParagraph\"]")).click(); + driver + .findElement(By.xpath(getParagraphXPath(1) + "//div[@id=\"angularRunParagraph\"]")) + .click(); waitForParagraph(2, "FINISHED"); // Check that 2nd paragraph has been executed - waitForText("NEW_VALUE", By.xpath( - getParagraphXPath(2) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); + waitForText( + "NEW_VALUE", + By.xpath(getParagraphXPath(2) + "//div[contains(@id,\"_text\") and @class=\"text\"]")); - //delete created notebook for cleanup. + // delete created notebook for cleanup. deleteTestNotebook(driver); ZeppelinITUtils.sleep(1000, false); LOG.info("testAngularRunParagraph Test executed"); - } catch (Exception e) { + } catch (Exception e) { handleException("Exception in ZeppelinIT while testAngularRunParagraph", e); } - } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/pom.xml ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/pom.xml b/zeppelin-interpreter/pom.xml index 4ee1080..38259c7 100644 --- a/zeppelin-interpreter/pom.xml +++ b/zeppelin-interpreter/pom.xml @@ -248,14 +248,6 @@ <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-checkstyle-plugin</artifactId> - <configuration> - <skip>false</skip> - </configuration> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> </plugin> </plugins> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/Experimental.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/Experimental.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/Experimental.java index c21ea43..ffb4067 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/Experimental.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/Experimental.java @@ -21,12 +21,15 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -/** - * Experimental API - * Might change or be removed at anytime, or be adopted as ZeppelinApi - */ +/** Experimental API Might change or be removed at anytime, or be adopted as ZeppelinApi */ @Retention(RetentionPolicy.RUNTIME) -@Target({ElementType.TYPE, ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, - ElementType.CONSTRUCTOR, ElementType.LOCAL_VARIABLE, ElementType.PACKAGE}) -public @interface Experimental { -} +@Target({ + ElementType.TYPE, + ElementType.FIELD, + ElementType.METHOD, + ElementType.PARAMETER, + ElementType.CONSTRUCTOR, + ElementType.LOCAL_VARIABLE, + ElementType.PACKAGE +}) +public @interface Experimental {} http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/ZeppelinApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/ZeppelinApi.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/ZeppelinApi.java index e4a45ee..d41be51 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/ZeppelinApi.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/annotation/ZeppelinApi.java @@ -21,11 +21,15 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -/** - * APIs exposed to extends pluggable components or exposed to enduser - */ +/** APIs exposed to extends pluggable components or exposed to enduser */ @Retention(RetentionPolicy.RUNTIME) -@Target({ElementType.TYPE, ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, - ElementType.CONSTRUCTOR, ElementType.LOCAL_VARIABLE, ElementType.PACKAGE}) -public @interface ZeppelinApi { -} +@Target({ + ElementType.TYPE, + ElementType.FIELD, + ElementType.METHOD, + ElementType.PARAMETER, + ElementType.CONSTRUCTOR, + ElementType.LOCAL_VARIABLE, + ElementType.PACKAGE +}) +public @interface ZeppelinApi {} http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/common/JsonSerializable.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/common/JsonSerializable.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/common/JsonSerializable.java index 7764138..d932abf 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/common/JsonSerializable.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/common/JsonSerializable.java @@ -17,9 +17,7 @@ package org.apache.zeppelin.common; -/** - * Interface for class that can be serialized to json - */ +/** Interface for class that can be serialized to json */ public interface JsonSerializable { String toJson(); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CachedCompleter.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CachedCompleter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CachedCompleter.java index ef2223e..af738db 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CachedCompleter.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CachedCompleter.java @@ -5,20 +5,18 @@ * "License"); you may not use this file except in compliance with the License. You may obtain a * copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * <p>http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. + * <p>Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. */ package org.apache.zeppelin.completer; import jline.console.completer.Completer; -/** - * Completer with time to live - */ +/** Completer with time to live */ public class CachedCompleter { private Completer completer; private int ttlInSeconds; @@ -31,8 +29,8 @@ public class CachedCompleter { } public boolean isExpired() { - if (ttlInSeconds == -1 || (ttlInSeconds > 0 && - (System.currentTimeMillis() - createdAt) / 1000 > ttlInSeconds)) { + if (ttlInSeconds == -1 + || (ttlInSeconds > 0 && (System.currentTimeMillis() - createdAt) / 1000 > ttlInSeconds)) { return true; } return false; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CompletionType.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CompletionType.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CompletionType.java index fc5f380..67fd069 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CompletionType.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/CompletionType.java @@ -5,18 +5,16 @@ * "License"); you may not use this file except in compliance with the License. You may obtain a * copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * <p>http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. + * <p>Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. */ package org.apache.zeppelin.completer; -/** - * Types of completion - */ +/** Types of completion */ public enum CompletionType { schema, table, http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/StringsCompleter.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/StringsCompleter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/StringsCompleter.java index c117441..63868cd 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/StringsCompleter.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/completer/StringsCompleter.java @@ -5,12 +5,12 @@ * "License"); you may not use this file except in compliance with the License. You may obtain a * copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * <p>http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. + * <p>Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. */ package org.apache.zeppelin.completer; @@ -20,23 +20,21 @@ import java.util.List; import java.util.Set; import java.util.SortedSet; import java.util.TreeSet; - import jline.console.completer.Completer; import jline.internal.Preconditions; -/** - * Case-insensitive completer for a set of strings. - */ +/** Case-insensitive completer for a set of strings. */ public class StringsCompleter implements Completer { - private final SortedSet<String> strings = new TreeSet<String>(new Comparator<String>() { - @Override - public int compare(String o1, String o2) { - return o1.compareToIgnoreCase(o2); - } - }); + private final SortedSet<String> strings = + new TreeSet<String>( + new Comparator<String>() { + @Override + public int compare(String o1, String o2) { + return o1.compareToIgnoreCase(o2); + } + }); - public StringsCompleter() { - } + public StringsCompleter() {} public StringsCompleter(final Collection<String> strings) { Preconditions.checkNotNull(strings); @@ -55,8 +53,8 @@ public class StringsCompleter implements Completer { return completeCollection(buffer, cursor, candidates); } - private int completeCollection(final String buffer, final int cursor, - final Collection<CharSequence> candidates) { + private int completeCollection( + final String buffer, final int cursor, final Collection<CharSequence> candidates) { Preconditions.checkNotNull(candidates); if (buffer == null) { candidates.addAll(strings); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java index 2b2f3b6..2fcf60d 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java @@ -24,7 +24,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.function.Predicate; - import org.apache.commons.configuration.ConfigurationException; import org.apache.commons.configuration.XMLConfiguration; import org.apache.commons.configuration.tree.ConfigurationNode; @@ -33,10 +32,7 @@ import org.apache.zeppelin.util.Util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** - * Zeppelin configuration. - * - */ +/** Zeppelin configuration. */ public class ZeppelinConfiguration extends XMLConfiguration { private static final String ZEPPELIN_SITE_XML = "zeppelin-site.xml"; private static final long serialVersionUID = 4749305895693848035L; @@ -68,7 +64,6 @@ public class ZeppelinConfiguration extends XMLConfiguration { } } - public ZeppelinConfiguration() { ConfVars[] vars = ConfVars.values(); for (ConfVars v : vars) { @@ -86,13 +81,11 @@ public class ZeppelinConfiguration extends XMLConfiguration { throw new RuntimeException("Unsupported VarType"); } } - } - /** - * Load from resource. - *url = ZeppelinConfiguration.class.getResource(ZEPPELIN_SITE_XML); + * Load from resource. url = ZeppelinConfiguration.class.getResource(ZEPPELIN_SITE_XML); + * * @throws ConfigurationException */ public static synchronized ZeppelinConfiguration create() { @@ -139,7 +132,6 @@ public class ZeppelinConfiguration extends XMLConfiguration { return conf; } - private String getStringValue(String name, String d) { String value = this.properties.get(name); if (value != null) { @@ -287,10 +279,7 @@ public class ZeppelinConfiguration extends XMLConfiguration { if (path != null && path.startsWith("/") || isWindowsPath(path)) { return path; } else { - return getRelativeDir( - String.format("%s/%s", - getConfDir(), - path)); + return getRelativeDir(String.format("%s/%s", getConfDir(), path)); } } @@ -319,10 +308,7 @@ public class ZeppelinConfiguration extends XMLConfiguration { if (path != null && path.startsWith("/") || isWindowsPath(path)) { return path; } else { - return getRelativeDir( - String.format("%s/%s", - getConfDir(), - path)); + return getRelativeDir(String.format("%s/%s", getConfDir(), path)); } } @@ -365,8 +351,8 @@ public class ZeppelinConfiguration extends XMLConfiguration { } public boolean isRecoveryEnabled() { - return !getString(ConfVars.ZEPPELIN_RECOVERY_STORAGE_CLASS).equals( - "org.apache.zeppelin.interpreter.recovery.NullRecoveryStorage"); + return !getString(ConfVars.ZEPPELIN_RECOVERY_STORAGE_CLASS) + .equals("org.apache.zeppelin.interpreter.recovery.NullRecoveryStorage"); } public String getGCSStorageDir() { @@ -514,7 +500,7 @@ public class ZeppelinConfiguration extends XMLConfiguration { return getString(ConfVars.ZEPPELIN_INTERPRETER_RPC_PORTRANGE); } - public boolean isWindowsPath(String path){ + public boolean isWindowsPath(String path) { return path.matches("^[A-Za-z]:\\\\.*"); } @@ -537,12 +523,15 @@ public class ZeppelinConfiguration extends XMLConfiguration { public String getConfigFSDir() { String fsConfigDir = getString(ConfVars.ZEPPELIN_CONFIG_FS_DIR); if (StringUtils.isBlank(fsConfigDir)) { - LOG.warn(ConfVars.ZEPPELIN_CONFIG_FS_DIR.varName + " is not specified, fall back to local " + - "conf directory " + ConfVars.ZEPPELIN_CONF_DIR.varName); + LOG.warn( + ConfVars.ZEPPELIN_CONFIG_FS_DIR.varName + + " is not specified, fall back to local " + + "conf directory " + + ConfVars.ZEPPELIN_CONF_DIR.varName); return getConfDir(); } if (getString(ConfVars.ZEPPELIN_CONFIG_STORAGE_CLASS) - .equals("org.apache.zeppelin.storage.LocalConfigStorage")) { + .equals("org.apache.zeppelin.storage.LocalConfigStorage")) { // only apply getRelativeDir when it is LocalConfigStorage return getRelativeDir(fsConfigDir); } else { @@ -550,8 +539,7 @@ public class ZeppelinConfiguration extends XMLConfiguration { } } - public List<String> getAllowedOrigins() - { + public List<String> getAllowedOrigins() { if (getString(ConfVars.ZEPPELIN_ALLOWED_ORIGINS).isEmpty()) { return Arrays.asList(new String[0]); } @@ -575,7 +563,6 @@ public class ZeppelinConfiguration extends XMLConfiguration { return getBoolean(ConfVars.ZEPPELIN_SERVER_AUTHORIZATION_HEADER_CLEAR); } - public String getXFrameOptions() { return getString(ConfVars.ZEPPELIN_SERVER_XFRAME_OPTIONS); } @@ -593,15 +580,15 @@ public class ZeppelinConfiguration extends XMLConfiguration { } public String getZeppelinNotebookGitURL() { - return getString(ConfVars.ZEPPELIN_NOTEBOOK_GIT_REMOTE_URL); + return getString(ConfVars.ZEPPELIN_NOTEBOOK_GIT_REMOTE_URL); } public String getZeppelinNotebookGitUsername() { - return getString(ConfVars.ZEPPELIN_NOTEBOOK_GIT_REMOTE_USERNAME); + return getString(ConfVars.ZEPPELIN_NOTEBOOK_GIT_REMOTE_USERNAME); } public String getZeppelinNotebookGitAccessToken() { - return getString(ConfVars.ZEPPELIN_NOTEBOOK_GIT_REMOTE_ACCESS_TOKEN); + return getString(ConfVars.ZEPPELIN_NOTEBOOK_GIT_REMOTE_ACCESS_TOKEN); } public String getZeppelinNotebookGitRemoteOrigin() { @@ -671,9 +658,7 @@ public class ZeppelinConfiguration extends XMLConfiguration { return properties; } - /** - * Wrapper class. - */ + /** Wrapper class. */ public enum ConfVars { ZEPPELIN_HOME("zeppelin.home", "./"), ZEPPELIN_ADDR("zeppelin.server.addr", "0.0.0.0"), @@ -695,8 +680,8 @@ public class ZeppelinConfiguration extends XMLConfiguration { ZEPPELIN_INTERPRETER_JSON("zeppelin.interpreter.setting", "interpreter-setting.json"), ZEPPELIN_INTERPRETER_DIR("zeppelin.interpreter.dir", "interpreter"), ZEPPELIN_INTERPRETER_LOCALREPO("zeppelin.interpreter.localRepo", "local-repo"), - ZEPPELIN_INTERPRETER_DEP_MVNREPO("zeppelin.interpreter.dep.mvnRepo", - "http://repo1.maven.org/maven2/"), + ZEPPELIN_INTERPRETER_DEP_MVNREPO( + "zeppelin.interpreter.dep.mvnRepo", "http://repo1.maven.org/maven2/"), ZEPPELIN_INTERPRETER_CONNECT_TIMEOUT("zeppelin.interpreter.connect.timeout", 60000), ZEPPELIN_INTERPRETER_MAX_POOL_SIZE("zeppelin.interpreter.max.poolsize", 10), ZEPPELIN_INTERPRETER_GROUP_DEFAULT("zeppelin.interpreter.group.default", "spark"), @@ -704,7 +689,8 @@ public class ZeppelinConfiguration extends XMLConfiguration { ZEPPELIN_ENCODING("zeppelin.encoding", "UTF-8"), ZEPPELIN_NOTEBOOK_DIR("zeppelin.notebook.dir", "notebook"), ZEPPELIN_RECOVERY_DIR("zeppelin.recovery.dir", "recovery"), - ZEPPELIN_RECOVERY_STORAGE_CLASS("zeppelin.recovery.storage.class", + ZEPPELIN_RECOVERY_STORAGE_CLASS( + "zeppelin.recovery.storage.class", "org.apache.zeppelin.interpreter.recovery.NullRecoveryStorage"), ZEPPELIN_PLUGINS_DIR("zeppelin.plugins.dir", "plugins"), @@ -729,28 +715,31 @@ public class ZeppelinConfiguration extends XMLConfiguration { ZEPPELIN_NOTEBOOK_MONGO_COLLECTION("zeppelin.notebook.mongo.collection", "notes"), ZEPPELIN_NOTEBOOK_MONGO_URI("zeppelin.notebook.mongo.uri", "mongodb://localhost"), ZEPPELIN_NOTEBOOK_MONGO_AUTOIMPORT("zeppelin.notebook.mongo.autoimport", false), - ZEPPELIN_NOTEBOOK_STORAGE("zeppelin.notebook.storage", - "org.apache.zeppelin.notebook.repo.GitNotebookRepo"), + ZEPPELIN_NOTEBOOK_STORAGE( + "zeppelin.notebook.storage", "org.apache.zeppelin.notebook.repo.GitNotebookRepo"), ZEPPELIN_NOTEBOOK_ONE_WAY_SYNC("zeppelin.notebook.one.way.sync", false), // whether by default note is public or private ZEPPELIN_NOTEBOOK_PUBLIC("zeppelin.notebook.public", true), - ZEPPELIN_INTERPRETER_REMOTE_RUNNER("zeppelin.interpreter.remoterunner", - System.getProperty("os.name") - .startsWith("Windows") ? "bin/interpreter.cmd" : "bin/interpreter.sh"), + ZEPPELIN_INTERPRETER_REMOTE_RUNNER( + "zeppelin.interpreter.remoterunner", + System.getProperty("os.name").startsWith("Windows") + ? "bin/interpreter.cmd" + : "bin/interpreter.sh"), // Decide when new note is created, interpreter settings will be binded automatically or not. ZEPPELIN_NOTEBOOK_AUTO_INTERPRETER_BINDING("zeppelin.notebook.autoInterpreterBinding", true), ZEPPELIN_CONF_DIR("zeppelin.conf.dir", "conf"), ZEPPELIN_CONFIG_FS_DIR("zeppelin.config.fs.dir", ""), - ZEPPELIN_CONFIG_STORAGE_CLASS("zeppelin.config.storage.class", - "org.apache.zeppelin.storage.LocalConfigStorage"), + ZEPPELIN_CONFIG_STORAGE_CLASS( + "zeppelin.config.storage.class", "org.apache.zeppelin.storage.LocalConfigStorage"), ZEPPELIN_DEP_LOCALREPO("zeppelin.dep.localrepo", "local-repo"), ZEPPELIN_HELIUM_REGISTRY("zeppelin.helium.registry", "helium," + HELIUM_PACKAGE_DEFAULT_URL), - ZEPPELIN_HELIUM_NODE_INSTALLER_URL("zeppelin.helium.node.installer.url", - "https://nodejs.org/dist/"), - ZEPPELIN_HELIUM_NPM_INSTALLER_URL("zeppelin.helium.npm.installer.url", - "http://registry.npmjs.org/"), - ZEPPELIN_HELIUM_YARNPKG_INSTALLER_URL("zeppelin.helium.yarnpkg.installer.url", - "https://github.com/yarnpkg/yarn/releases/download/"), + ZEPPELIN_HELIUM_NODE_INSTALLER_URL( + "zeppelin.helium.node.installer.url", "https://nodejs.org/dist/"), + ZEPPELIN_HELIUM_NPM_INSTALLER_URL( + "zeppelin.helium.npm.installer.url", "http://registry.npmjs.org/"), + ZEPPELIN_HELIUM_YARNPKG_INSTALLER_URL( + "zeppelin.helium.yarnpkg.installer.url", + "https://github.com/yarnpkg/yarn/releases/download/"), // Allows a way to specify a ',' separated list of allowed origins for rest and websockets // i.e. http://localhost:8080 ZEPPELIN_ALLOWED_ORIGINS("zeppelin.server.allowed.origins", "*"), @@ -773,7 +762,8 @@ public class ZeppelinConfiguration extends XMLConfiguration { ZEPPELIN_SERVER_RPC_PORTRANGE("zeppelin.server.rpc.portRange", ":"), ZEPPELIN_INTERPRETER_RPC_PORTRANGE("zeppelin.interpreter.rpc.portRange", ":"), - ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_CLASS("zeppelin.interpreter.lifecyclemanager.class", + ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_CLASS( + "zeppelin.interpreter.lifecyclemanager.class", "org.apache.zeppelin.interpreter.lifecycle.NullLifecycleManager"), ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_TIMEOUT_CHECK_INTERVAL( "zeppelin.interpreter.lifecyclemanager.timeout.checkinterval", 6000L), @@ -786,8 +776,8 @@ public class ZeppelinConfiguration extends XMLConfiguration { ZEPPELIN_NOTEBOOK_GIT_REMOTE_USERNAME("zeppelin.notebook.git.remote.username", "token"), ZEPPELIN_NOTEBOOK_GIT_REMOTE_ACCESS_TOKEN("zeppelin.notebook.git.remote.access-token", ""), ZEPPELIN_NOTEBOOK_GIT_REMOTE_ORIGIN("zeppelin.notebook.git.remote.origin", "origin"), - ZEPPELIN_NOTEBOOK_COLLABORATIVE_MODE_ENABLE("zeppelin.notebook.collaborative.mode.enable", - true), + ZEPPELIN_NOTEBOOK_COLLABORATIVE_MODE_ENABLE( + "zeppelin.notebook.collaborative.mode.enable", true), ZEPPELIN_NOTEBOOK_CRON_ENABLE("zeppelin.notebook.cron.enable", false), ZEPPELIN_NOTEBOOK_CRON_FOLDERS("zeppelin.notebook.cron.folders", null), ZEPPELIN_PROXY_URL("zeppelin.proxy.url", null), @@ -797,8 +787,10 @@ public class ZeppelinConfiguration extends XMLConfiguration { ZEPPELIN_SEARCH_TEMP_PATH("zeppelin.search.temp.path", System.getProperty("java.io.tmpdir")); private String varName; + @SuppressWarnings("rawtypes") private Class varClass; + private String stringValue; private VarType type; private int intValue; @@ -806,7 +798,6 @@ public class ZeppelinConfiguration extends XMLConfiguration { private boolean booleanValue; private long longValue; - ConfVars(String varName, String varValue) { this.varName = varName; this.varClass = String.class; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java index 0de790a..cbe8b4a 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java @@ -22,7 +22,6 @@ import java.util.Collection; import java.util.Iterator; import java.util.LinkedList; import java.util.List; - import org.sonatype.aether.RepositorySystem; import org.sonatype.aether.RepositorySystemSession; import org.sonatype.aether.repository.Authentication; @@ -31,15 +30,12 @@ import org.sonatype.aether.repository.RemoteRepository; import org.sonatype.aether.repository.RepositoryPolicy; import org.sonatype.aether.resolution.ArtifactResult; -/** - * Abstract dependency resolver. - * Add new dependencies from mvn repo (at runtime) Zeppelin. - */ +/** Abstract dependency resolver. Add new dependencies from mvn repo (at runtime) Zeppelin. */ public abstract class AbstractDependencyResolver { protected RepositorySystem system = Booter.newRepositorySystem(); protected List<RemoteRepository> repos = new LinkedList<>(); protected RepositorySystemSession session; - + public AbstractDependencyResolver(String localRepoPath) { session = Booter.newRepositorySystemSession(system, localRepoPath); repos.add(Booter.newCentralRepository()); // add maven central @@ -59,15 +55,15 @@ public abstract class AbstractDependencyResolver { public List<RemoteRepository> getRepos() { return this.repos; } - + public void addRepo(String id, String url, boolean snapshot) { synchronized (repos) { delRepo(id); RemoteRepository rr = new RemoteRepository(id, "default", url); - rr.setPolicy(snapshot, new RepositoryPolicy( - true, - RepositoryPolicy.UPDATE_POLICY_DAILY, - RepositoryPolicy.CHECKSUM_POLICY_WARN)); + rr.setPolicy( + snapshot, + new RepositoryPolicy( + true, RepositoryPolicy.UPDATE_POLICY_DAILY, RepositoryPolicy.CHECKSUM_POLICY_WARN)); repos.add(rr); } } @@ -76,10 +72,10 @@ public abstract class AbstractDependencyResolver { synchronized (repos) { delRepo(id); RemoteRepository rr = new RemoteRepository(id, "default", url); - rr.setPolicy(snapshot, new RepositoryPolicy( - true, - RepositoryPolicy.UPDATE_POLICY_DAILY, - RepositoryPolicy.CHECKSUM_POLICY_WARN)); + rr.setPolicy( + snapshot, + new RepositoryPolicy( + true, RepositoryPolicy.UPDATE_POLICY_DAILY, RepositoryPolicy.CHECKSUM_POLICY_WARN)); rr.setAuthentication(auth); rr.setProxy(proxy); repos.add(rr); @@ -100,6 +96,6 @@ public abstract class AbstractDependencyResolver { return null; } - public abstract List<ArtifactResult> getArtifactsWithDep(String dependency, - Collection<String> excludes) throws Exception; + public abstract List<ArtifactResult> getArtifactsWithDep( + String dependency, Collection<String> excludes) throws Exception; } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java index 6339a4f..e109cbe 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java @@ -17,6 +17,7 @@ package org.apache.zeppelin.dep; +import java.nio.file.Paths; import org.apache.commons.lang.Validate; import org.apache.maven.repository.internal.MavenRepositorySystemSession; import org.slf4j.Logger; @@ -26,11 +27,7 @@ import org.sonatype.aether.RepositorySystemSession; import org.sonatype.aether.repository.LocalRepository; import org.sonatype.aether.repository.RemoteRepository; -import java.nio.file.Paths; - -/** - * Manage mvn repository. - */ +/** Manage mvn repository. */ public class Booter { private static Logger logger = LoggerFactory.getLogger(Booter.class); @@ -84,7 +81,7 @@ public class Booter { } public static RemoteRepository newLocalRepository() { - return new RemoteRepository("local", - "default", "file://" + System.getProperty("user.home") + "/.m2/repository"); + return new RemoteRepository( + "local", "default", "file://" + System.getProperty("user.home") + "/.m2/repository"); } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Dependency.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Dependency.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Dependency.java index eec6592..cc9f446 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Dependency.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Dependency.java @@ -20,15 +20,12 @@ package org.apache.zeppelin.dep; import java.util.LinkedList; import java.util.List; -/** - * - */ +/** */ public class Dependency { private String groupArtifactVersion; private boolean local = false; private List<String> exclusions; - public Dependency(String groupArtifactVersion) { this.groupArtifactVersion = groupArtifactVersion; exclusions = new LinkedList<>(); @@ -45,6 +42,7 @@ public class Dependency { /** * Don't add artifact into SparkContext (sc.addJar()) + * * @return */ public Dependency local() { @@ -58,7 +56,6 @@ public class Dependency { } /** - * * @param exclusions comma or newline separated list of "groupId:ArtifactId" * @return */ @@ -70,7 +67,6 @@ public class Dependency { return this; } - public String getGroupArtifactVersion() { return groupArtifactVersion; } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyContext.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyContext.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyContext.java index 9bac9e4..f185808 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyContext.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyContext.java @@ -21,7 +21,6 @@ import java.io.File; import java.net.MalformedURLException; import java.util.LinkedList; import java.util.List; - import org.sonatype.aether.RepositorySystem; import org.sonatype.aether.RepositorySystemSession; import org.sonatype.aether.artifact.Artifact; @@ -37,10 +36,7 @@ import org.sonatype.aether.util.artifact.JavaScopes; import org.sonatype.aether.util.filter.DependencyFilterUtils; import org.sonatype.aether.util.filter.PatternExclusionsDependencyFilter; - -/** - * - */ +/** */ public class DependencyContext { List<Dependency> dependencies = new LinkedList<>(); List<Repository> repositories = new LinkedList<>(); @@ -80,16 +76,16 @@ public class DependencyContext { filesDist = new LinkedList<>(); } - /** * fetch all artifacts + * * @return * @throws MalformedURLException * @throws ArtifactResolutionException * @throws DependencyResolutionException */ - public List<File> fetch() throws MalformedURLException, - DependencyResolutionException, ArtifactResolutionException { + public List<File> fetch() + throws MalformedURLException, DependencyResolutionException, ArtifactResolutionException { for (Dependency dep : dependencies) { if (!dep.isLocalFsArtifact()) { @@ -115,14 +111,12 @@ public class DependencyContext { throws DependencyResolutionException, ArtifactResolutionException { Artifact artifact = new DefaultArtifact(dep.getGroupArtifactVersion()); - DependencyFilter classpathFilter = DependencyFilterUtils - .classpathFilter(JavaScopes.COMPILE); - PatternExclusionsDependencyFilter exclusionFilter = new PatternExclusionsDependencyFilter( - dep.getExclusions()); + DependencyFilter classpathFilter = DependencyFilterUtils.classpathFilter(JavaScopes.COMPILE); + PatternExclusionsDependencyFilter exclusionFilter = + new PatternExclusionsDependencyFilter(dep.getExclusions()); CollectRequest collectRequest = new CollectRequest(); - collectRequest.setRoot(new org.sonatype.aether.graph.Dependency(artifact, - JavaScopes.COMPILE)); + collectRequest.setRoot(new org.sonatype.aether.graph.Dependency(artifact, JavaScopes.COMPILE)); collectRequest.addRepository(mavenCentral); collectRequest.addRepository(mavenLocal); @@ -132,8 +126,9 @@ public class DependencyContext { collectRequest.addRepository(rr); } - DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, - DependencyFilterUtils.andFilter(exclusionFilter, classpathFilter)); + DependencyRequest dependencyRequest = + new DependencyRequest( + collectRequest, DependencyFilterUtils.andFilter(exclusionFilter, classpathFilter)); return system.resolveDependencies(session, dependencyRequest).getArtifactResults(); } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java index 495c69b..fbd3561 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java @@ -24,7 +24,6 @@ import java.util.Collection; import java.util.Iterator; import java.util.LinkedList; import java.util.List; - import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; @@ -43,26 +42,25 @@ import org.sonatype.aether.util.artifact.JavaScopes; import org.sonatype.aether.util.filter.DependencyFilterUtils; import org.sonatype.aether.util.filter.PatternExclusionsDependencyFilter; -/** - * Deps resolver. - * Add new dependencies from mvn repo (at runtime) to Zeppelin. - */ +/** Deps resolver. Add new dependencies from mvn repo (at runtime) to Zeppelin. */ public class DependencyResolver extends AbstractDependencyResolver { private Logger logger = LoggerFactory.getLogger(DependencyResolver.class); - private final String[] exclusions = new String[] {"org.apache.zeppelin:zeppelin-zengine", - "org.apache.zeppelin:zeppelin-interpreter", - "org.apache.zeppelin:zeppelin-server"}; + private final String[] exclusions = + new String[] { + "org.apache.zeppelin:zeppelin-zengine", + "org.apache.zeppelin:zeppelin-interpreter", + "org.apache.zeppelin:zeppelin-server" + }; public DependencyResolver(String localRepoPath) { super(localRepoPath); } - public List<File> load(String artifact) - throws RepositoryException, IOException { + public List<File> load(String artifact) throws RepositoryException, IOException { return load(artifact, new LinkedList<String>()); } - + public synchronized List<File> load(String artifact, Collection<String> excludes) throws RepositoryException, IOException { if (StringUtils.isBlank(artifact)) { @@ -103,8 +101,7 @@ public class DependencyResolver extends AbstractDependencyResolver { return libs; } - public synchronized void copyLocalDependency(String srcPath, File destPath) - throws IOException { + public synchronized void copyLocalDependency(String srcPath, File destPath) throws IOException { if (StringUtils.isBlank(srcPath)) { return; } @@ -155,13 +152,12 @@ public class DependencyResolver extends AbstractDependencyResolver { * @throws Exception */ @Override - public List<ArtifactResult> getArtifactsWithDep(String dependency, - Collection<String> excludes) + public List<ArtifactResult> getArtifactsWithDep(String dependency, Collection<String> excludes) throws RepositoryException { Artifact artifact = new DefaultArtifact(dependency); DependencyFilter classpathFilter = DependencyFilterUtils.classpathFilter(JavaScopes.COMPILE); PatternExclusionsDependencyFilter exclusionFilter = - new PatternExclusionsDependencyFilter(excludes); + new PatternExclusionsDependencyFilter(excludes); CollectRequest collectRequest = new CollectRequest(); collectRequest.setRoot(new Dependency(artifact, JavaScopes.COMPILE)); @@ -171,13 +167,14 @@ public class DependencyResolver extends AbstractDependencyResolver { collectRequest.addRepository(repo); } } - DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, - DependencyFilterUtils.andFilter(exclusionFilter, classpathFilter)); + DependencyRequest dependencyRequest = + new DependencyRequest( + collectRequest, DependencyFilterUtils.andFilter(exclusionFilter, classpathFilter)); try { return system.resolveDependencies(session, dependencyRequest).getArtifactResults(); } catch (NullPointerException | DependencyResolutionException ex) { throw new RepositoryException( - String.format("Cannot fetch dependencies for %s", dependency), ex); + String.format("Cannot fetch dependencies for %s", dependency), ex); } } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Repository.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Repository.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Repository.java index 74adce8..8b0d0c1 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Repository.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Repository.java @@ -16,6 +16,7 @@ */ package org.apache.zeppelin.dep; + import static org.apache.commons.lang.StringUtils.isNotBlank; import com.google.gson.Gson; @@ -23,10 +24,7 @@ import org.apache.zeppelin.common.JsonSerializable; import org.sonatype.aether.repository.Authentication; import org.sonatype.aether.repository.Proxy; -/** - * - * - */ +/** */ public class Repository implements JsonSerializable { private static final Gson gson = new Gson(); @@ -41,7 +39,7 @@ public class Repository implements JsonSerializable { private String proxyLogin = null; private String proxyPassword = null; - public Repository(String id){ + public Repository(String id) { this.id = id; } @@ -66,23 +64,23 @@ public class Repository implements JsonSerializable { public String getUrl() { return url; } - + public Repository username(String username) { this.username = username; return this; } - + public Repository password(String password) { this.password = password; return this; } - + public Repository credentials(String username, String password) { this.username = username; this.password = password; return this; } - + public Authentication getAuthentication() { Authentication auth = null; if (this.username != null && this.password != null) { @@ -94,8 +92,8 @@ public class Repository implements JsonSerializable { public Proxy getProxy() { if (isNotBlank(proxyHost) && proxyPort != null) { if (isNotBlank(proxyLogin)) { - return new Proxy(proxyProtocol, proxyHost, proxyPort, - new Authentication(proxyLogin, proxyPassword)); + return new Proxy( + proxyProtocol, proxyHost, proxyPort, new Authentication(proxyLogin, proxyPassword)); } else { return new Proxy(proxyProtocol, proxyHost, proxyPort, null); } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositoryListener.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositoryListener.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositoryListener.java index 9f62d5f..4ea2963 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositoryListener.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositoryListener.java @@ -22,9 +22,7 @@ import org.slf4j.LoggerFactory; import org.sonatype.aether.AbstractRepositoryListener; import org.sonatype.aether.RepositoryEvent; -/** - * Simple listener that print log. - */ +/** Simple listener that print log. */ public class RepositoryListener extends AbstractRepositoryListener { Logger logger = LoggerFactory.getLogger(RepositoryListener.class); @@ -42,8 +40,11 @@ public class RepositoryListener extends AbstractRepositoryListener { @Override public void artifactDescriptorInvalid(RepositoryEvent event) { - logger.info("Invalid artifact descriptor for " + event.getArtifact() + ": " - + event.getException().getMessage()); + logger.info( + "Invalid artifact descriptor for " + + event.getArtifact() + + ": " + + event.getException().getMessage()); } @Override http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositorySystemFactory.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositorySystemFactory.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositorySystemFactory.java index a224603..6e0187f 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositorySystemFactory.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/RepositorySystemFactory.java @@ -27,9 +27,7 @@ import org.sonatype.aether.connector.wagon.WagonProvider; import org.sonatype.aether.connector.wagon.WagonRepositoryConnectorFactory; import org.sonatype.aether.spi.connector.RepositoryConnectorFactory; -/** - * Get maven repository instance. - */ +/** Get maven repository instance. */ public class RepositorySystemFactory { public static RepositorySystem newRepositorySystem() { DefaultServiceLocator locator = new DefaultServiceLocator(); @@ -40,9 +38,7 @@ public class RepositorySystemFactory { return locator.getService(RepositorySystem.class); } - /** - * ManualWagonProvider - */ + /** ManualWagonProvider */ public static class ManualWagonProvider implements WagonProvider { @Override @@ -59,8 +55,6 @@ public class RepositorySystemFactory { } @Override - public void release(Wagon arg0) { - - } + public void release(Wagon arg0) {} } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/TransferListener.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/TransferListener.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/TransferListener.java index 7f25e3b..173f51c 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/TransferListener.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/TransferListener.java @@ -22,16 +22,13 @@ import java.text.DecimalFormatSymbols; import java.util.Locale; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.sonatype.aether.transfer.AbstractTransferListener; import org.sonatype.aether.transfer.TransferEvent; import org.sonatype.aether.transfer.TransferResource; -/** - * Simple listener that show deps downloading progress. - */ +/** Simple listener that show deps downloading progress. */ public class TransferListener extends AbstractTransferListener { private Logger logger = LoggerFactory.getLogger(TransferListener.class); @@ -46,8 +43,11 @@ public class TransferListener extends AbstractTransferListener { String message = event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploading" : "Downloading"; - logger.info(message + ": " + event.getResource().getRepositoryUrl() - + event.getResource().getResourceName()); + logger.info( + message + + ": " + + event.getResource().getRepositoryUrl() + + event.getResource().getResourceName()); } @Override @@ -112,8 +112,15 @@ public class TransferListener extends AbstractTransferListener { throughput = " at " + format.format(kbPerSec) + " KB/sec"; } - logger.info(type + ": " + resource.getRepositoryUrl() + resource.getResourceName() + " (" - + len + throughput + ")"); + logger.info( + type + + ": " + + resource.getRepositoryUrl() + + resource.getResourceName() + + " (" + + len + + throughput + + ")"); } } @@ -139,5 +146,4 @@ public class TransferListener extends AbstractTransferListener { private long toKB(long bytes) { return (bytes + 1023) / 1024; } - } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObject.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObject.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObject.java index 1959e3d..976ba5f 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObject.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObject.java @@ -18,20 +18,19 @@ package org.apache.zeppelin.display; import com.google.gson.Gson; -import org.apache.zeppelin.common.JsonSerializable; -import org.apache.zeppelin.scheduler.ExecutorFactory; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import java.util.LinkedList; import java.util.List; import java.util.Objects; import java.util.concurrent.ExecutorService; +import org.apache.zeppelin.common.JsonSerializable; +import org.apache.zeppelin.scheduler.ExecutorFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** - * AngularObject provides binding between back-end (interpreter) and front-end - * User provided object will automatically synchronized with front-end side. - * i.e. update from back-end will be sent to front-end, update from front-end will sent-to backend + * AngularObject provides binding between back-end (interpreter) and front-end User provided object + * will automatically synchronized with front-end side. i.e. update from back-end will be sent to + * front-end, update from front-end will sent-to backend * * @param <T> */ @@ -41,21 +40,20 @@ public class AngularObject<T> implements JsonSerializable { private String name; private T object; - + private transient AngularObjectListener listener; private transient List<AngularObjectWatcher> watchers = new LinkedList<>(); - - private String noteId; // noteId belonging to. null for global scope + + private String noteId; // noteId belonging to. null for global scope private String paragraphId; // paragraphId belongs to. null for notebook scope /** * Public constructor, neccessary for the deserialization when using Thrift angularRegistryPush() - * Without public constructor, GSON library will instantiate the AngularObject using - * serialization so the <strong>watchers</strong> list won't be initialized and will throw - * NullPointerException the first time it is accessed + * Without public constructor, GSON library will instantiate the AngularObject using serialization + * so the <strong>watchers</strong> list won't be initialized and will throw NullPointerException + * the first time it is accessed */ - public AngularObject() { - } + public AngularObject() {} /** * To create new AngularObject, use AngularObjectRegistry.add() @@ -66,8 +64,8 @@ public class AngularObject<T> implements JsonSerializable { * @param paragraphId paragraphId belongs to. can be null * @param listener event listener */ - public AngularObject(String name, T o, String noteId, String paragraphId, - AngularObjectListener listener) { + public AngularObject( + String name, T o, String noteId, String paragraphId, AngularObjectListener listener) { this.name = name; this.noteId = noteId; this.paragraphId = paragraphId; @@ -77,6 +75,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Get name of this object + * * @return name */ public String getName() { @@ -85,6 +84,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Set noteId + * * @param noteId noteId belongs to. can be null */ public void setNoteId(String noteId) { @@ -93,6 +93,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Get noteId + * * @return noteId */ public String getNoteId() { @@ -101,6 +102,7 @@ public class AngularObject<T> implements JsonSerializable { /** * get ParagraphId + * * @return paragraphId */ public String getParagraphId() { @@ -109,6 +111,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Set paragraphId + * * @param paragraphId paragraphId. can be null */ public void setParagraphId(String paragraphId) { @@ -117,6 +120,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Check if it is global scope object + * * @return true it is global scope */ public boolean isGlobal() { @@ -128,9 +132,9 @@ public class AngularObject<T> implements JsonSerializable { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; AngularObject<?> that = (AngularObject<?>) o; - return Objects.equals(name, that.name) && - Objects.equals(noteId, that.noteId) && - Objects.equals(paragraphId, that.paragraphId); + return Objects.equals(name, that.name) + && Objects.equals(noteId, that.noteId) + && Objects.equals(paragraphId, that.paragraphId); } @Override @@ -140,16 +144,14 @@ public class AngularObject<T> implements JsonSerializable { /** * Get value + * * @return */ public Object get() { return object; } - /** - * fire updated() event for listener - * Note that it does not invoke watcher.watch() - */ + /** fire updated() event for listener Note that it does not invoke watcher.watch() */ public void emit() { if (listener != null) { listener.updated(this); @@ -158,6 +160,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Set value + * * @param o reference to new user provided object */ public void set(T o) { @@ -166,9 +169,10 @@ public class AngularObject<T> implements JsonSerializable { /** * Set value + * * @param o reference to new user provided object * @param emit false on skip firing event for listener. note that it does not skip invoke - * watcher.watch() in any case + * watcher.watch() in any case */ public void set(T o, boolean emit) { final T before = object; @@ -186,21 +190,23 @@ public class AngularObject<T> implements JsonSerializable { ExecutorService executor = ExecutorFactory.singleton().createOrGet("angularObjectWatcher", 50); for (final AngularObjectWatcher w : ws) { - executor.submit(new Runnable() { - @Override - public void run() { - try { - w.watch(before, after); - } catch (Exception e) { - logger.error("Exception on watch", e); - } - } - }); + executor.submit( + new Runnable() { + @Override + public void run() { + try { + w.watch(before, after); + } catch (Exception e) { + logger.error("Exception on watch", e); + } + } + }); } } /** * Set event listener for this object + * * @param listener */ public void setListener(AngularObjectListener listener) { @@ -209,6 +215,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Get event listener of this object + * * @return event listener */ public AngularObjectListener getListener() { @@ -216,8 +223,7 @@ public class AngularObject<T> implements JsonSerializable { } /** - * Add a watcher for this object. - * Multiple watcher can be registered. + * Add a watcher for this object. Multiple watcher can be registered. * * @param watcher watcher to add */ @@ -229,6 +235,7 @@ public class AngularObject<T> implements JsonSerializable { /** * Remove a watcher from this object + * * @param watcher watcher to remove */ public void removeWatcher(AngularObjectWatcher watcher) { @@ -237,9 +244,7 @@ public class AngularObject<T> implements JsonSerializable { } } - /** - * Remove all watchers from this object - */ + /** Remove all watchers from this object */ public void clearAllWatchers() { synchronized (watchers) { watchers.clear(); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/55f6c91c/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObjectListener.java ---------------------------------------------------------------------- diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObjectListener.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObjectListener.java index 20f34af..c5bcd4e 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObjectListener.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/display/AngularObjectListener.java @@ -17,9 +17,7 @@ package org.apache.zeppelin.display; -/** - * - */ +/** */ public interface AngularObjectListener { void updated(AngularObject updatedObject); }
