浏览代码

wip filebrowser model refactor

Steven Silvester 8 年之前
父节点
当前提交
3dc1f5190f
共有 3 个文件被更改,包括 10 次插入16 次删除
  1. 8 13
      examples/filebrowser/src/index.ts
  2. 1 1
      examples/filebrowser/webpack.conf.js
  3. 1 2
      src/filebrowser/plugin.ts

+ 8 - 13
examples/filebrowser/src/index.ts

@@ -2,7 +2,7 @@
 // Distributed under the terms of the Modified BSD License.
 
 import {
-  ContentsManager, SessionManager, IKernel
+  ContentsManager, SessionManager, IServiceManager, createServiceManager
 } from 'jupyter-js-services';
 
 import {
@@ -51,14 +51,13 @@ import 'jupyterlab/lib/theme.css';
 
 
 function main(): void {
-  let sessionManager = new SessionManager();
-  sessionManager.getSpecs().then(kernelspecs => {
-    createApp(sessionManager, kernelspecs);
+  createServiceManager().then(manager => {
+    createApp(manager);
   });
 }
 
 
-function createApp(sessionManager: SessionManager, kernelspecs: IKernel.ISpecModels): void {
+function createApp(manager: IServiceManager): void {
   let contentsManager = new ContentsManager();
   let widgets: Widget[] = [];
   let activeWidget: Widget;
@@ -81,9 +80,9 @@ function createApp(sessionManager: SessionManager, kernelspecs: IKernel.ISpecMod
   let docRegistry = new DocumentRegistry();
   let docManager = new DocumentManager({
     registry: docRegistry,
-    contentsManager,
-    sessionManager,
-    kernelspecs,
+    contentsManager: manager.contents,
+    sessionManager: manager.sessions,
+    kernelspecs: manager.kernelspecs,
     opener
   });
   let mFactory = new TextModelFactory();
@@ -98,11 +97,7 @@ function createApp(sessionManager: SessionManager, kernelspecs: IKernel.ISpecMod
     canStartKernel: true
   });
 
-  let fbModel = new FileBrowserModel({
-    contentsManager,
-    sessionManager,
-    kernelspecs
-  });
+  let fbModel = new FileBrowserModel({ manager });
   let fbWidget = new FileBrowserWidget({
     model: fbModel,
     manager: docManager,

+ 1 - 1
examples/filebrowser/webpack.conf.js

@@ -12,7 +12,7 @@ module.exports = {
   },
   bail: true,
   debug: true,
-  devtool: 'source-map',
+  devtool: 'inline-source-map',
   module: {
     loaders: [
       { test: /\.css$/, loader: 'style-loader!css-loader' },

+ 1 - 2
src/filebrowser/plugin.ts

@@ -97,8 +97,7 @@ function activateFileBrowser(app: Application, provider: ServiceManager, registr
     kernelspecs: provider.kernelspecs,
     opener
   });
-  // TODO: fix after rebasing PR.
-  let fbModel = new FileBrowserModel({ manager: provider as any });
+  let fbModel = new FileBrowserModel({ manager: provider });
   let fbWidget = new FileBrowserWidget({
     model: fbModel,
     manager: docManager,