http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/flink/src/test/java/org/apache/zeppelin/flink/FlinkSQLInterpreterTest.java ---------------------------------------------------------------------- diff --git a/flink/src/test/java/org/apache/zeppelin/flink/FlinkSQLInterpreterTest.java b/flink/src/test/java/org/apache/zeppelin/flink/FlinkSQLInterpreterTest.java index 592ad36..6993540 100644 --- a/flink/src/test/java/org/apache/zeppelin/flink/FlinkSQLInterpreterTest.java +++ b/flink/src/test/java/org/apache/zeppelin/flink/FlinkSQLInterpreterTest.java @@ -17,10 +17,6 @@ package org.apache.zeppelin.flink; -import static org.junit.Assert.assertEquals; - -import java.io.IOException; -import java.util.Properties; import org.apache.zeppelin.display.AngularObjectRegistry; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterException; @@ -32,6 +28,11 @@ import org.apache.zeppelin.interpreter.InterpreterResultMessageOutput; import org.junit.Before; import org.junit.Test; +import java.io.IOException; +import java.util.Properties; + +import static org.junit.Assert.assertEquals; + public class FlinkSQLInterpreterTest { private FlinkInterpreter interpreter; @@ -61,48 +62,49 @@ public class FlinkSQLInterpreterTest { @Test public void testSQLInterpreter() throws InterpreterException { - InterpreterResult result = - interpreter.interpret( - "val ds = benv.fromElements((1, \"jeff\"), (2, \"andy\"))", getInterpreterContext()); + InterpreterResult result = interpreter.interpret( + "val ds = benv.fromElements((1, \"jeff\"), (2, \"andy\"))", getInterpreterContext()); assertEquals(InterpreterResult.Code.SUCCESS, result.code()); - result = - interpreter.interpret("btenv.registerDataSet(\"table_1\", ds)", getInterpreterContext()); + result = interpreter.interpret("btenv.registerDataSet(\"table_1\", ds)", + getInterpreterContext()); assertEquals(InterpreterResult.Code.SUCCESS, result.code()); result = sqlInterpreter.interpret("select * from table_1", getInterpreterContext()); assertEquals(InterpreterResult.Code.SUCCESS, result.code()); assertEquals(InterpreterResult.Type.TABLE, result.message().get(0).getType()); - assertEquals("_1\t_2\n" + "1\tjeff\n" + "2\tandy\n", result.message().get(0).getData()); + assertEquals("_1\t_2\n" + + "1\tjeff\n" + + "2\tandy\n", result.message().get(0).getData()); } private InterpreterContext getInterpreterContext() { output = ""; - InterpreterContext context = - InterpreterContext.builder() - .setInterpreterOut(new InterpreterOutput(null)) - .setAngularObjectRegistry(new AngularObjectRegistry("flink", null)) - .build(); - context.out = - new InterpreterOutput( - new InterpreterOutputListener() { - @Override - public void onUpdateAll(InterpreterOutput out) {} - - @Override - public void onAppend(int index, InterpreterResultMessageOutput out, byte[] line) { - try { - output = out.toInterpreterResultMessage().getData(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - @Override - public void onUpdate(int index, InterpreterResultMessageOutput out) { - messageOutput = out; - } - }); + InterpreterContext context = InterpreterContext.builder() + .setInterpreterOut(new InterpreterOutput(null)) + .setAngularObjectRegistry(new AngularObjectRegistry("flink", null)) + .build(); + context.out = new InterpreterOutput( + new InterpreterOutputListener() { + @Override + public void onUpdateAll(InterpreterOutput out) { + + } + + @Override + public void onAppend(int index, InterpreterResultMessageOutput out, byte[] line) { + try { + output = out.toInterpreterResultMessage().getData(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Override + public void onUpdate(int index, InterpreterResultMessageOutput out) { + messageOutput = out; + } + }); return context; } }
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/geode/pom.xml ---------------------------------------------------------------------- diff --git a/geode/pom.xml b/geode/pom.xml index d2adaad..5e354ae 100644 --- a/geode/pom.xml +++ b/geode/pom.xml @@ -95,6 +95,13 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> </plugins> </build> </project> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/geode/src/main/java/org/apache/zeppelin/geode/GeodeOqlInterpreter.java ---------------------------------------------------------------------- diff --git a/geode/src/main/java/org/apache/zeppelin/geode/GeodeOqlInterpreter.java b/geode/src/main/java/org/apache/zeppelin/geode/GeodeOqlInterpreter.java index 3a013bb..638a9f3 100644 --- a/geode/src/main/java/org/apache/zeppelin/geode/GeodeOqlInterpreter.java +++ b/geode/src/main/java/org/apache/zeppelin/geode/GeodeOqlInterpreter.java @@ -4,19 +4,16 @@ * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance with the License. You may obtain a * copy of the License at - * - * <p>http://www.apache.org/licenses/LICENSE-2.0 - * - * <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. + * <p> + * http://www.apache.org/licenses/LICENSE-2.0 + * <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.geode; -import java.util.Iterator; -import java.util.List; -import java.util.Properties; import org.apache.commons.lang.StringUtils; import org.apache.geode.cache.client.ClientCache; import org.apache.geode.cache.client.ClientCacheFactory; @@ -34,36 +31,55 @@ import org.apache.zeppelin.scheduler.SchedulerFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.Iterator; +import java.util.List; +import java.util.Properties; + /** * Apache Geode OQL Interpreter (http://geode.apache.org) * * <ul> - * <li>{@code geode.locator.host} - The Geode Locator {@code <HOST>} to connect to. - * <li>{@code geode.locator.port} - The Geode Locator {@code <PORT>} to connect to. - * <li>{@code geode.max.result} - Max number of OQL result to display. + * <li>{@code geode.locator.host} - The Geode Locator {@code <HOST>} to connect to.</li> + * <li>{@code geode.locator.port} - The Geode Locator {@code <PORT>} to connect to.</li> + * <li>{@code geode.max.result} - Max number of OQL result to display.</li> * </ul> - * - * <p>Sample usages: <br> - * {@code %geode.oql} <br> - * {@code SELECT * FROM /regionEmployee e WHERE e.companyId > 95} <br> - * {@code SELECT * FROM /regionEmployee ORDER BY employeeId} <br> - * {@code SELECT * FROM /regionEmployee WHERE companyId IN SET(1, 3, 7) OR lastName IN SET('NameA', - * 'NameB') } <br> - * {@code SELECT e.employeeId, c.id as companyId FROM /regionEmployee e, /regionCompany c WHERE - * e.companyId = c.id } - * - * <p>OQL specification and sample queries: + * <p> + * Sample usages: <br/> + * {@code %geode.oql} <br/> + * {@code SELECT * FROM /regionEmployee e WHERE e.companyId > 95} <br/> + * {@code SELECT * FROM /regionEmployee ORDER BY employeeId} <br/> + * {@code + * SELECT * FROM /regionEmployee + * WHERE companyId IN SET(1, 3, 7) OR lastName IN SET('NameA', 'NameB') + * } <br/> + * {@code + * SELECT e.employeeId, c.id as companyId FROM /regionEmployee e, /regionCompany c + * WHERE e.companyId = c.id + * } + * </p> + * <p> + * OQL specification and sample queries: * http://geode-docs.cfapps.io/docs/getting_started/querying_quick_reference.html - * - * <p>When the Zeppelin server is collocated with Geode Shell (gfsh) one can use the %sh interpreter - * to run Geode shell commands: <br> - * {@code %sh source /etc/geode/conf/geode-env.sh gfsh << EOF connect - * --locator=ambari.localdomain[10334] destroy region --name=/regionEmployee create region - * --name=regionEmployee --type=REPLICATE exit; EOF } - * - * <p>Known issue:http://gemfire.docs.pivotal.io/bugnotes/KnownIssuesGemFire810.html #43673 Using - * query "select * from /exampleRegion.entrySet" fails in a client-server topology and/or in a + * </p> + * <p> + * When the Zeppelin server is collocated with Geode Shell (gfsh) one can use the %sh interpreter to + * run Geode shell commands: <br/> + * {@code + * %sh + * source /etc/geode/conf/geode-env.sh + * gfsh << EOF + * connect --locator=ambari.localdomain[10334] + * destroy region --name=/regionEmployee + * create region --name=regionEmployee --type=REPLICATE + * exit; + * EOF + *} + * </p> + * <p> + * Known issue:http://gemfire.docs.pivotal.io/bugnotes/KnownIssuesGemFire810.html #43673 Using query + * "select * from /exampleRegion.entrySet" fails in a client-server topology and/or in a * PartitionedRegion. + * </p> */ public class GeodeOqlInterpreter extends Interpreter { @@ -236,6 +252,7 @@ public class GeodeOqlInterpreter extends Interpreter { msg.append("" + entry); } + @Override public InterpreterResult interpret(String cmd, InterpreterContext contextInterpreter) { logger.info("Run OQL command '{}'", cmd); @@ -259,13 +276,13 @@ public class GeodeOqlInterpreter extends Interpreter { @Override public Scheduler getScheduler() { - return SchedulerFactory.singleton() - .createOrGetFIFOScheduler(GeodeOqlInterpreter.class.getName() + this.hashCode()); + return SchedulerFactory.singleton().createOrGetFIFOScheduler( + GeodeOqlInterpreter.class.getName() + this.hashCode()); } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return null; } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/geode/src/test/java/org/apache/zeppelin/geode/GeodeOqlInterpreterTest.java ---------------------------------------------------------------------- diff --git a/geode/src/test/java/org/apache/zeppelin/geode/GeodeOqlInterpreterTest.java b/geode/src/test/java/org/apache/zeppelin/geode/GeodeOqlInterpreterTest.java index 38d9e30..4404863 100644 --- a/geode/src/test/java/org/apache/zeppelin/geode/GeodeOqlInterpreterTest.java +++ b/geode/src/test/java/org/apache/zeppelin/geode/GeodeOqlInterpreterTest.java @@ -4,31 +4,16 @@ * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance with the License. You may obtain a * copy of the License at - * - * <p>http://www.apache.org/licenses/LICENSE-2.0 - * - * <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. + * <p> + * http://www.apache.org/licenses/LICENSE-2.0 + * <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.geode; -import static org.junit.Assert.assertEquals; -import static org.mockito.Matchers.eq; -import static org.mockito.Mockito.RETURNS_DEEP_STUBS; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.spy; -import static org.mockito.Mockito.times; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; - -import java.io.ByteArrayInputStream; -import java.io.DataInputStream; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Iterator; -import java.util.Properties; import org.apache.geode.cache.query.QueryService; import org.apache.geode.cache.query.SelectResults; import org.apache.geode.cache.query.Struct; @@ -42,6 +27,22 @@ import org.apache.zeppelin.interpreter.InterpreterResult; import org.apache.zeppelin.interpreter.InterpreterResult.Code; import org.junit.Test; +import java.io.ByteArrayInputStream; +import java.io.DataInputStream; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Iterator; +import java.util.Properties; + +import static org.junit.Assert.assertEquals; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.RETURNS_DEEP_STUBS; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + public class GeodeOqlInterpreterTest { private static final String OQL_QUERY = "select * from /region"; @@ -77,9 +78,9 @@ public class GeodeOqlInterpreterTest { @Test public void oqlStructResponse() throws Exception { - String[] fields = new String[] {"field1", "field2"}; - Struct s1 = new StructImpl(new StructTypeImpl(fields), new String[] {"val11", "val12"}); - Struct s2 = new StructImpl(new StructTypeImpl(fields), new String[] {"val21", "val22"}); + String[] fields = new String[]{"field1", "field2"}; + Struct s1 = new StructImpl(new StructTypeImpl(fields), new String[]{"val11", "val12"}); + Struct s2 = new StructImpl(new StructTypeImpl(fields), new String[]{"val21", "val22"}); testOql(asIterator(s1, s2), "field1\tfield2\t\nval11\tval12\t\nval21\tval22\t\n", 10); testOql(asIterator(s1, s2), "field1\tfield2\t\nval11\tval12\t\n", 1); @@ -87,8 +88,8 @@ public class GeodeOqlInterpreterTest { @Test public void oqlStructResponseWithReservedCharacters() throws Exception { - String[] fields = new String[] {"fi\teld1", "f\nield2"}; - Struct s1 = new StructImpl(new StructTypeImpl(fields), new String[] {"v\nal\t1", "val2"}); + String[] fields = new String[]{"fi\teld1", "f\nield2"}; + Struct s1 = new StructImpl(new StructTypeImpl(fields), new String[]{"v\nal\t1", "val2"}); testOql(asIterator(s1), "fi eld1\tf ield2\t\nv al 1\tval2\t\n", 10); } @@ -115,10 +116,8 @@ public class GeodeOqlInterpreterTest { DummyUnspportedType unspported1 = new DummyUnspportedType(); DummyUnspportedType unspported2 = new DummyUnspportedType(); - testOql( - asIterator(unspported1, unspported2), - "Unsuppoted Type\n" + unspported1.toString() + "\n" + unspported1.toString() + "\n", - 10); + testOql(asIterator(unspported1, unspported2), "Unsuppoted Type\n" + unspported1.toString() + + "\n" + unspported1.toString() + "\n", 10); } private void testOql(Iterator<Object> queryResponseIterator, String expectedOutput, int maxResult) @@ -149,8 +148,8 @@ public class GeodeOqlInterpreterTest { GeodeOqlInterpreter spyGeodeOqlInterpreter = spy(new GeodeOqlInterpreter(new Properties())); - when(spyGeodeOqlInterpreter.getExceptionOnConnect()) - .thenReturn(new RuntimeException("Test Exception On Connect")); + when(spyGeodeOqlInterpreter.getExceptionOnConnect()).thenReturn( + new RuntimeException("Test Exception On Connect")); InterpreterResult interpreterResult = spyGeodeOqlInterpreter.interpret(OQL_QUERY, null); @@ -163,8 +162,8 @@ public class GeodeOqlInterpreterTest { GeodeOqlInterpreter spyGeodeOqlInterpreter = spy(new GeodeOqlInterpreter(new Properties())); - when(spyGeodeOqlInterpreter.getQueryService()) - .thenThrow(new RuntimeException("Expected Test Exception!")); + when(spyGeodeOqlInterpreter.getQueryService()).thenThrow( + new RuntimeException("Expected Test Exception!")); InterpreterResult interpreterResult = spyGeodeOqlInterpreter.interpret(OQL_QUERY, null); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/groovy/pom-groovy-only.xml ---------------------------------------------------------------------- diff --git a/groovy/pom-groovy-only.xml b/groovy/pom-groovy-only.xml index 78fff94..971c674 100644 --- a/groovy/pom-groovy-only.xml +++ b/groovy/pom-groovy-only.xml @@ -79,6 +79,17 @@ </compilerArgs> </configuration> </plugin> + + <!--TODO: comment local `maven-checkstyle-plugin` and use zeppelin common check style--> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>true</skip> + </configuration> + <executions> + </executions> + </plugin> <plugin> <artifactId>maven-enforcer-plugin</artifactId> <version>1.3.1</version> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/groovy/pom.xml ---------------------------------------------------------------------- diff --git a/groovy/pom.xml b/groovy/pom.xml index 8de3365..9b95fc3 100644 --- a/groovy/pom.xml +++ b/groovy/pom.xml @@ -80,6 +80,13 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/groovy/src/main/java/org/apache/zeppelin/groovy/GObject.java ---------------------------------------------------------------------- diff --git a/groovy/src/main/java/org/apache/zeppelin/groovy/GObject.java b/groovy/src/main/java/org/apache/zeppelin/groovy/GObject.java index de898cd..e7f27c3 100644 --- a/groovy/src/main/java/org/apache/zeppelin/groovy/GObject.java +++ b/groovy/src/main/java/org/apache/zeppelin/groovy/GObject.java @@ -18,12 +18,6 @@ package org.apache.zeppelin.groovy; import groovy.lang.Closure; import groovy.xml.MarkupBuilder; -import java.io.IOException; -import java.io.StringWriter; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Map; -import java.util.Properties; import org.apache.thrift.TException; import org.apache.zeppelin.annotation.ZeppelinApi; import org.apache.zeppelin.display.AngularObject; @@ -33,7 +27,16 @@ import org.apache.zeppelin.display.ui.OptionInput.ParamOption; import org.apache.zeppelin.interpreter.InterpreterContext; import org.slf4j.Logger; -/** Groovy interpreter for Zeppelin. */ +import java.io.IOException; +import java.io.StringWriter; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Map; +import java.util.Properties; + +/** + * Groovy interpreter for Zeppelin. + */ public class GObject extends groovy.lang.GroovyObjectSupport { Logger log; StringWriter out; @@ -42,11 +45,7 @@ public class GObject extends groovy.lang.GroovyObjectSupport { Map<String, Object> bindings; GroovyZeppelinContext z; - public GObject( - Logger log, - StringWriter out, - Properties p, - InterpreterContext ctx, + public GObject(Logger log, StringWriter out, Properties p, InterpreterContext ctx, Map<String, Object> bindings) { this.log = log; this.out = out; @@ -84,7 +83,9 @@ public class GObject extends groovy.lang.GroovyObjectSupport { } } - /** returns gui object. */ + /** + * returns gui object. + */ public GUI getGui() { return z.getGui(); } @@ -124,11 +125,12 @@ public class GObject extends groovy.lang.GroovyObjectSupport { } @ZeppelinApi - public Collection<Object> checkbox( - String name, Collection<Object> defaultChecked, Map<Object, String> options) { + public Collection<Object> checkbox(String name, Collection<Object> defaultChecked, + Map<Object, String> options) { return z.checkbox(name, new ArrayList<Object>(defaultChecked), toParamOptions(options)); } + /** * Returns shared variable if it was previously set. The same as getting groovy script variables * but this method will return null if script variable not assigned. To understand groovy script @@ -153,9 +155,9 @@ public class GObject extends groovy.lang.GroovyObjectSupport { } /** - * Sets a new value to interpreter's shared variables. Could be set by <code> - * put('varName', newValue )</code> or by just assigning <code>varName = value</code> without - * declaring a variable. + * Sets a new value to interpreter's shared variables. + * Could be set by <code>put('varName', newValue )</code> + * or by just assigning <code>varName = value</code> without declaring a variable. */ public Object put(String varName, Object newValue) { return bindings.put(varName, newValue); @@ -163,7 +165,6 @@ public class GObject extends groovy.lang.GroovyObjectSupport { /** * starts or continues rendering html/angular and returns MarkupBuilder to build html. - * * <pre> g.html().with{ * h1("hello") * h2("world") @@ -186,7 +187,7 @@ public class GObject extends groovy.lang.GroovyObjectSupport { StringBuffer sb = out.getBuffer(); startOutputType("%table"); if (obj instanceof groovy.lang.Closure) { - // if closure run and get result collection + //if closure run and get result collection obj = ((Closure) obj).call(); } if (obj instanceof Collection) { @@ -244,8 +245,8 @@ public class GObject extends groovy.lang.GroovyObjectSupport { } /** - * Create angular variable in notebook scope and bind with front end Angular display system. If - * variable exists, it'll be overwritten. + * Create angular variable in notebook scope and bind with front end Angular display system. + * If variable exists, it'll be overwritten. * * @param name name of the variable * @param o value @@ -254,19 +255,25 @@ public class GObject extends groovy.lang.GroovyObjectSupport { angularBind(name, o, interpreterContext.getNoteId()); } - /** Run paragraph by id. */ + /** + * Run paragraph by id. + */ @ZeppelinApi public void run(String noteId, String paragraphId) throws IOException { z.run(noteId, paragraphId); } - /** Run paragraph by id. */ + /** + * Run paragraph by id. + */ @ZeppelinApi public void run(String paragraphId) throws IOException { z.run(paragraphId); } - /** Run paragraph by id. */ + /** + * Run paragraph by id. + */ @ZeppelinApi public void run(String noteId, String paragraphId, InterpreterContext context) throws IOException { @@ -281,13 +288,17 @@ public class GObject extends groovy.lang.GroovyObjectSupport { z.runNote(noteId, context); } - /** Run all paragraphs. except this. */ + /** + * Run all paragraphs. except this. + */ @ZeppelinApi public void runAll() throws IOException { z.runAll(interpreterContext); } - /** Run all paragraphs. except this. */ + /** + * Run all paragraphs. except this. + */ @ZeppelinApi public void runAll(InterpreterContext context) throws IOException { z.runNote(context.getNoteId()); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyInterpreter.java ---------------------------------------------------------------------- diff --git a/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyInterpreter.java b/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyInterpreter.java index 26f812b..607a6d5 100644 --- a/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyInterpreter.java +++ b/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyInterpreter.java @@ -17,8 +17,12 @@ package org.apache.zeppelin.groovy; -import groovy.lang.GroovyShell; -import groovy.lang.Script; +import org.codehaus.groovy.control.CompilerConfiguration; +import org.codehaus.groovy.runtime.StackTraceUtils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.File; import java.io.PrintWriter; import java.io.StringWriter; @@ -31,6 +35,10 @@ import java.util.Properties; import java.util.Set; import java.util.WeakHashMap; import java.util.concurrent.ConcurrentHashMap; + +import groovy.lang.GroovyShell; +import groovy.lang.Script; + import org.apache.zeppelin.interpreter.Interpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterResult; @@ -39,20 +47,18 @@ import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.apache.zeppelin.scheduler.Job; import org.apache.zeppelin.scheduler.Scheduler; import org.apache.zeppelin.scheduler.SchedulerFactory; -import org.codehaus.groovy.control.CompilerConfiguration; -import org.codehaus.groovy.runtime.StackTraceUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -/** Groovy interpreter for Zeppelin. */ +/** + * Groovy interpreter for Zeppelin. + */ public class GroovyInterpreter extends Interpreter { Logger log = LoggerFactory.getLogger(GroovyInterpreter.class); - GroovyShell shell = null; // new GroovyShell(); - // here we will store Interpreters shared variables. concurrent just in case. + GroovyShell shell = null; //new GroovyShell(); + //here we will store Interpreters shared variables. concurrent just in case. Map<String, Object> sharedBindings = new ConcurrentHashMap<String, Object>(); - // cache for groovy compiled scripts - Map<String, Class<Script>> scriptCache = - Collections.synchronizedMap(new WeakHashMap<String, Class<Script>>(100)); + //cache for groovy compiled scripts + Map<String, Class<Script>> scriptCache = Collections + .synchronizedMap(new WeakHashMap<String, Class<Script>>(100)); public GroovyInterpreter(Properties property) { super(property); @@ -66,14 +72,9 @@ public class GroovyInterpreter extends Interpreter { String classes = getProperty("GROOVY_CLASSES"); if (classes == null || classes.length() == 0) { try { - File jar = - new File( - GroovyInterpreter.class - .getProtectionDomain() - .getCodeSource() - .getLocation() - .toURI() - .getPath()); + File jar = new File( + GroovyInterpreter.class.getProtectionDomain().getCodeSource().getLocation().toURI() + .getPath()); classes = new File(jar.getParentFile(), "classes").toString(); } catch (Exception e) { log.error(e.getMessage()); @@ -122,8 +123,8 @@ public class GroovyInterpreter extends Interpreter { } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return null; } @@ -160,24 +161,23 @@ public class GroovyInterpreter extends Interpreter { try { Script script = getGroovyScript(contextInterpreter.getParagraphId(), cmd); Job runningJob = getRunningJob(contextInterpreter.getParagraphId()); - runningJob - .info() - .put("CURRENT_THREAD", Thread.currentThread()); // to be able to terminate thread + runningJob.info() + .put("CURRENT_THREAD", Thread.currentThread()); //to be able to terminate thread Map<String, Object> bindings = script.getBinding().getVariables(); bindings.clear(); StringWriter out = new StringWriter((int) (cmd.length() * 1.75)); - // put shared bindings evaluated in this interpreter + //put shared bindings evaluated in this interpreter bindings.putAll(sharedBindings); - // put predefined bindings + //put predefined bindings bindings.put("g", new GObject(log, out, this.getProperties(), contextInterpreter, bindings)); bindings.put("out", new PrintWriter(out, true)); script.run(); - // let's get shared variables defined in current script and store them in shared map + //let's get shared variables defined in current script and store them in shared map for (Map.Entry<String, Object> e : bindings.entrySet()) { if (!predefinedBindings.contains(e.getKey())) { if (log.isTraceEnabled()) { - log.trace("groovy script variable " + e); // let's see what we have... + log.trace("groovy script variable " + e); //let's see what we have... } sharedBindings.put(e.getKey(), e.getValue()); } @@ -205,7 +205,7 @@ public class GroovyInterpreter extends Interpreter { Thread t = (Thread) object; t.dumpStack(); t.interrupt(); - // t.stop(); //TODO(dlukyanov): need some way to terminate maybe through GObject.. + //t.stop(); //TODO(dlukyanov): need some way to terminate maybe through GObject.. } catch (Throwable t) { log.error("Failed to cancel script: " + t, t); } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyZeppelinContext.java ---------------------------------------------------------------------- diff --git a/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyZeppelinContext.java b/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyZeppelinContext.java index 2016d3d..3d17462 100644 --- a/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyZeppelinContext.java +++ b/groovy/src/main/java/org/apache/zeppelin/groovy/GroovyZeppelinContext.java @@ -17,12 +17,15 @@ package org.apache.zeppelin.groovy; -import java.util.List; -import java.util.Map; import org.apache.zeppelin.interpreter.BaseZeppelinContext; import org.apache.zeppelin.interpreter.InterpreterHookRegistry; -/** ZeppelinContext for Groovy */ +import java.util.List; +import java.util.Map; + +/** + * ZeppelinContext for Groovy + */ public class GroovyZeppelinContext extends BaseZeppelinContext { public GroovyZeppelinContext(InterpreterHookRegistry hooks, int maxResult) { http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/hbase/pom.xml ---------------------------------------------------------------------- diff --git a/hbase/pom.xml b/hbase/pom.xml index 46886fd..f189c07 100644 --- a/hbase/pom.xml +++ b/hbase/pom.xml @@ -124,6 +124,13 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/hbase/src/main/java/org/apache/zeppelin/hbase/HbaseInterpreter.java ---------------------------------------------------------------------- diff --git a/hbase/src/main/java/org/apache/zeppelin/hbase/HbaseInterpreter.java b/hbase/src/main/java/org/apache/zeppelin/hbase/HbaseInterpreter.java index 9c92cc5..adddacf 100644 --- a/hbase/src/main/java/org/apache/zeppelin/hbase/HbaseInterpreter.java +++ b/hbase/src/main/java/org/apache/zeppelin/hbase/HbaseInterpreter.java @@ -14,6 +14,11 @@ package org.apache.zeppelin.hbase; +import org.jruby.embed.LocalContextScope; +import org.jruby.embed.ScriptingContainer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.File; import java.io.FileInputStream; import java.io.IOException; @@ -22,6 +27,7 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.util.List; import java.util.Properties; + import org.apache.zeppelin.interpreter.Interpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterException; @@ -29,25 +35,22 @@ import org.apache.zeppelin.interpreter.InterpreterResult; import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.apache.zeppelin.scheduler.Scheduler; import org.apache.zeppelin.scheduler.SchedulerFactory; -import org.jruby.embed.LocalContextScope; -import org.jruby.embed.ScriptingContainer; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** - * Support for HBase Shell. All the commands documented here http://hbase.apache.org/book.html#shell - * is supported. + * Support for HBase Shell. All the commands documented here + * http://hbase.apache.org/book.html#shell is supported. * - * <p>Requirements: HBase Shell should be installed on the same machine. To be more specific, the - * following dir. should be available: - * https://github.com/apache/hbase/tree/master/hbase-shell/src/main/ruby HBase Shell should be able - * to connect to the HBase cluster from terminal. This makes sure that the client is configured - * properly. + * Requirements: + * HBase Shell should be installed on the same machine. To be more specific, the following dir. + * should be available: https://github.com/apache/hbase/tree/master/hbase-shell/src/main/ruby + * HBase Shell should be able to connect to the HBase cluster from terminal. This makes sure + * that the client is configured properly. * - * <p>The interpreter takes 3 config parameters: hbase.home: Root directory where HBase is - * installed. Default is /usr/lib/hbase/ hbase.ruby.sources: Dir where shell ruby code is installed. - * Path is relative to hbase.home. Default: lib/ruby zeppelin.hbase.test.mode: (Testing only) - * Disable checks for unit and manual tests. Default: false + * The interpreter takes 3 config parameters: + * hbase.home: Root directory where HBase is installed. Default is /usr/lib/hbase/ + * hbase.ruby.sources: Dir where shell ruby code is installed. + * Path is relative to hbase.home. Default: lib/ruby + * zeppelin.hbase.test.mode: (Testing only) Disable checks for unit and manual tests. Default: false */ public class HbaseInterpreter extends Interpreter { public static final String HBASE_HOME = "hbase.home"; @@ -65,7 +68,7 @@ public class HbaseInterpreter extends Interpreter { @Override public void open() throws InterpreterException { - this.scriptingContainer = new ScriptingContainer(LocalContextScope.SINGLETON); + this.scriptingContainer = new ScriptingContainer(LocalContextScope.SINGLETON); this.writer = new StringWriter(); scriptingContainer.setOutput(this.writer); @@ -79,8 +82,8 @@ public class HbaseInterpreter extends Interpreter { File f = absRubySrc.toFile(); if (!f.exists() || !f.isDirectory()) { - throw new InterpreterException( - "HBase ruby sources is not available at '" + absRubySrc + "'"); + throw new InterpreterException("HBase ruby sources is not available at '" + absRubySrc + + "'"); } logger.info("Absolute Ruby Source:" + absRubySrc.toString()); @@ -136,17 +139,20 @@ public class HbaseInterpreter extends Interpreter { @Override public Scheduler getScheduler() { - return SchedulerFactory.singleton() - .createOrGetFIFOScheduler(HbaseInterpreter.class.getName() + this.hashCode()); + return SchedulerFactory.singleton().createOrGetFIFOScheduler( + HbaseInterpreter.class.getName() + this.hashCode()); } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return null; } - private static String getSystemDefault(String envName, String propertyName, String defaultValue) { + private static String getSystemDefault( + String envName, + String propertyName, + String defaultValue) { if (envName != null && !envName.isEmpty()) { String envValue = System.getenv().get(envName); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/hbase/src/test/java/org/apache/zeppelin/hbase/HbaseInterpreterTest.java ---------------------------------------------------------------------- diff --git a/hbase/src/test/java/org/apache/zeppelin/hbase/HbaseInterpreterTest.java b/hbase/src/test/java/org/apache/zeppelin/hbase/HbaseInterpreterTest.java index 82dd44c..37110d8 100644 --- a/hbase/src/test/java/org/apache/zeppelin/hbase/HbaseInterpreterTest.java +++ b/hbase/src/test/java/org/apache/zeppelin/hbase/HbaseInterpreterTest.java @@ -18,16 +18,20 @@ import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.notNullValue; import static org.junit.Assert.assertEquals; -import java.util.Properties; import org.apache.log4j.BasicConfigurator; -import org.apache.zeppelin.interpreter.InterpreterException; -import org.apache.zeppelin.interpreter.InterpreterResult; import org.junit.BeforeClass; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** Tests for HBase Interpreter. */ +import java.util.Properties; + +import org.apache.zeppelin.interpreter.InterpreterException; +import org.apache.zeppelin.interpreter.InterpreterResult; + +/** + * Tests for HBase Interpreter. + */ public class HbaseInterpreterTest { private static Logger logger = LoggerFactory.getLogger(HbaseInterpreterTest.class); private static HbaseInterpreter hbaseInterpreter; @@ -43,7 +47,7 @@ public class HbaseInterpreterTest { hbaseInterpreter = new HbaseInterpreter(properties); hbaseInterpreter.open(); } - + @Test public void newObject() { assertThat(hbaseInterpreter, notNullValue()); @@ -56,10 +60,10 @@ public class HbaseInterpreterTest { assertEquals(result.message().get(0).getType(), InterpreterResult.Type.TEXT); assertEquals("Hello World\n", result.message().get(0).getData()); } - + public void putsLoadPath() { - InterpreterResult result = - hbaseInterpreter.interpret("require 'two_power'; puts twoToThePowerOf(4)", null); + InterpreterResult result = hbaseInterpreter.interpret( + "require 'two_power'; puts twoToThePowerOf(4)", null); assertEquals(InterpreterResult.Code.SUCCESS, result.code()); assertEquals(result.message().get(0).getType(), InterpreterResult.Type.TEXT); assertEquals("16\n", result.message().get(0).getData()); @@ -69,8 +73,7 @@ public class HbaseInterpreterTest { public void testException() { InterpreterResult result = hbaseInterpreter.interpret("plot practical joke", null); assertEquals(InterpreterResult.Code.ERROR, result.code()); - assertEquals( - "(NameError) undefined local variable or method `joke' for main:Object", - result.message().get(0).getData()); + assertEquals("(NameError) undefined local variable or method `joke' for main:Object", + result.message().get(0).getData()); } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/helium-dev/src/main/java/org/apache/zeppelin/helium/DevInterpreter.java ---------------------------------------------------------------------- diff --git a/helium-dev/src/main/java/org/apache/zeppelin/helium/DevInterpreter.java b/helium-dev/src/main/java/org/apache/zeppelin/helium/DevInterpreter.java index 99c029b..00846de 100644 --- a/helium-dev/src/main/java/org/apache/zeppelin/helium/DevInterpreter.java +++ b/helium-dev/src/main/java/org/apache/zeppelin/helium/DevInterpreter.java @@ -17,17 +17,20 @@ package org.apache.zeppelin.helium; -import java.io.IOException; -import java.util.LinkedList; -import java.util.List; -import java.util.Properties; import org.apache.zeppelin.interpreter.Interpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterException; import org.apache.zeppelin.interpreter.InterpreterResult; import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; -/** Dummy interpreter to support development mode for Zeppelin app */ +import java.io.IOException; +import java.util.LinkedList; +import java.util.List; +import java.util.Properties; + +/** + * Dummy interpreter to support development mode for Zeppelin app + */ public class DevInterpreter extends Interpreter { private InterpreterEvent interpreterEvent; @@ -38,7 +41,9 @@ public class DevInterpreter extends Interpreter { return replName.equals("dev"); } - /** event handler for org.apache.zeppelin.helium.ZeppelinApplicationDevServer */ + /** + * event handler for org.apache.zeppelin.helium.ZeppelinApplicationDevServer + */ public static interface InterpreterEvent { public InterpreterResult interpret(String st, InterpreterContext context); } @@ -58,7 +63,8 @@ public class DevInterpreter extends Interpreter { } @Override - public void close() {} + public void close() { + } public void rerun() { try { @@ -81,7 +87,8 @@ public class DevInterpreter extends Interpreter { } @Override - public void cancel(InterpreterContext context) {} + public void cancel(InterpreterContext context) { + } @Override public FormType getFormType() { @@ -94,8 +101,8 @@ public class DevInterpreter extends Interpreter { } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return new LinkedList<>(); } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/helium-dev/src/main/java/org/apache/zeppelin/helium/DevZeppelinContext.java ---------------------------------------------------------------------- diff --git a/helium-dev/src/main/java/org/apache/zeppelin/helium/DevZeppelinContext.java b/helium-dev/src/main/java/org/apache/zeppelin/helium/DevZeppelinContext.java index 744cd3d..75d193c 100644 --- a/helium-dev/src/main/java/org/apache/zeppelin/helium/DevZeppelinContext.java +++ b/helium-dev/src/main/java/org/apache/zeppelin/helium/DevZeppelinContext.java @@ -15,14 +15,18 @@ * limitations under the License. */ + package org.apache.zeppelin.helium; -import java.util.List; -import java.util.Map; import org.apache.zeppelin.interpreter.BaseZeppelinContext; import org.apache.zeppelin.interpreter.InterpreterHookRegistry; -/** ZeppelinContext for DevInterpreter */ +import java.util.List; +import java.util.Map; + +/** + * ZeppelinContext for DevInterpreter + */ public class DevZeppelinContext extends BaseZeppelinContext { public DevZeppelinContext(InterpreterHookRegistry hooks, int maxResult) { super(hooks, maxResult); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinApplicationDevServer.java ---------------------------------------------------------------------- diff --git a/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinApplicationDevServer.java b/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinApplicationDevServer.java index edb1230..d0118e5 100644 --- a/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinApplicationDevServer.java +++ b/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinApplicationDevServer.java @@ -17,9 +17,10 @@ package org.apache.zeppelin.helium; -import com.google.gson.Gson; import java.io.IOException; import java.lang.reflect.Constructor; + +import com.google.gson.Gson; import org.apache.log4j.ConsoleAppender; import org.apache.log4j.Level; import org.apache.log4j.PatternLayout; @@ -30,7 +31,9 @@ import org.apache.zeppelin.resource.ResourceSet; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** Run this server for development mode. */ +/** + * Run this server for development mode. + */ public class ZeppelinApplicationDevServer extends ZeppelinDevServer { final Logger logger = LoggerFactory.getLogger(ZeppelinApplicationDevServer.class); @@ -39,13 +42,13 @@ public class ZeppelinApplicationDevServer extends ZeppelinDevServer { private Application app; private InterpreterOutput out; - public ZeppelinApplicationDevServer(final String className, ResourceSet resourceSet) - throws Exception { + public ZeppelinApplicationDevServer(final String className, ResourceSet resourceSet) throws + Exception { this(Constants.ZEPPELIN_INTERPRETER_DEFAUlT_PORT, className, resourceSet); } - public ZeppelinApplicationDevServer(int port, String className, ResourceSet resourceSet) - throws Exception { + public ZeppelinApplicationDevServer(int port, String className, ResourceSet resourceSet) throws + Exception { super(port); this.className = className; this.resourceSet = resourceSet; @@ -53,16 +56,17 @@ public class ZeppelinApplicationDevServer extends ZeppelinDevServer { }; void setLogger() { - ConsoleAppender console = new ConsoleAppender(); // create appender - // configure the appender + ConsoleAppender console = new ConsoleAppender(); //create appender + //configure the appender String PATTERN = "%d [%p|%c|%C{1}] %m%n"; console.setLayout(new PatternLayout(PATTERN)); console.setThreshold(Level.DEBUG); console.activateOptions(); - // add appender to any Logger (here is root) + //add appender to any Logger (here is root) org.apache.log4j.Logger.getRootLogger().addAppender(console); } + @Override public InterpreterResult interpret(String st, InterpreterContext context) { if (app == null) { @@ -136,29 +140,28 @@ public class ZeppelinApplicationDevServer extends ZeppelinDevServer { if (out == null) { final RemoteInterpreterEventClient eventClient = getIntpEventClient(); try { - out = - new InterpreterOutput( - new InterpreterOutputListener() { - @Override - public void onUpdateAll(InterpreterOutput out) {} - - @Override - public void onAppend(int index, InterpreterResultMessageOutput out, byte[] line) { - eventClient.onInterpreterOutputAppend( - noteId, paragraphId, index, new String(line)); - } - - @Override - public void onUpdate(int index, InterpreterResultMessageOutput out) { - try { - eventClient.onInterpreterOutputUpdate( - noteId, paragraphId, index, out.getType(), new String(out.toByteArray())); - } catch (IOException e) { - logger.error(e.getMessage(), e); - } - } - }, - this); + out = new InterpreterOutput(new InterpreterOutputListener() { + @Override + public void onUpdateAll(InterpreterOutput out) { + + } + + @Override + public void onAppend(int index, InterpreterResultMessageOutput out, byte[] line) { + eventClient.onInterpreterOutputAppend(noteId, paragraphId, index, new String(line)); + } + + @Override + public void onUpdate(int index, InterpreterResultMessageOutput out) { + try { + eventClient.onInterpreterOutputUpdate(noteId, paragraphId, + index, out.getType(), new String(out.toByteArray())); + } catch (IOException e) { + logger.error(e.getMessage(), e); + } + } + + }, this); } catch (IOException e) { return null; } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinDevServer.java ---------------------------------------------------------------------- diff --git a/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinDevServer.java b/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinDevServer.java index e260510..4c0e867 100644 --- a/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinDevServer.java +++ b/helium-dev/src/main/java/org/apache/zeppelin/helium/ZeppelinDevServer.java @@ -20,6 +20,7 @@ package org.apache.zeppelin.helium; import java.io.File; import java.io.IOException; import java.util.HashMap; + import org.apache.thrift.TException; import org.apache.zeppelin.helium.DevInterpreter.InterpreterEvent; import org.apache.zeppelin.interpreter.*; @@ -28,14 +29,15 @@ import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** Interpreter development server */ -public class ZeppelinDevServer extends RemoteInterpreterServer - implements InterpreterEvent, InterpreterOutputChangeListener { +/** + * Interpreter development server + */ +public class ZeppelinDevServer extends + RemoteInterpreterServer implements InterpreterEvent, InterpreterOutputChangeListener { private static final Logger logger = LoggerFactory.getLogger(ZeppelinDevServer.class); private DevInterpreter interpreter = null; private InterpreterOutput out; - public ZeppelinDevServer(int port) throws TException, IOException { super(null, port, null, ":"); } @@ -56,7 +58,8 @@ public class ZeppelinDevServer extends RemoteInterpreterServer } Interpreter intp = super.getInterpreter(sessionId, className); - interpreter = (DevInterpreter) (((LazyOpenInterpreter) intp).getInnerInterpreter()); + interpreter = (DevInterpreter) ( + ((LazyOpenInterpreter) intp).getInnerInterpreter()); interpreter.setInterpreterEvent(this); return super.getInterpreter(sessionId, className); } @@ -67,29 +70,27 @@ public class ZeppelinDevServer extends RemoteInterpreterServer if (out == null) { final RemoteInterpreterEventClient eventClient = getIntpEventClient(); try { - out = - new InterpreterOutput( - new InterpreterOutputListener() { - @Override - public void onUpdateAll(InterpreterOutput out) {} - - @Override - public void onAppend(int index, InterpreterResultMessageOutput out, byte[] line) { - eventClient.onInterpreterOutputAppend( - noteId, paragraphId, index, new String(line)); - } - - @Override - public void onUpdate(int index, InterpreterResultMessageOutput out) { - try { - eventClient.onInterpreterOutputUpdate( - noteId, paragraphId, index, out.getType(), new String(out.toByteArray())); - } catch (IOException e) { - logger.error(e.getMessage(), e); - } - } - }, - this); + out = new InterpreterOutput(new InterpreterOutputListener() { + @Override + public void onUpdateAll(InterpreterOutput out) { + + } + + @Override + public void onAppend(int index, InterpreterResultMessageOutput out, byte[] line) { + eventClient.onInterpreterOutputAppend(noteId, paragraphId, index, new String(line)); + } + + @Override + public void onUpdate(int index, InterpreterResultMessageOutput out) { + try { + eventClient.onInterpreterOutputUpdate(noteId, paragraphId, + index, out.getType(), new String(out.toByteArray())); + } catch (IOException e) { + logger.error(e.getMessage(), e); + } + } + }, this); } catch (IOException e) { return null; } @@ -114,7 +115,9 @@ public class ZeppelinDevServer extends RemoteInterpreterServer interpreter.rerun(); } - /** Wait until %dev paragraph is executed and connected to this process */ + /** + * Wait until %dev paragraph is executed and connected to this process + */ public void waitForConnected() { synchronized (this) { while (!isConnected()) { http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/pom.xml ---------------------------------------------------------------------- diff --git a/ignite/pom.xml b/ignite/pom.xml index cd778b8..7d7b3db 100644 --- a/ignite/pom.xml +++ b/ignite/pom.xml @@ -114,6 +114,13 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreter.java ---------------------------------------------------------------------- diff --git a/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreter.java b/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreter.java index 9aa85a2..e104039 100644 --- a/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreter.java +++ b/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreter.java @@ -16,6 +16,14 @@ */ package org.apache.zeppelin.ignite; +import org.apache.ignite.Ignite; +import org.apache.ignite.Ignition; +import org.apache.ignite.configuration.IgniteConfiguration; +import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; +import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.ByteArrayOutputStream; import java.io.File; import java.io.PrintWriter; @@ -27,21 +35,7 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Properties; -import org.apache.ignite.Ignite; -import org.apache.ignite.Ignition; -import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; -import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder; -import org.apache.zeppelin.interpreter.Interpreter; -import org.apache.zeppelin.interpreter.InterpreterContext; -import org.apache.zeppelin.interpreter.InterpreterResult; -import org.apache.zeppelin.interpreter.InterpreterResult.Code; -import org.apache.zeppelin.interpreter.InterpreterUtils; -import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; -import org.apache.zeppelin.scheduler.Scheduler; -import org.apache.zeppelin.scheduler.SchedulerFactory; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; + import scala.Console; import scala.Some; import scala.collection.JavaConversions; @@ -51,20 +45,29 @@ import scala.tools.nsc.interpreter.Results.Result; import scala.tools.nsc.settings.MutableSettings.BooleanSetting; import scala.tools.nsc.settings.MutableSettings.PathSetting; +import org.apache.zeppelin.interpreter.Interpreter; +import org.apache.zeppelin.interpreter.InterpreterContext; +import org.apache.zeppelin.interpreter.InterpreterResult; +import org.apache.zeppelin.interpreter.InterpreterResult.Code; +import org.apache.zeppelin.interpreter.InterpreterUtils; +import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; +import org.apache.zeppelin.scheduler.Scheduler; +import org.apache.zeppelin.scheduler.SchedulerFactory; + /** * Apache Ignite interpreter (http://ignite.incubator.apache.org/). * - * <p>Use the following properties for interpreter configuration: + * Use the following properties for interpreter configuration: * * <ul> - * <li>{@code ignite.addresses} - coma separated list of hosts in form {@code <host>:<port>} or - * {@code <host>:<port_1>..<port_n>} - * <li>{@code ignite.clientMode} - indicates that Ignite interpreter should start node in client - * mode ({@code true} or {@code false}). - * <li>{@code ignite.peerClassLoadingEnabled} - enables/disables peer class loading ({@code true} - * or {@code false}). - * <li>{@code ignite.config.url} - URL for Ignite configuration. If this URL specified then all - * aforementioned properties will not be taken in account. + * <li>{@code ignite.addresses} - coma separated list of hosts in form {@code <host>:<port>} + * or {@code <host>:<port_1>..<port_n>} </li> + * <li>{@code ignite.clientMode} - indicates that Ignite interpreter + * should start node in client mode ({@code true} or {@code false}).</li> + * <li>{@code ignite.peerClassLoadingEnabled} - enables/disables peer class loading + * ({@code true} or {@code false}).</li> + * <li>{@code ignite.config.url} - URL for Ignite configuration. If this URL specified then + * all aforementioned properties will not be taken in account.</li> * </ul> */ public class IgniteInterpreter extends Interpreter { @@ -159,11 +162,9 @@ public class IgniteInterpreter extends Interpreter { } public Object getLastObject() { - Object obj = - imain - .lastRequest() - .lineRep() - .call("$result", JavaConversions.asScalaBuffer(new LinkedList<>())); + Object obj = imain.lastRequest().lineRep().call( + "$result", + JavaConversions.asScalaBuffer(new LinkedList<>())); return obj; } @@ -187,14 +188,14 @@ public class IgniteInterpreter extends Interpreter { conf.setDiscoverySpi(discoSpi); conf.setPeerClassLoadingEnabled( - Boolean.parseBoolean(getProperty(IGNITE_PEER_CLASS_LOADING_ENABLED))); + Boolean.parseBoolean(getProperty(IGNITE_PEER_CLASS_LOADING_ENABLED))); ignite = Ignition.start(conf); } initEx = null; } catch (Exception e) { - logger.error("Error in IgniteInterpreter while getIgnite: ", e); + logger.error("Error in IgniteInterpreter while getIgnite: " , e); initEx = e; } } @@ -210,10 +211,9 @@ public class IgniteInterpreter extends Interpreter { if (getIgnite() != null) { binder.put("ignite", ignite); - imain.interpret( - "@transient val ignite = " - + "_binder.get(\"ignite\")" - + ".asInstanceOf[org.apache.ignite.Ignite]"); + imain.interpret("@transient val ignite = " + + "_binder.get(\"ignite\")" + + ".asInstanceOf[org.apache.ignite.Ignite]"); } } finally { Thread.currentThread().setContextClassLoader(contextClassLoader); @@ -263,7 +263,8 @@ public class IgniteInterpreter extends Interpreter { } @Override - public void cancel(InterpreterContext context) {} + public void cancel(InterpreterContext context) { + } private InterpreterResult interpret(String[] lines) { String[] linesToRun = new String[lines.length + 1]; @@ -276,7 +277,7 @@ public class IgniteInterpreter extends Interpreter { String incomplete = ""; for (int l = 0; l < linesToRun.length; l++) { - String s = linesToRun[l]; + String s = linesToRun[l]; // check if next line starts with "." (but not ".." or "./") it is treated as an invocation if (l + 1 < linesToRun.length) { String nextLine = linesToRun[l + 1].trim(); @@ -333,14 +334,14 @@ public class IgniteInterpreter extends Interpreter { } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return new LinkedList<>(); } @Override public Scheduler getScheduler() { - return SchedulerFactory.singleton() - .createOrGetFIFOScheduler(IgniteInterpreter.class.getName() + this.hashCode()); + return SchedulerFactory.singleton().createOrGetFIFOScheduler( + IgniteInterpreter.class.getName() + this.hashCode()); } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreterUtils.java ---------------------------------------------------------------------- diff --git a/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreterUtils.java b/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreterUtils.java index 936f081..74a0a7f 100644 --- a/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreterUtils.java +++ b/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteInterpreterUtils.java @@ -19,11 +19,12 @@ package org.apache.zeppelin.ignite; import org.apache.zeppelin.interpreter.InterpreterResult; -/** Apache Ignite interpreter utils. */ +/** + * Apache Ignite interpreter utils. + */ public class IgniteInterpreterUtils { /** * Builds error result from given exception. - * * @param e Exception. * @return result. */ http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteSqlInterpreter.java ---------------------------------------------------------------------- diff --git a/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteSqlInterpreter.java b/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteSqlInterpreter.java index 8357740..100a733 100644 --- a/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteSqlInterpreter.java +++ b/ignite/src/main/java/org/apache/zeppelin/ignite/IgniteSqlInterpreter.java @@ -16,6 +16,9 @@ */ package org.apache.zeppelin.ignite; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; @@ -25,6 +28,7 @@ import java.sql.Statement; import java.util.LinkedList; import java.util.List; import java.util.Properties; + import org.apache.zeppelin.interpreter.Interpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterException; @@ -33,20 +37,19 @@ import org.apache.zeppelin.interpreter.InterpreterResult.Code; import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.apache.zeppelin.scheduler.Scheduler; import org.apache.zeppelin.scheduler.SchedulerFactory; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * Apache Ignite SQL interpreter (http://ignite.incubator.apache.org/). * - * <p>Use {@code ignite.jdbc.url} property to set up JDBC connection URL. URL has the following - * pattern: {@code jdbc:ignite://<hostname>:<port>/<cache_name>} + * Use {@code ignite.jdbc.url} property to set up JDBC connection URL. + * URL has the following pattern: + * {@code jdbc:ignite://<hostname>:<port>/<cache_name>} * * <ul> - * <li>Hostname is required. - * <li>If port is not defined, 11211 is used (default for Ignite client). - * <li>Leave cache_name empty if you are connecting to a default cache. Note that the cache name - * is case sensitive. + * <li>Hostname is required.</li> + * <li>If port is not defined, 11211 is used (default for Ignite client).</li> + * <li>Leave cache_name empty if you are connecting to a default cache. + * Note that the cache name is case sensitive.</li> * </ul> */ public class IgniteSqlInterpreter extends Interpreter { @@ -176,13 +179,13 @@ public class IgniteSqlInterpreter extends Interpreter { @Override public Scheduler getScheduler() { - return SchedulerFactory.singleton() - .createOrGetFIFOScheduler(IgniteSqlInterpreter.class.getName() + this.hashCode()); + return SchedulerFactory.singleton().createOrGetFIFOScheduler( + IgniteSqlInterpreter.class.getName() + this.hashCode()); } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return new LinkedList<>(); } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteInterpreterTest.java ---------------------------------------------------------------------- diff --git a/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteInterpreterTest.java b/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteInterpreterTest.java index 11b39d7..de4588e 100644 --- a/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteInterpreterTest.java +++ b/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteInterpreterTest.java @@ -16,11 +16,6 @@ */ package org.apache.zeppelin.ignite; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.util.Collections; -import java.util.Properties; import org.apache.ignite.Ignite; import org.apache.ignite.Ignition; import org.apache.ignite.configuration.IgniteConfiguration; @@ -32,7 +27,15 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; -/** Tests for Apache Ignite interpreter ({@link IgniteInterpreter}). */ +import java.util.Collections; +import java.util.Properties; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +/** + * Tests for Apache Ignite interpreter ({@link IgniteInterpreter}). + */ public class IgniteInterpreterTest { private static final String HOST = "127.0.0.1:47500..47509"; @@ -57,9 +60,8 @@ public class IgniteInterpreterTest { ignite = Ignition.start(cfg); Properties props = new Properties(); - props.setProperty( - IgniteSqlInterpreter.IGNITE_JDBC_URL, - "jdbc:ignite:cfg://[email protected]"); + props.setProperty(IgniteSqlInterpreter.IGNITE_JDBC_URL, + "jdbc:ignite:cfg://[email protected]"); props.setProperty(IgniteInterpreter.IGNITE_CLIENT_MODE, "false"); props.setProperty(IgniteInterpreter.IGNITE_PEER_CLASS_LOADING_ENABLED, "false"); props.setProperty(IgniteInterpreter.IGNITE_ADDRESSES, HOST); @@ -78,21 +80,12 @@ public class IgniteInterpreterTest { public void testInterpret() { String sizeVal = "size"; - InterpreterResult result = - intp.interpret( - "import org.apache.ignite.IgniteCache\n" - + "val " - + sizeVal - + " = ignite.cluster().nodes().size()", - INTP_CONTEXT); + InterpreterResult result = intp.interpret("import org.apache.ignite.IgniteCache\n" + + "val " + sizeVal + " = ignite.cluster().nodes().size()", INTP_CONTEXT); assertEquals(InterpreterResult.Code.SUCCESS, result.code()); - assertTrue( - result - .message() - .get(0) - .getData() - .contains(sizeVal + ": Int = " + ignite.cluster().nodes().size())); + assertTrue(result.message().get(0).getData().contains(sizeVal + ": Int = " + + ignite.cluster().nodes().size())); result = intp.interpret("\"123\"\n .toInt", INTP_CONTEXT); assertEquals(InterpreterResult.Code.SUCCESS, result.code()); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteSqlInterpreterTest.java ---------------------------------------------------------------------- diff --git a/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteSqlInterpreterTest.java b/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteSqlInterpreterTest.java index dd38614..3597769 100644 --- a/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteSqlInterpreterTest.java +++ b/ignite/src/test/java/org/apache/zeppelin/ignite/IgniteSqlInterpreterTest.java @@ -16,10 +16,6 @@ */ package org.apache.zeppelin.ignite; -import static org.junit.Assert.assertEquals; - -import java.util.Collections; -import java.util.Properties; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.Ignition; @@ -36,7 +32,14 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; -/** Tests for Apache Ignite SQL interpreter ({@link IgniteSqlInterpreter}). */ +import java.util.Collections; +import java.util.Properties; + +import static org.junit.Assert.assertEquals; + +/** + * Tests for Apache Ignite SQL interpreter ({@link IgniteSqlInterpreter}). + */ public class IgniteSqlInterpreterTest { private static final String HOST = "127.0.0.1:47500..47509"; @@ -62,9 +65,8 @@ public class IgniteSqlInterpreterTest { ignite = Ignition.start(cfg); Properties props = new Properties(); - props.setProperty( - IgniteSqlInterpreter.IGNITE_JDBC_URL, - "jdbc:ignite:cfg://[email protected]"); + props.setProperty(IgniteSqlInterpreter.IGNITE_JDBC_URL, + "jdbc:ignite:cfg://[email protected]"); intp = new IgniteSqlInterpreter(props); @@ -88,8 +90,8 @@ public class IgniteSqlInterpreterTest { @Test public void testSql() { - InterpreterResult result = - intp.interpret("select name, age from person where age > 10", INTP_CONTEXT); + InterpreterResult result = intp.interpret("select name, age from person where age > 10", + INTP_CONTEXT); assertEquals(Code.SUCCESS, result.code()); assertEquals(Type.TABLE, result.message().get(0).getType()); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/ignite/src/test/java/org/apache/zeppelin/ignite/Person.java ---------------------------------------------------------------------- diff --git a/ignite/src/test/java/org/apache/zeppelin/ignite/Person.java b/ignite/src/test/java/org/apache/zeppelin/ignite/Person.java index 7b863d2..e8bef93 100644 --- a/ignite/src/test/java/org/apache/zeppelin/ignite/Person.java +++ b/ignite/src/test/java/org/apache/zeppelin/ignite/Person.java @@ -16,13 +16,16 @@ */ package org.apache.zeppelin.ignite; -import java.io.Serializable; import org.apache.ignite.cache.query.annotations.QuerySqlField; +import java.io.Serializable; + public class Person implements Serializable { - @QuerySqlField private String name; + @QuerySqlField + private String name; - @QuerySqlField private int age; + @QuerySqlField + private int age; public Person(String name, int age) { this.name = name; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/java/pom.xml ---------------------------------------------------------------------- diff --git a/java/pom.xml b/java/pom.xml index 0bbb8e8..9e9bbc6 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -76,6 +76,13 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> </plugins> </build> </project> http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/java/src/main/java/org/apache/zeppelin/java/JavaInterpreter.java ---------------------------------------------------------------------- diff --git a/java/src/main/java/org/apache/zeppelin/java/JavaInterpreter.java b/java/src/main/java/org/apache/zeppelin/java/JavaInterpreter.java index 3690e35..1346bc7 100644 --- a/java/src/main/java/org/apache/zeppelin/java/JavaInterpreter.java +++ b/java/src/main/java/org/apache/zeppelin/java/JavaInterpreter.java @@ -17,11 +17,6 @@ package org.apache.zeppelin.java; -import java.io.File; -import java.util.Collections; -import java.util.List; -import java.util.Properties; -import java.util.UUID; import org.apache.zeppelin.interpreter.Interpreter; import org.apache.zeppelin.interpreter.InterpreterContext; import org.apache.zeppelin.interpreter.InterpreterResult; @@ -29,7 +24,15 @@ import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** Java interpreter */ +import java.io.File; +import java.util.Collections; +import java.util.List; +import java.util.Properties; +import java.util.UUID; + +/** + * Java interpreter + */ public class JavaInterpreter extends Interpreter { private static final Logger logger = LoggerFactory.getLogger(JavaInterpreter.class); @@ -39,7 +42,9 @@ public class JavaInterpreter extends Interpreter { } @Override - public void open() {} + public void open() { + + } @Override public void close() { @@ -66,11 +71,15 @@ public class JavaInterpreter extends Interpreter { } catch (Exception e) { logger.error("Exception in Interpreter while interpret", e); return new InterpreterResult(InterpreterResult.Code.ERROR, e.getMessage()); + } + } @Override - public void cancel(InterpreterContext context) {} + public void cancel(InterpreterContext context) { + + } @Override public FormType getFormType() { @@ -83,8 +92,9 @@ public class JavaInterpreter extends Interpreter { } @Override - public List<InterpreterCompletion> completion( - String buf, int cursor, InterpreterContext interpreterContext) { + public List<InterpreterCompletion> completion(String buf, int cursor, + InterpreterContext interpreterContext) { return Collections.emptyList(); } + } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/java/src/main/java/org/apache/zeppelin/java/JavaInterpreterUtils.java ---------------------------------------------------------------------- diff --git a/java/src/main/java/org/apache/zeppelin/java/JavaInterpreterUtils.java b/java/src/main/java/org/apache/zeppelin/java/JavaInterpreterUtils.java index e1f4d53..2a4cc4a 100644 --- a/java/src/main/java/org/apache/zeppelin/java/JavaInterpreterUtils.java +++ b/java/src/main/java/org/apache/zeppelin/java/JavaInterpreterUtils.java @@ -20,25 +20,25 @@ package org.apache.zeppelin.java; import java.util.Map; import java.util.stream.Collectors; -/** Java interpreter utility methods */ +/** + * Java interpreter utility methods + */ public class JavaInterpreterUtils { /** * Convert a map to %table display system to leverage Zeppelin's built in visualization - * * @param keyName Key column name * @param valueName Value column name * @param rows Map of keys and values * @return Zeppelin %table */ - public static String displayTableFromSimpleMap(String keyName, String valueName, Map<?, ?> rows) { + public static String displayTableFromSimpleMap(String keyName, String valueName, Map<?, ?> rows){ String table = "%table\n"; table += keyName + "\t" + valueName + "\n"; - table += - rows.entrySet() - .stream() + table += rows.entrySet().stream() .map(e -> e.getKey() + "\t" + e.getValue()) .collect(Collectors.joining("\n")); return table; } + } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/java/src/main/java/org/apache/zeppelin/java/StaticRepl.java ---------------------------------------------------------------------- diff --git a/java/src/main/java/org/apache/zeppelin/java/StaticRepl.java b/java/src/main/java/org/apache/zeppelin/java/StaticRepl.java index cb9d316..28a3275 100644 --- a/java/src/main/java/org/apache/zeppelin/java/StaticRepl.java +++ b/java/src/main/java/org/apache/zeppelin/java/StaticRepl.java @@ -20,6 +20,16 @@ package org.apache.zeppelin.java; import com.thoughtworks.qdox.JavaProjectBuilder; import com.thoughtworks.qdox.model.JavaClass; import com.thoughtworks.qdox.model.JavaSource; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.tools.Diagnostic; +import javax.tools.DiagnosticCollector; +import javax.tools.JavaCompiler; +import javax.tools.JavaCompiler.CompilationTask; +import javax.tools.JavaFileObject; +import javax.tools.SimpleJavaFileObject; +import javax.tools.ToolProvider; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.PrintStream; @@ -30,17 +40,10 @@ import java.net.URL; import java.net.URLClassLoader; import java.util.Arrays; import java.util.List; -import javax.tools.Diagnostic; -import javax.tools.DiagnosticCollector; -import javax.tools.JavaCompiler; -import javax.tools.JavaCompiler.CompilationTask; -import javax.tools.JavaFileObject; -import javax.tools.SimpleJavaFileObject; -import javax.tools.ToolProvider; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -/** StaticRepl for compling the java code in memory */ +/** + * StaticRepl for compling the java code in memory + */ public class StaticRepl { static Logger logger = LoggerFactory.getLogger(StaticRepl.class); @@ -62,8 +65,8 @@ public class StaticRepl { boolean hasMain = false; for (int j = 0; j < classes.get(i).getMethods().size(); j++) { - if (classes.get(i).getMethods().get(j).getName().equals("main") - && classes.get(i).getMethods().get(j).isStatic()) { + if (classes.get(i).getMethods().get(j).getName().equals("main") && classes.get(i) + .getMethods().get(j).isStatic()) { mainClassName = classes.get(i).getName(); hasMain = true; break; @@ -72,12 +75,13 @@ public class StaticRepl { if (hasMain == true) { break; } + } // if there isn't Main method, will retuen error if (mainClassName == null) { - logger.error( - "Exception for Main method", "There isn't any class " + "containing static main method."); + logger.error("Exception for Main method", "There isn't any class " + + "containing static main method."); throw new Exception("There isn't any class containing static main method."); } @@ -111,8 +115,8 @@ public class StaticRepl { if (diagnostic.getLineNumber() == -1) { continue; } - System.err.println( - "line " + diagnostic.getLineNumber() + " : " + diagnostic.getMessage(null)); + System.err.println("line " + diagnostic.getLineNumber() + " : " + + diagnostic.getMessage(null)); } System.out.flush(); System.err.flush(); @@ -125,12 +129,12 @@ public class StaticRepl { try { // creating new class loader - URLClassLoader classLoader = - URLClassLoader.newInstance(new URL[] {new File("").toURI().toURL()}); + URLClassLoader classLoader = URLClassLoader.newInstance(new URL[]{new File("").toURI() + .toURL()}); // execute the Main method Class.forName(generatedClassName, true, classLoader) - .getDeclaredMethod("main", new Class[] {String[].class}) - .invoke(null, new Object[] {null}); + .getDeclaredMethod("main", new Class[]{String[].class}) + .invoke(null, new Object[]{null}); System.out.flush(); System.err.flush(); @@ -141,9 +145,7 @@ public class StaticRepl { return baosOut.toString(); - } catch (ClassNotFoundException - | NoSuchMethodException - | IllegalAccessException + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException | InvocationTargetException e) { logger.error("Exception in Interpreter while execution", e); System.err.println(e); @@ -159,7 +161,9 @@ public class StaticRepl { System.setErr(oldErr); } } + } + } class JavaSourceFromString extends SimpleJavaFileObject { http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/jdbc/pom.xml ---------------------------------------------------------------------- diff --git a/jdbc/pom.xml b/jdbc/pom.xml index 38e1469..ad35a46 100644 --- a/jdbc/pom.xml +++ b/jdbc/pom.xml @@ -362,6 +362,13 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> </plugins> </build> </project>
