ZEPPELIN-2619. Save note in ${notename_noteid}.zpln instead of 
${noteid}/note.json

### What is this PR for?

This PR has serverla main changes:
1. `NoteManager` is the most importance class that would build the filesystem 
tree structure i memory and all note related operation is handled by this class.
2. `NotebookRepo` add several new methods for folder operations, like moving 
folder, removing folder.
3. The semantics of `name` of `Note` is changed. It is changed to the note name 
instead of the full note path, there's one transiant field `path` which 
represent the path of note.

Design doc
https://docs.google.com/document/d/126egAQmhQOL4ynxJ3AQJQRBBLdW8TATYcGkDL1DNZoE/edit?usp=sharing

### What type of PR is it?
[Improvement |  Refactoring]

### Todos
* [ ] - Task

### What is the Jira issue?
* https://github.com/zjffdu/zeppelin/tree/ZEPPELIN-2619

### How should this be tested?
* Ci pass

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No

Author: Jeff Zhang <zjf...@apache.org>

Closes #3163 from zjffdu/ZEPPELIN-2619 and squashes the following commits:

ebcf4f87b [Jeff Zhang] ZEPPELIN-2619. Save note in [Title].zpln instead of 
[NOTEID]/note.json


Project: http://git-wip-us.apache.org/repos/asf/zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/zeppelin/commit/085efeb6
Tree: http://git-wip-us.apache.org/repos/asf/zeppelin/tree/085efeb6
Diff: http://git-wip-us.apache.org/repos/asf/zeppelin/diff/085efeb6

Branch: refs/heads/master
Commit: 085efeb646f3a95b39bf555b5b04551119e3c0b9
Parents: dabb7d9
Author: Jeff Zhang <zjf...@apache.org>
Authored: Fri Jul 6 15:01:44 2018 +0800
Committer: Jeff Zhang <zjf...@apache.org>
Committed: Thu Sep 20 10:34:38 2018 +0800

----------------------------------------------------------------------
 notebook/2A94M5J1Z/note.json                    |  376 -----
 notebook/2BWJFTXKJ/note.json                    | 1309 ------------------
 notebook/2BYEZ5EVK/note.json                    |  887 ------------
 notebook/2C2AUG798/note.json                    |  779 -----------
 notebook/2C35YU814/note.json                    |  806 -----------
 notebook/2C57UKYWR/note.json                    |  334 -----
 .../Basic Features (Spark)_2A94M5J1Z.zpln       |  376 +++++
 ...Python \342\200\242 PySpark)_2C2AUG798.zpln" |  779 +++++++++++
 .../Zeppelin Tutorial/R (SparkR)_2BWJFTXKJ.zpln | 1309 ++++++++++++++++++
 ...ng Flink for batch processing_2C35YU814.zpln |  806 +++++++++++
 .../Using Mahout_2BYEZ5EVK.zpln                 |  887 ++++++++++++
 .../Using Pig for querying data_2C57UKYWR.zpln  |  334 +++++
 .../zeppelin/scheduler/SchedulerFactory.java    |    2 +-
 .../notebook/repo/AzureNotebookRepo.java        |  135 +-
 .../notebook/repo/FileSystemNotebookRepo.java   |   94 +-
 .../repo/FileSystemNotebookRepoTest.java        |   54 +-
 .../src/test/resources/log4j.properties         |   22 +
 .../zeppelin/notebook/repo/GCSNotebookRepo.java |   62 +-
 .../notebook/repo/GCSNotebookRepoTest.java      |   53 +-
 .../zeppelin/notebook/repo/GitNotebookRepo.java |  101 +-
 .../notebook/repo/GitNotebookRepoTest.java      |  136 +-
 .../notebook/repo/NotebookRepoSyncTest.java     |  174 +--
 .../git/src/test/resources/2A94M5J1Z/note.json  |  369 -----
 .../git/src/test/resources/2A94M5J2Z/note.json  |   95 --
 .../notebook/my_project/my_note1_2A94M5J1Z.zpln |  369 +++++
 .../notebook/my_project/my_note2_2A94M5J2Z.zpln |   95 ++
 .../notebook/repo/GitHubNotebookRepo.java       |    7 +-
 .../notebook/repo/GitHubNotebookRepoTest.java   |   27 +-
 .../src/test/resources/2A94M5J1Z/note.json      |  369 -----
 .../src/test/resources/2A94M5J2Z/note.json      |   95 --
 .../notebook/my_project/my_note1_2A94M5J1Z.zpln |  369 +++++
 zeppelin-plugins/notebookrepo/mongodb/pom.xml   |   63 -
 .../notebook/repo/MongoNotebookRepo.java        |  222 ---
 .../zeppelin/notebook/repo/S3NotebookRepo.java  |   83 +-
 .../zeppelin/notebook/repo/VFSNotebookRepo.java |  263 ++--
 .../notebook/repo/TestVFSNotebookRepo.java      |  113 --
 .../notebook/repo/VFSNotebookRepoTest.java      |  129 ++
 .../repo/zeppelinhub/ZeppelinHubRepo.java       |   40 +-
 zeppelin-plugins/pom.xml                        |    1 -
 .../apache/zeppelin/rest/NotebookRestApi.java   |   17 +-
 .../apache/zeppelin/server/ZeppelinServer.java  |    3 +-
 .../zeppelin/service/NotebookService.java       |  514 +++++--
 .../zeppelin/service/SimpleServiceCallback.java |    6 +-
 .../zeppelin/socket/ConnectionManager.java      |    3 +-
 .../apache/zeppelin/socket/NotebookServer.java  |  836 ++++-------
 .../apache/zeppelin/recovery/RecoveryTest.java  |   18 +-
 .../zeppelin/rest/AbstractTestRestApi.java      |   18 +-
 .../zeppelin/rest/InterpreterRestApiTest.java   |    5 +-
 .../zeppelin/rest/NotebookRestApiTest.java      |   32 +-
 .../zeppelin/rest/ZeppelinRestApiTest.java      |   62 +-
 .../zeppelin/rest/ZeppelinSparkClusterTest.java |   62 +-
 .../zeppelin/service/NotebookServiceTest.java   |  244 +++-
 .../zeppelin/socket/NotebookServerTest.java     |  106 +-
 .../src/test/resources/log4j.properties         |    1 +
 zeppelin-web/src/app/home/home.controller.js    |    2 +-
 .../src/app/notebook/notebook.controller.js     |    6 +-
 .../array-ordering/array-ordering.service.js    |    4 +-
 .../note-action/note-action.service.js          |   14 +-
 .../note-create/note-create.controller.js       |    8 +-
 .../components/note-list/note-list.factory.js   |    8 +-
 .../websocket/websocket-message.service.js      |   20 +-
 zeppelin-zengine/pom.xml                        |   16 -
 .../helium/HeliumApplicationFactory.java        |   19 +-
 .../interpreter/InterpreterSettingManager.java  |   86 +-
 .../zeppelin/notebook/FileSystemStorage.java    |   35 +
 .../org/apache/zeppelin/notebook/Folder.java    |  257 ----
 .../zeppelin/notebook/FolderListener.java       |   24 -
 .../apache/zeppelin/notebook/FolderView.java    |  239 ----
 .../java/org/apache/zeppelin/notebook/Note.java |  353 ++---
 .../notebook/NoteEventAsyncListener.java        |  228 +++
 .../zeppelin/notebook/NoteEventListener.java    |   16 +-
 .../org/apache/zeppelin/notebook/NoteInfo.java  |   38 +-
 .../apache/zeppelin/notebook/NoteManager.java   |  569 ++++++++
 .../zeppelin/notebook/NoteNameListener.java     |   30 -
 .../org/apache/zeppelin/notebook/Notebook.java  |  613 ++++----
 .../notebook/NotebookAuthorization.java         |   46 +-
 .../notebook/NotebookEventListener.java         |   27 -
 .../org/apache/zeppelin/notebook/Paragraph.java |   21 +-
 .../notebook/repo/InMemoryNotebookRepo.java     |   97 ++
 .../zeppelin/notebook/repo/NotebookRepo.java    |  130 +-
 .../notebook/repo/NotebookRepoSync.java         |  195 +--
 .../repo/NotebookRepoWithVersionControl.java    |   30 +-
 .../zeppelin/scheduler/RemoteScheduler.java     |    2 -
 .../apache/zeppelin/search/LuceneSearch.java    |   23 +-
 .../apache/zeppelin/search/SearchService.java   |   67 +-
 .../helium/HeliumApplicationFactoryTest.java    |   12 +-
 .../interpreter/AbstractInterpreterTest.java    |    2 +-
 .../apache/zeppelin/notebook/FolderTest.java    |  214 ---
 .../zeppelin/notebook/FolderViewTest.java       |  358 -----
 .../zeppelin/notebook/NoteManagerTest.java      |   66 +
 .../org/apache/zeppelin/notebook/NoteTest.java  |   87 +-
 .../apache/zeppelin/notebook/NotebookTest.java  |  357 ++---
 .../apache/zeppelin/notebook/ParagraphTest.java |   22 +-
 .../zeppelin/search/LuceneSearchTest.java       |   96 +-
 94 files changed, 9249 insertions(+), 9639 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/zeppelin/blob/085efeb6/notebook/2A94M5J1Z/note.json
----------------------------------------------------------------------
diff --git a/notebook/2A94M5J1Z/note.json b/notebook/2A94M5J1Z/note.json
deleted file mode 100644
index 6e8e06f..0000000
--- a/notebook/2A94M5J1Z/note.json
+++ /dev/null
@@ -1,376 +0,0 @@
-{
-  "paragraphs": [
-    {
-      "text": "%md\n## Welcome to Zeppelin.\n##### This is a live tutorial, 
you can run the code yourself. (Shift-Enter to Run)",
-      "user": "anonymous",
-      "dateUpdated": "Dec 17, 2016 3:32:15 PM",
-      "config": {
-        "colWidth": 12.0,
-        "editorHide": true,
-        "results": [
-          {
-            "graph": {
-              "mode": "table",
-              "height": 300.0,
-              "optionOpen": false,
-              "keys": [],
-              "values": [],
-              "groups": [],
-              "scatter": {}
-            }
-          }
-        ],
-        "enabled": true,
-        "editorSetting": {
-          "language": "markdown",
-          "editOnDblClick": true
-        },
-        "editorMode": "ace/mode/markdown",
-        "tableHide": false
-      },
-      "settings": {
-        "params": {},
-        "forms": {}
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "HTML",
-            "data": "\u003cdiv 
class\u003d\"markdown-body\"\u003e\n\u003ch2\u003eWelcome to 
Zeppelin.\u003c/h2\u003e\n\u003ch5\u003eThis is a live tutorial, you can run 
the code yourself. (Shift-Enter to Run)\u003c/h5\u003e\n\u003c/div\u003e"
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1423836981412_-1007008116",
-      "id": "20150213-231621_168813393",
-      "dateCreated": "Feb 13, 2015 11:16:21 PM",
-      "dateStarted": "Dec 17, 2016 3:32:15 PM",
-      "dateFinished": "Dec 17, 2016 3:32:18 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "title": "Load data into table",
-      "text": "import org.apache.commons.io.IOUtils\nimport 
java.net.URL\nimport java.nio.charset.Charset\n\n// Zeppelin creates and 
injects sc (SparkContext) and sqlContext (HiveContext or SqlContext)\n// So you 
don\u0027t need create them manually\n\n// load bank data\nval bankText \u003d 
sc.parallelize(\n    IOUtils.toString(\n        new 
URL(\"https://s3.amazonaws.com/apache-zeppelin/tutorial/bank/bank.csv\";),\n     
   Charset.forName(\"utf8\")).split(\"\\n\"))\n\ncase class Bank(age: Integer, 
job: String, marital: String, education: String, balance: Integer)\n\nval bank 
\u003d bankText.map(s \u003d\u003e s.split(\";\")).filter(s \u003d\u003e s(0) 
!\u003d \"\\\"age\\\"\").map(\n    s \u003d\u003e Bank(s(0).toInt, \n           
 s(1).replaceAll(\"\\\"\", \"\"),\n            s(2).replaceAll(\"\\\"\", 
\"\"),\n            s(3).replaceAll(\"\\\"\", \"\"),\n            
s(5).replaceAll(\"\\\"\", \"\").toInt\n        
)\n).toDF()\nbank.registerTempTable(\"bank\")",
-      "user": "anonymous",
-      "dateUpdated": "Dec 17, 2016 3:30:09 PM",
-      "config": {
-        "colWidth": 12.0,
-        "title": true,
-        "enabled": true,
-        "editorMode": "ace/mode/scala",
-        "results": [
-          {
-            "graph": {
-              "mode": "table",
-              "height": 300.0,
-              "optionOpen": false
-            }
-          }
-        ],
-        "editorSetting": {
-          "language": "scala",
-          "editOnDblClick": false
-        }
-      },
-      "settings": {
-        "params": {},
-        "forms": {}
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "TEXT",
-            "data": "import org.apache.commons.io.IOUtils\nimport 
java.net.URL\nimport java.nio.charset.Charset\nbankText: 
org.apache.spark.rdd.RDD[String] \u003d ParallelCollectionRDD[36] at 
parallelize at \u003cconsole\u003e:43\ndefined class Bank\nbank: 
org.apache.spark.sql.DataFrame \u003d [age: int, job: string ... 3 more 
fields]\nwarning: there were 1 deprecation warning(s); re-run with -deprecation 
for details\n"
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1423500779206_-1502780787",
-      "id": "20150210-015259_1403135953",
-      "dateCreated": "Feb 10, 2015 1:52:59 AM",
-      "dateStarted": "Dec 17, 2016 3:30:09 PM",
-      "dateFinished": "Dec 17, 2016 3:30:58 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "text": "%sql \nselect age, count(1) value\nfrom bank \nwhere age \u003c 
30 \ngroup by age \norder by age",
-      "user": "anonymous",
-      "dateUpdated": "Mar 17, 2017 12:18:02 PM",
-      "config": {
-        "colWidth": 4.0,
-        "results": [
-          {
-            "graph": {
-              "mode": "multiBarChart",
-              "height": 366.0,
-              "optionOpen": false
-            },
-            "helium": {}
-          }
-        ],
-        "enabled": true,
-        "editorSetting": {
-          "language": "sql",
-          "editOnDblClick": false
-        },
-        "editorMode": "ace/mode/sql"
-      },
-      "settings": {
-        "params": {},
-        "forms": {}
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "TABLE",
-            "data": 
"age\tvalue\n19\t4\n20\t3\n21\t7\n22\t9\n23\t20\n24\t24\n25\t44\n26\t77\n27\t94\n28\t103\n29\t97\n"
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1423500782552_-1439281894",
-      "id": "20150210-015302_1492795503",
-      "dateCreated": "Feb 10, 2015 1:53:02 AM",
-      "dateStarted": "Dec 17, 2016 3:30:13 PM",
-      "dateFinished": "Dec 17, 2016 3:31:04 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "text": "%sql \nselect age, count(1) value \nfrom bank \nwhere age 
\u003c ${maxAge\u003d30} \ngroup by age \norder by age",
-      "user": "anonymous",
-      "dateUpdated": "Mar 17, 2017 12:17:39 PM",
-      "config": {
-        "colWidth": 4.0,
-        "results": [
-          {
-            "graph": {
-              "mode": "multiBarChart",
-              "height": 294.0,
-              "optionOpen": false
-            },
-            "helium": {}
-          }
-        ],
-        "enabled": true,
-        "editorSetting": {
-          "language": "sql",
-          "editOnDblClick": false
-        },
-        "editorMode": "ace/mode/sql"
-      },
-      "settings": {
-        "params": {
-          "maxAge": "35"
-        },
-        "forms": {
-          "maxAge": {
-            "name": "maxAge",
-            "defaultValue": "30",
-            "hidden": false
-          }
-        }
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "TABLE",
-            "data": 
"age\tvalue\n19\t4\n20\t3\n21\t7\n22\t9\n23\t20\n24\t24\n25\t44\n26\t77\n27\t94\n28\t103\n29\t97\n30\t150\n31\t199\n32\t224\n33\t186\n34\t231\n"
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1423720444030_-1424110477",
-      "id": "20150212-145404_867439529",
-      "dateCreated": "Feb 12, 2015 2:54:04 PM",
-      "dateStarted": "Dec 17, 2016 3:30:58 PM",
-      "dateFinished": "Dec 17, 2016 3:31:07 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "text": "%sql \nselect age, count(1) value \nfrom bank \nwhere 
marital\u003d\"${marital\u003dsingle,single|divorced|married}\" \ngroup by age 
\norder by age",
-      "user": "anonymous",
-      "dateUpdated": "Mar 17, 2017 12:18:18 PM",
-      "config": {
-        "colWidth": 4.0,
-        "results": [
-          {
-            "graph": {
-              "mode": "stackedAreaChart",
-              "height": 280.0,
-              "optionOpen": false
-            },
-            "helium": {}
-          }
-        ],
-        "enabled": true,
-        "editorSetting": {
-          "language": "sql",
-          "editOnDblClick": false
-        },
-        "editorMode": "ace/mode/sql"
-      },
-      "settings": {
-        "params": {
-          "marital": "single"
-        },
-        "forms": {
-          "marital": {
-            "name": "marital",
-            "defaultValue": "single",
-            "options": [
-              {
-                "value": "single"
-              },
-              {
-                "value": "divorced"
-              },
-              {
-                "value": "married"
-              }
-            ],
-            "hidden": false
-          }
-        }
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "TABLE",
-            "data": 
"age\tvalue\n19\t4\n20\t3\n21\t7\n22\t9\n23\t17\n24\t13\n25\t33\n26\t56\n27\t64\n28\t78\n29\t56\n30\t92\n31\t86\n32\t105\n33\t61\n34\t75\n35\t46\n36\t50\n37\t43\n38\t44\n39\t30\n40\t25\n41\t19\n42\t23\n43\t21\n44\t20\n45\t15\n46\t14\n47\t12\n48\t12\n49\t11\n50\t8\n51\t6\n52\t9\n53\t4\n55\t3\n56\t3\n57\t2\n58\t7\n59\t2\n60\t5\n66\t2\n69\t1\n"
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1423836262027_-210588283",
-      "id": "20150213-230422_1600658137",
-      "dateCreated": "Feb 13, 2015 11:04:22 PM",
-      "dateStarted": "Dec 17, 2016 3:31:05 PM",
-      "dateFinished": "Dec 17, 2016 3:31:09 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "text": "%md\n## Congratulations, it\u0027s done.\n##### You can create 
your own notebook in \u0027Notebook\u0027 menu. Good luck!",
-      "user": "anonymous",
-      "dateUpdated": "Dec 17, 2016 3:30:24 PM",
-      "config": {
-        "colWidth": 12.0,
-        "editorHide": true,
-        "results": [
-          {
-            "graph": {
-              "mode": "table",
-              "height": 300.0,
-              "optionOpen": false
-            }
-          }
-        ],
-        "enabled": true,
-        "editorSetting": {
-          "language": "markdown",
-          "editOnDblClick": true
-        },
-        "editorMode": "ace/mode/markdown",
-        "tableHide": false
-      },
-      "settings": {
-        "params": {},
-        "forms": {}
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "HTML",
-            "data": "\u003cdiv 
class\u003d\"markdown-body\"\u003e\n\u003ch2\u003eCongratulations, 
it\u0026rsquo;s done.\u003c/h2\u003e\n\u003ch5\u003eYou can create your own 
notebook in \u0026lsquo;Notebook\u0026rsquo; menu. Good 
luck!\u003c/h5\u003e\n\u003c/div\u003e"
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1423836268492_216498320",
-      "id": "20150213-230428_1231780373",
-      "dateCreated": "Feb 13, 2015 11:04:28 PM",
-      "dateStarted": "Dec 17, 2016 3:30:24 PM",
-      "dateFinished": "Dec 17, 2016 3:30:29 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "text": "%md\n\nAbout bank data\n\n```\nCitation Request:\n  This 
dataset is public available for research. The details are described in [Moro et 
al., 2011]. \n  Please include this citation if you plan to use this 
database:\n\n  [Moro et al., 2011] S. Moro, R. Laureano and P. Cortez. Using 
Data Mining for Bank Direct Marketing: An Application of the CRISP-DM 
Methodology. \n  In P. Novais et al. (Eds.), Proceedings of the European 
Simulation and Modelling Conference - ESM\u00272011, pp. 117-121, Guimarães, 
Portugal, October, 2011. EUROSIS.\n\n  Available at: [pdf] 
http://hdl.handle.net/1822/14838\n                [bib] 
http://www3.dsi.uminho.pt/pcortez/bib/2011-esm-1.txt\n```";,
-      "user": "anonymous",
-      "dateUpdated": "Dec 17, 2016 3:30:34 PM",
-      "config": {
-        "colWidth": 12.0,
-        "editorHide": true,
-        "results": [
-          {
-            "graph": {
-              "mode": "table",
-              "height": 300.0,
-              "optionOpen": false
-            }
-          }
-        ],
-        "enabled": true,
-        "editorSetting": {
-          "language": "markdown",
-          "editOnDblClick": true
-        },
-        "editorMode": "ace/mode/markdown",
-        "tableHide": false
-      },
-      "settings": {
-        "params": {},
-        "forms": {}
-      },
-      "results": {
-        "code": "SUCCESS",
-        "msg": [
-          {
-            "type": "HTML",
-            "data": "\u003cdiv 
class\u003d\"markdown-body\"\u003e\n\u003cp\u003eAbout bank 
data\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eCitation Request:\n  This 
dataset is public available for research. The details are described in [Moro et 
al., 2011]. \n  Please include this citation if you plan to use this 
database:\n\n  [Moro et al., 2011] S. Moro, R. Laureano and P. Cortez. Using 
Data Mining for Bank Direct Marketing: An Application of the CRISP-DM 
Methodology. \n  In P. Novais et al. (Eds.), Proceedings of the European 
Simulation and Modelling Conference - ESM\u0026#39;2011, pp. 117-121, 
Guimarães, Portugal, October, 2011. EUROSIS.\n\n  Available at: [pdf] 
http://hdl.handle.net/1822/14838\n                [bib] 
http://www3.dsi.uminho.pt/pcortez/bib/2011-esm-1.txt\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/div\u003e";
-          }
-        ]
-      },
-      "apps": [],
-      "jobName": "paragraph_1427420818407_872443482",
-      "id": "20150326-214658_12335843",
-      "dateCreated": "Mar 26, 2015 9:46:58 PM",
-      "dateStarted": "Dec 17, 2016 3:30:34 PM",
-      "dateFinished": "Dec 17, 2016 3:30:34 PM",
-      "status": "FINISHED",
-      "progressUpdateIntervalMs": 500
-    },
-    {
-      "config": {},
-      "settings": {
-        "params": {},
-        "forms": {}
-      },
-      "apps": [],
-      "jobName": "paragraph_1435955447812_-158639899",
-      "id": "20150703-133047_853701097",
-      "dateCreated": "Jul 3, 2015 1:30:47 PM",
-      "status": "READY",
-      "progressUpdateIntervalMs": 500
-    }
-  ],
-  "name": "Zeppelin Tutorial/Basic Features (Spark)",
-  "id": "2A94M5J1Z",
-  "angularObjects": {
-    "2C73DY9P9:shared_process": []
-  },
-  "config": {
-    "looknfeel": "default"
-  },
-  "info": {}
-}
\ No newline at end of file

Reply via email to