body;
GetMethod getSecurityTicket = httpGet("/security/ticket");
@@ -705,12 +699,12 @@ public void testSearch() throws IOException {
String username = body.get("principal");
getSecurityTicket.releaseConnection();
- Note note1 = ZeppelinServer.notebook.createNote(null);
+ Note note1 = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
String jsonRequest = "{\"title\": \"title1\", \"text\": \"ThisIsToTestSearchMethodWithPermissions 1\"}";
PostMethod postNotebookText = httpPost("/notebook/" + note1.getId() + "/paragraph", jsonRequest);
postNotebookText.releaseConnection();
- Note note2 = ZeppelinServer.notebook.createNote(null);
+ Note note2 = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
jsonRequest = "{\"title\": \"title1\", \"text\": \"ThisIsToTestSearchMethodWithPermissions 2\"}";
postNotebookText = httpPost("/notebook/" + note2.getId() + "/paragraph", jsonRequest);
postNotebookText.releaseConnection();
@@ -757,8 +751,8 @@ public void testSearch() throws IOException {
}
@Test
- public void testTitleSearch() throws IOException {
- Note note = ZeppelinServer.notebook.createNote(null);
+ public void testTitleSearch() throws IOException, DuplicateNameException {
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
String jsonRequest = "{\"title\": \"testTitleSearchOfParagraph\", \"text\": \"ThisIsToTestSearchMethodWithTitle \"}";
PostMethod postNotebookText = httpPost("/notebook/" + note.getId() + "/paragraph", jsonRequest);
postNotebookText.releaseConnection();
diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/rest/ZeppelinSparkClusterTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/rest/ZeppelinSparkClusterTest.java
index 5084ae73719..dede5979761 100644
--- a/zeppelin-server/src/test/java/org/apache/zeppelin/rest/ZeppelinSparkClusterTest.java
+++ b/zeppelin-server/src/test/java/org/apache/zeppelin/rest/ZeppelinSparkClusterTest.java
@@ -25,6 +25,7 @@
import java.util.Map;
import org.apache.commons.io.FileUtils;
+import org.apache.zeppelin.exception.DuplicateNameException;
import org.apache.zeppelin.interpreter.InterpreterResult;
import org.apache.zeppelin.interpreter.InterpreterSetting;
import org.apache.zeppelin.notebook.Note;
@@ -43,6 +44,7 @@
*/
public class ZeppelinSparkClusterTest extends AbstractTestRestApi {
Gson gson = new Gson();
+ private final String EMPTY_STRING = "";
@BeforeClass
public static void init() throws Exception {
@@ -67,9 +69,9 @@ private void waitForFinish(Paragraph p) {
}
@Test
- public void basicRDDTransformationAndActionTest() throws IOException {
+ public void basicRDDTransformationAndActionTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
// run markdown paragraph, again
Paragraph p = note.addParagraph();
@@ -85,9 +87,9 @@ public void basicRDDTransformationAndActionTest() throws IOException {
}
@Test
- public void sparkSQLTest() throws IOException {
+ public void sparkSQLTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
int sparkVersion = getSparkVersionNumber(note);
// DataFrame API is available from spark 1.3
if (sparkVersion >= 13) {
@@ -136,9 +138,9 @@ public void sparkSQLTest() throws IOException {
}
@Test
- public void sparkRTest() throws IOException {
+ public void sparkRTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
int sparkVersion = getSparkVersionNumber(note);
if (isSparkR() && sparkVersion >= 14) { // sparkr supported from 1.4.0
@@ -175,9 +177,9 @@ public void sparkRTest() throws IOException {
}
@Test
- public void pySparkTest() throws IOException {
+ public void pySparkTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
note.setName("note");
int sparkVersion = getSparkVersionNumber(note);
@@ -265,9 +267,9 @@ public void pySparkTest() throws IOException {
}
@Test
- public void pySparkAutoConvertOptionTest() throws IOException {
+ public void pySparkAutoConvertOptionTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
note.setName("note");
int sparkVersionNumber = getSparkVersionNumber(note);
@@ -295,9 +297,9 @@ public void pySparkAutoConvertOptionTest() throws IOException {
}
@Test
- public void zRunTest() throws IOException {
+ public void zRunTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
Paragraph p0 = note.addParagraph();
Map config0 = p0.getConfig();
config0.put("enabled", true);
@@ -327,9 +329,9 @@ public void zRunTest() throws IOException {
}
@Test
- public void pySparkDepLoaderTest() throws IOException {
+ public void pySparkDepLoaderTest() throws IOException, DuplicateNameException {
// create new note
- Note note = ZeppelinServer.notebook.createNote(null);
+ Note note = ZeppelinServer.notebook.createNote(null, EMPTY_STRING);
int sparkVersionNumber = getSparkVersionNumber(note);
if (isPyspark() && sparkVersionNumber >= 14) {
diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java
index 01a24e2e1de..fb1d1bbca65 100644
--- a/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java
+++ b/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java
@@ -21,6 +21,7 @@
import org.apache.zeppelin.display.AngularObject;
import org.apache.zeppelin.display.AngularObjectBuilder;
import org.apache.zeppelin.display.AngularObjectRegistry;
+import org.apache.zeppelin.exception.DuplicateNameException;
import org.apache.zeppelin.interpreter.InterpreterGroup;
import org.apache.zeppelin.interpreter.InterpreterSetting;
import org.apache.zeppelin.interpreter.remote.RemoteAngularObjectRegistry;
@@ -92,9 +93,9 @@ public void checkInvalidOrigin(){
}
@Test
- public void testMakeSureNoAngularObjectBroadcastToWebsocketWhoFireTheEvent() throws IOException {
+ public void testMakeSureNoAngularObjectBroadcastToWebsocketWhoFireTheEvent() throws IOException, DuplicateNameException {
// create a notebook
- Note note1 = notebook.createNote(null);
+ Note note1 = notebook.createNote(null, "");
// get reference to interpreterGroup
InterpreterGroup interpreterGroup = null;
@@ -148,7 +149,7 @@ public void testMakeSureNoAngularObjectBroadcastToWebsocketWhoFireTheEvent() thr
}
@Test
- public void testImportNotebook() throws IOException {
+ public void testImportNotebook() throws IOException, DuplicateNameException {
String msg = "{\"op\":\"IMPORT_NOTE\",\"data\":" +
"{\"notebook\":{\"paragraphs\": [{\"text\": \"Test " +
"paragraphs import\",\"config\":{},\"settings\":{}}]," +
diff --git a/zeppelin-web/src/components/noteName-create/note-name-dialog.html b/zeppelin-web/src/components/noteName-create/note-name-dialog.html
index 1f90085a491..f2afb2bcae0 100644
--- a/zeppelin-web/src/components/noteName-create/note-name-dialog.html
+++ b/zeppelin-web/src/components/noteName-create/note-name-dialog.html
@@ -29,11 +29,12 @@ Clone note
id="noteName" ng-model="note.notename" ng-enter="notenamectrl.handleNameEnter()"/>
Use '/' to create folders. Example: /NoteDirA/Notebook1
+ Please provide a unique Notebook name